This is an automated email from the ASF dual-hosted git repository.

jmclean pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/training.git


The following commit(s) were added to refs/heads/develop by this push:
     new 26ae11c  add interactive scenarios
26ae11c is described below

commit 26ae11cf5351547b80256a8d59be74c26e33d779
Author: Justin Mclean <[email protected]>
AuthorDate: Mon Oct 27 10:14:55 2025 +1100

    add interactive scenarios
---
 simulations/incubator/README.md                    |  74 +++
 simulations/incubator/brand_blur.twee              | 322 +++++++++++++
 simulations/incubator/conflicting_mentors.twee     | 247 ++++++++++
 .../incubator/cultural_misunderstanding.twee       | 285 +++++++++++
 simulations/incubator/employer_dominated.twee      | 528 +++++++++++++++++++++
 simulations/incubator/heated_thread.twee           | 340 +++++++++++++
 simulations/incubator/lazy_consensus.twee          | 329 +++++++++++++
 simulations/incubator/mentor_dependancy.twee       | 476 +++++++++++++++++++
 simulations/incubator/release_vote.twee            | 267 +++++++++++
 simulations/incubator/slient_mentor.twee           | 448 +++++++++++++++++
 10 files changed, 3316 insertions(+)

diff --git a/simulations/incubator/README.md b/simulations/incubator/README.md
new file mode 100644
index 0000000..d2c32dd
--- /dev/null
+++ b/simulations/incubator/README.md
@@ -0,0 +1,74 @@
+# ASF Mentor Scenarios
+
+This directory contains a collection of **interactive learning scenarios** 
designed for Apache Incubator mentors.  
+Each `.twee` file represents a branching, narrative-style exercise (compatible 
with [Twine/SugarCube](https://twinery.org/)) that allows mentors to explore 
different approaches to real-world situations.
+
+## Purpose
+
+These scenarios are drawn from [Practicing The Apache 
Way](https://cwiki.apache.org/confluence/display/INCUBATOR/Practicing+The+Apache+Way).
  
+They help mentors reflect on complex or ambiguous mentoring situations by 
practicing **The Apache Way**, which emphasizes transparency, collaboration, 
independence, and community-led decision making.
+
+Each scenario presents:
+- A realistic situation based on discussions and experiences from the 
Incubator mailing list.  
+- Multiple possible responses or actions.  
+- Outcomes and reflections tied to ASF values and policies.
+
+## How to Use
+
+You can run or adapt these scenarios in several ways:
+
+1. **Interactive Training**  
+   - Import `.twee` files into [Twine](https://twinery.org/) and play them 
interactively using the SugarCube story format.  
+   - Use them during mentor onboarding sessions, workshops, or group 
discussions.
+
+2. **Self-Study or Reflection**  
+   - Read through each scenario to consider how ASF values apply to different 
outcomes.  
+   - Reflect on the reasoning behind both positive and negative results.
+
+3. **Group Discussion**  
+   - Use the scenarios in mentor meetings or office hours to prompt dialogue.  
+   - Encourage participants to share how they would respond and what ASF 
principles guide their thinking.
+
+## ⚠Important Notes and Disclaimers
+
+- **These scenarios are illustrative, not prescriptive.**  
+  They are designed to provoke thought and discussion, not to dictate a single 
correct course of action.
+
+- **Every podling is unique.**  
+  Each community’s dynamics, size, and maturity differ, so what works well in 
one situation may not in another.
+
+- **Mentors have different styles.**  
+  Some may provide hands-on guidance, while others focus on enabling 
independence. Both can be valid when grounded in ASF values.
+
+- **Podling lifecycle matters.**  
+  The most appropriate response can depend on where a podling is in its 
incubation journey.  
+  Early-stage podlings may need more mentor involvement, while those nearing 
graduation should be largely self-governing.
+
+- **Real outcomes may differ.**  
+  The scenarios simplify real-world complexities for training purposes. In 
practice, decisions often require nuance and consensus.
+
+- **ASF policies and practices evolve.**  
+  These scenarios align with current ASF and Incubator guidelines but may not 
reflect future updates.  
+  Always verify against the latest [Incubator 
documentation](https://incubator.apache.org/) and [ASF 
policies](https://www.apache.org/legal/).
+
+## Goal
+
+The goal of these scenarios is to **strengthen mentor judgment**, not to test 
policy knowledge.  
+By exploring the consequences of different choices, mentors can better 
understand how to:
+- Reinforce community independence  
+- Model transparent communication  
+- Avoid procedural shortcuts  
+- Build trust and collaboration within podlings  
+
+## Contributing
+
+New scenarios are welcome.  To add or modify a scenario:
+1. Create or edit a `.twee` file using the [Twine 2 
editor](https://twinery.org/).  
+2. Use the **SugarCube 2** story format for compatibility.  
+3. Follow the established structure and comment style used in the existing 
files.  
+4. Test the story interactively in Twine before committing changes.  
+5. Where possible, base scenarios on real mentoring experiences that 
illustrate ASF values in practice.
+
+## Acknowledgment
+
+These training scenarios were developed with input and examples contributed by 
members of the Apache Incubator community. They draw inspiration from 
anonymized real cases and collective mentoring experience shared on the 
Incubator mailing list.  
diff --git a/simulations/incubator/brand_blur.twee 
b/simulations/incubator/brand_blur.twee
new file mode 100644
index 0000000..01f553f
--- /dev/null
+++ b/simulations/incubator/brand_blur.twee
@@ -0,0 +1,322 @@
+:: StoryTitle
+Brand and Governance Blur (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "A5C93D72-INCUBATOR-BRAND-GOV-BLUR",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+<<set $branding = 0>>        /* branding = accuracy of ASF naming and marks */
+<<set $independence = 0>>    /* independence = self-governance, consensus, 
balanced relationships */
+<<set $escalation = 0>>      /* escalation = times IPMC needed or overused */
+<<set $shortcuts = 0>>       /* shortcuts = avoidance, delay, off-list 
handling */
+<<set $steps = 0>>
+
+You are a mentor working with an incubating Apache project.
+
+Company X, the project’s main corporate sponsor, issues a press release 
describing the project as  
+"an open source initiative by Company X"  
+using ASF-style graphics and omitting "Apache Foo (incubating)".
+
+The announcement spreads quickly on social media.  
+When mentors raise the issue, company representatives respond:  
+"It’s perfectly fine. This helps both the company and the project."
+
+The mentors are concerned that this blurs the project’s independence and 
connection to the ASF.
+
+What do you do first?
+
+* [[Ask the PPMC to start a discussion on the dev@ list before 
acting|StartDiscussion]]
+* [[Contact the company privately to explain ASF branding 
expectations|PrivateOutreach]]
+* [[Post a public clarification on the dev@ list and social 
media|PublicCorrection]]
+* [[Ignore it for now - it’s just marketing|IgnoreIssue]]
+
+
+:: StartDiscussion
+<<set $steps += 1>>
+<<set $independence += 1>>   /* independence only: encourages community-led 
discussion */
+
+You post to the project’s dev@ list:  
+"We should clarify how ASF branding works and why accurate naming matters for 
independence."
+
+Several contributors express surprise:  
+"We didn’t even know we had to use '(incubating)' everywhere."
+
+The PPMC agrees to take a closer look at the issue.
+
+How should the mentors support this?
+
+* [[Share ASF trademark and incubation disclaimer links|ShareGuidelines]]
+* [[Encourage the PPMC to contact Company X politely for a 
correction|PPMCRequest]]
+* [[Let the PPMC decide their next step without mentor input|StepBack]]     /* 
independence only */
+* [[Handle it privately to avoid friction|SkipToPrivate]]                   /* 
negative independence + shortcut */
+* [[Defer to the next report cycle; it’s probably minor|DeferIssue]]
+
+
+:: StepBack
+<<set $steps += 1>>
+<<set $independence += 1>>   /* independence only: mentors demonstrate 
restraint, PPMC owns next steps */
+You decide to step back and let the PPMC handle the next steps on its own.  
+They begin drafting a short message to Company X seeking clarification about 
the post.  
+The mentors watch the thread unfold, offering context only when asked.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: SkipToPrivate
+<<set $steps += 1>>
+<<set $independence -= 1>>   /* mentors bypass open list process */
+<<set $shortcuts += 1>>      /* and take a process shortcut */
+You move the discussion off-list to keep things simple.  
+Other contributors later feel excluded and confused.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: ShareGuidelines
+<<set $steps += 1>>
+<<set $branding += 1>>       /* policy clarity: linking to official marks and 
naming guidance */
+
+You share ASF resources:  
+- ASF Trademark and Branding Policy: https://www.apache.org/foundation/marks/  
+- Podling Naming and Disclaimers: 
https://incubator.apache.org/policy/incubation.html#naming  
+
+The PPMC thanks you for clarifying.  
+They decide to ask Company X to correct their post and to review all materials 
for consistent naming.
+
+* [[Continue to the PPMC’s outreach to Company X|PPMCRequest]]
+
+
+:: PPMCRequest
+<<set $steps += 1>>
+<<set $branding += 1>>       /* explicit request to fix naming and avoid 
ASF-style marks */
+<<set $independence += 1>>   /* PPMC leads external communication, mentors 
support */
+
+The PPMC drafts a polite message to Company X:  
+"Thank you for promoting the project.  
+To help users understand our ASF status, could you please update your 
announcement to use the full name *Apache Foo (incubating)* and avoid ASF-style 
logos?  
+This helps protect both the ASF and the project’s independence."
+
+The company replies:  
+"We’ll look into it, but our campaign is already published. Changing it now 
would be difficult."
+
+How should the PPMC respond?
+
+* [[Suggest the required changes needed for ASF compliance and offer 
clarification if useful|SuggestChanges]]
+* [[Seek community consensus before acting|SeekConsensus]]     /* independence 
only */
+* [[Let the mentors take it up privately with the company|PrivateOutreach]]
+* [[Downplay the issue to keep relations smooth|DownplayIssue]] /* negative 
outcome */
+* [[Escalate to the IPMC for further advice|EscalateIPMC]]
+
+
+:: SeekConsensus
+<<set $steps += 1>>
+<<set $independence += 1>>   /* independence only: consensus-building before 
action */
+The PPMC posts back to the dev@ list:  
+"The company says revising the press release will be difficult.  
+Let’s discuss as a community how to proceed while keeping our independence 
clear."
+
+Contributors weigh options, and newer members learn ASF principles.  
+Even if the company’s correction is delayed, the community grows stronger.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: DownplayIssue
+<<set $steps += 1>>
+<<set $branding -= 1>>       /* appeasement: accuracy suffers */
+<<set $independence -= 1>>   /* culture: sends wrong signal about governance */
+<<set $shortcuts += 1>>      /* avoidance contributes to repeat issues */
+You tell the company "No problem, just remember next time."  
+Branding confusion persists and volunteers feel uneasy.
+
+* [[Proceed to Debrief|Debrief]]
+
+:: PrivateOutreach
+<<set $steps += 1>>
+<<set $branding += 1>>       /* reinforces correct policy understanding in a 
direct channel */
+<<set $independence -= 1>>   /* mentor-initiated, off-list first contact 
before PPMC reduces independence */
+
+You and another mentor contact Company X privately, explaining that:  
+- The ASF owns all Apache trademarks.  
+- Podlings must use "Apache Foo (incubating)" in all public materials.  
+- Corporate promotion should highlight participation, not control.
+
+The company representative is defensive but willing to talk:  
+"We didn’t mean harm. We thought this was acceptable co-branding."
+
+Next step?
+
+* [[Invite them to join a short joint call with the PPMC to align 
messaging|JointCall]]
+* [[Suggest the required changes and share correct examples of ASF 
naming|SuggestChanges]]
+* [[Apologise for raising it publicly and promise to tone it 
down|OverApologise]]   /* negative independence */
+* [[Leave it for now and hope they adjust later|DeferIssue]]
+
+
+:: OverApologise
+<<set $steps += 1>>
+<<set $independence -= 1>>   /* mentors over-apologise, weakening governance 
signal */
+The company accepts, but now treats the project as theirs to manage messaging. 
 
+Some contributors raise concerns privately.
+
+* [[Proceed to Debrief|Debrief]]
+
+---
+
+:: JointCall
+<<set $steps += 1>>
+<<set $branding += 1>>       /* live clarification reduces future errors */
+<<set $independence += 1>>   /* PPMC present and leading alignment with 
stakeholders */
+The mentors, company representative, and PPMC meet briefly.  
+Clear ASF identification avoids confusion about ownership.  
+The company appreciates the clarification and agrees to review its materials.
+
+* [[Continue to suggest specific changes|SuggestChanges]]
+
+
+:: PublicCorrection
+<<set $steps += 1>>
+<<set $branding += 1>>       /* public correction increases external accuracy 
*/
+<<set $independence -= 1>>   /* mentor-led public correction before PPMC 
reduces independence */
+
+You post a clarification on the dev@ list and social media:  
+"Reminder: The project’s official name is *Apache Foo (incubating)*, a 
community-led project at the Apache Software Foundation.  
+Company X is one of several contributors."
+
+What tone do you take next?
+
+* [[Ask the PPMC to follow up with their own polite request for 
correction|PPMCRequest]]
+* [[Inform Company X privately afterwards to maintain good 
relations|PrivateOutreach]]
+* [[Double down publicly, criticising the company|PublicConfront]]   /* 
negative independence */
+
+
+:: PublicConfront
+<<set $steps += 1>>
+<<set $branding += 1>>       /* policy right */
+<<set $independence -= 2>>   /* culture wrong: adversarial tone hurts 
community maturity */
+The correction sparks tension and the company withdraws support temporarily.  
+Contributors worry about damaged relations.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: SuggestChanges
+<<set $steps += 1>>
+<<set $branding += 1>>       /* concrete text and mark corrections for 
compliance */
+<<set $independence += 1>>   /* PPMC guides what good looks like, mentors 
support */
+
+You propose the specific updates required for ASF compliance:  
+- Replace "an open source initiative by Company X" with "an open source 
project at the Apache Software Foundation."  
+- Use the full name *Apache Foo (incubating).*  
+- Remove ASF-style graphics from company-branded materials.
+
+The company agrees and updates the release. The community appreciates the 
correction.
+
+Optional approach?
+
+* [[Work through the PPMC to approve wording|PPMCReview]]
+* [[Fix it yourself and send to the company directly|MentorOverride]]   /* 
negative independence */
+* [[Escalate to IPMC|EscalateIPMC]]
+
+
+:: MentorOverride
+<<set $steps += 1>>
+<<set $branding += 1>>       /* technically correct content */
+<<set $independence -= 1>>   /* mentor takes control, bypassing community */
+The company thanks you personally, but the PPMC feels sidelined.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: PPMCReview
+<<set $steps += 1>>
+<<set $branding += 1>>       /* audit of all public surfaces for correct names 
and disclaimers */
+<<set $independence += 2>>   /* PPMC institutionalises learning with a 
checklist */
+The PPMC finds that the project’s website footer and README also missed the 
ASF disclaimer.  
+They correct these and add a short internal checklist:  
+"Always use the full name 'Apache Foo (incubating)' and ASF disclaimer on 
public pages."
+
+What next?
+
+* [[Adopt the checklist and close the loop|Debrief]]
+* [[Decide not to bother reviewing since it’s fixed|SkipReview]]   /* shortcut 
*/
+
+---
+
+:: SkipReview
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* learning lost, maturity stalls */
+A month later another partner repeats the same mistake.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: EscalateIPMC
+<<set $steps += 1>>
+<<set $independence += 1>>   /* appropriate escalation */
+<<set $escalation += 1>>     /* escalation is sometimes needed but carries a 
small cost */
+The IPMC advises the PPMC to keep communication courteous but clear, reminding 
that the ASF’s neutral brand must not appear to be owned by any company.  
+They provide sample wording and policy links.  
+The company updates their materials, and the incident closes positively.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: IgnoreIssue
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* shortcut: inaction creates external confusion 
and internal frustration */
+A few weeks later, media outlets describe the project as "Company X’s open 
source product."  
+The IPMC notices during report review and asks for clarification.  
+The PPMC must now repair both reputation and community trust.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: DeferIssue
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* shortcut: deferral allows misbranding to 
persist and repeat */
+By the next quarter, Company X repeats the same mistake.  
+Contributors begin to feel their volunteer work is being overshadowed by the 
company’s marketing.  
+The PPMC apologises publicly and posts a clarification using ASF-compliant 
naming.
+
+* [[Proceed to Debrief|Debrief]]
+
+
+:: Debrief
+<<set $total = $branding + $independence - $shortcuts - $escalation>>
+/* $branding = external accuracy
+   $independence = governance maturity
+   $shortcuts = penalties for deferral, avoidance, off-list handling
+   $escalation = small penalty if IPMC used too soon or too often */
+
+<<if $total >= 8>>
+You balanced clarity and collaboration.  
+The project corrected branding and reinforced independence.  
+
+Outcome: Strong Mentor and PPMC Alignment
+
+<<elseif $total >= 4>>
+The issue was fixed but with friction or delay.  
+Compliance improved but community maturity still uneven.  
+
+Outcome: Mixed Resolution
+
+<<else>>
+Branding confusion persisted or relations were strained.  
+The community learned that tone and timing matter as much as policy.  
+
+Outcome: Poor Resolution
+<</if>>
+
+''Reflection Questions''
+
+- How can mentors balance accuracy with diplomacy?  
+- When does restraint build more independence than intervention?  
+- What signals suggest IPMC escalation is warranted?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
+
diff --git a/simulations/incubator/conflicting_mentors.twee 
b/simulations/incubator/conflicting_mentors.twee
new file mode 100644
index 0000000..c68e2dd
--- /dev/null
+++ b/simulations/incubator/conflicting_mentors.twee
@@ -0,0 +1,247 @@
+:: StoryTitle
+Conflicting Mentor Advice (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-CONFLICTING-MENTOR-ADVICE",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Visibility and clarity of mentor and podling 
communication */
+<<set $collaboration = 0>>  /* Coordination among mentors, IPMC, and podling */
+<<set $shortcuts = 0>>      /* Skipping process or inconsistent mentoring */
+<<set $escalation = 0>>     /* Premature or unnecessary escalation */
+<<set $steps = 0>>
+
+You are one of three mentors working with an incubating Apache podling.  
+The podling has prepared a release candidate.  
+
+Mentor A says: "Looks good—go ahead and call the vote."  
+Mentor B says: "Hold on, the license headers need more review."  
+
+The podling is now unsure what to do. After some confusion, they post to 
general@incubator:
+
+> “We’re getting mixed signals from our mentors. Could someone clarify the 
right process?”
+
+This is a healthy sign — the podling is trying to understand ASF expectations. 
 
+
+What do you do next?
+
+<<link "Thank the podling for asking publicly and clarify policy 
on-list">><<goto "A">><</link>>  
+<<link "Reach out to the other mentors privately to coordinate">><<goto 
"B">><</link>>  
+<<link "Ask the IPMC to handle it for you">><<goto "C">><</link>>  
+<<link "Tell the podling to just move forward">><<goto "D">><</link>>  
+<<link "Stay silent and let others answer">><<goto "E">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Public clarification supports openness */
+<<set $collaboration += 2>>  /* Encourages joint mentor and IPMC understanding 
*/
+
+You reply to the general@ thread:
+
+> “Thanks for raising this. It’s fine to ask here when advice seems 
inconsistent — this helps everyone learn.  
+> Let’s confirm what the Release Policy says and align together.”
+
+Mentors and IPMC members chime in with consistent guidance. The podling feels 
supported and continues confidently.
+
+<<link "Go to Resolution">><<goto "Resolution">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $collaboration += 1>>   /* Improves mentor alignment */
+<<set $transparency -= 1>>    /* Not yet visible to the podling */
+
+You message the other mentors privately to compare notes.  
+Everyone quickly realises the disagreement came from different interpretations 
of the same rule.
+
+<<link "Post a public summary on dev@ explaining the resolution">><<goto 
"B1Good">><</link>>  
+<<link "Assume the podling will see the outcome later">><<goto 
"B1Weak">><</link>>  
+<<link "Privately tell the podling to follow your version">><<goto 
"B2Poor">><</link>>
+
+:: B1Good
+<<set $transparency += 2>>   /* Visibility reinforces trust */
+<<set $collaboration += 1>>  /* Mentors act in unity */
+
+You post on dev@:
+
+> “Mentors compared notes — we were talking past each other.  
+> The podling did the right thing by asking for clarification.”
+
+This strengthens both mentor coordination and the podling’s trust.
+
+<<link "Go to Resolution">><<goto "Resolution">><</link>>
+
+:: B1Weak
+<<set $shortcuts += 1>>      /* Fails to close the loop publicly */
+<<set $transparency -= 1>>   /* Podling left guessing */
+
+Mentors agree privately but never share the conclusion.  
+The podling assumes things are fine but still feels uncertain next time.
+
+<<link "Go to Partial">><<goto "Partial">><</link>>
+
+:: B2Poor
+<<set $shortcuts += 2>>      /* Mentor bypasses open process */
+<<set $transparency -= 2>>   /* Hidden communication */
+
+You message the podling privately:  
+> “Just go with my view — the others will catch up.”
+
+Confusion deepens, and IPMC members later intervene to untangle mixed messages.
+
+<<link "Go to Damage">><<goto "Damage">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation by mentor */
+<<set $collaboration -= 1>>  /* Mentors skip coordination */
+
+You reply on general@ asking the IPMC to “step in and decide.”  
+An IPMC member replies that mentors should align first and then guide the 
podling together.
+
+<<link "Acknowledge and regroup with mentors">><<goto "C1Recover">><</link>>  
+<<link "Defend your escalation publicly">><<goto "C2Bad">><</link>>
+
+:: C1Recover
+<<set $collaboration += 1>>  /* Learns from premature escalation */
+<<set $transparency += 1>>   /* Restores openness */
+
+You follow up:  
+> “Thanks — agreed. We’ll align as mentors first, then clarify on dev@.”
+
+The podling learns the right order: mentors coordinate before asking IPMC to 
rule.
+
+<<link "Go to Partial">><<goto "Partial">><</link>>
+
+:: C2Bad
+<<set $escalation += 1>>     /* Adds tension */
+<<set $transparency -= 1>>   /* Public noise without resolution */
+
+You continue debating on-list. The IPMC discussion grows confusing and 
off-topic.
+
+<<link "Go to Damage">><<goto "Damage">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $shortcuts += 2>>      /* Skips mentor alignment */
+<<set $collaboration -= 2>>  /* Ignores peer coordination */
+
+You tell the podling:  
+> “Don’t overthink it — just start the vote.”
+
+When the other mentor objects publicly, the thread turns tense.  
+The podling apologises for “doing the wrong thing.”
+
+<<link "Acknowledge mistake and clarify process">><<goto 
"D1Recover">><</link>>  
+<<link "Defend your advice as correct">><<goto "D2Defensive">><</link>>
+
+:: D1Recover
+<<set $transparency += 2>>   /* Correcting publicly supports learning */
+<<set $collaboration += 1>>  /* Restores some trust */
+
+You admit the misstep and share a link to the ASF Release Policy.  
+Others appreciate the humility.
+
+<<link "Go to Partial">><<goto "Partial">><</link>>
+
+:: D2Defensive
+<<set $transparency -= 1>>   /* Defensive tone reduces clarity */
+<<set $collaboration -= 1>>  /* Mentor tension remains */
+
+You double down:  
+> “We’re wasting time on bureaucracy.”
+
+The IPMC intervenes, reminding mentors that consistency and transparency 
matter.
+
+<<link "Go to Damage">><<goto "Damage">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Silence adds ambiguity */
+<<set $collaboration -= 1>>  /* Missed mentoring opportunity */
+
+You watch silently while others debate on general@.  
+The podling feels ignored.
+
+<<link "Step in late to summarise policy">><<goto "E1Recover">><</link>>  
+<<link "Stay silent until IPMC wraps it up">><<goto "E2Fail">><</link>>
+
+:: E1Recover
+<<set $transparency += 1>>   /* Late but helpful clarification */
+<<set $collaboration += 1>>  /* Re-engagement improves tone */
+
+You eventually post a short clarification and link to ASF documentation.  
+It helps, but the delay cost momentum.
+
+<<link "Go to Partial">><<goto "Partial">><</link>>
+
+:: E2Fail
+<<set $shortcuts += 1>>      /* Avoidance harms trust */
+<<set $collaboration -= 1>>  /* Lost opportunity for guidance */
+
+The IPMC wraps up the thread with general reminders about mentor coordination. 
 
+The podling learns little about how to handle such issues themselves.
+
+<<link "Go to Damage">><<goto "Damage">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+The mentors eventually aligned, and the podling learned some lessons.  
+Still, confusion lingered, slowing community confidence.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+✅ The mentors reinforced ASF culture through open, coordinated guidance.  
+The podling learned that asking questions publicly is healthy and valued.  
+The IPMC cited this as an example of positive escalation.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+Mentor inconsistency and private direction caused frustration.  
+The podling delayed progress, unsure whom to trust.  
+The IPMC reminded mentors that alignment and visibility are key parts of their 
role.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration - $shortcuts - $escalation>>
+
+You’ve reached the end of the scenario. Let’s reflect.
+
+<<if $total >= 8>>
+You demonstrated ASF-aligned mentoring: open communication, mentor 
coordination, and positive reinforcement of podling independence.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+You achieved a solid outcome with partial transparency or delayed alignment.  
+The podling still benefited, but earlier openness would improve learning.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+You restored some order but with limited visibility or inconsistent guidance.  
+The podling might hesitate to ask for clarification next time.
+<</if>>
+
+<<if $total < 0>>
+Mentor misalignment and opaque communication eroded trust.  
+More transparent, coordinated mentoring would strengthen ASF culture.
+<</if>>
+
+Reflection Questions:
+- How can mentors maintain consistent understanding of ASF policy?
+- What should a podling do when mentor advice is unclear?
+- When is escalation to the IPMC appropriate or healthy?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/cultural_misunderstanding.twee 
b/simulations/incubator/cultural_misunderstanding.twee
new file mode 100644
index 0000000..379206b
--- /dev/null
+++ b/simulations/incubator/cultural_misunderstanding.twee
@@ -0,0 +1,285 @@
+:: StoryTitle
+Cultural Misunderstanding (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-CULTURAL-MISUNDERSTANDING",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Open and visible discussion of communication 
issues */
+<<set $collaboration = 0>>  /* Shared responsibility for community tone and 
mentoring */
+<<set $shortcuts = 0>>      /* Avoiding silence, avoidance, or private 
assumptions */
+<<set $escalation = 0>>     /* Unnecessary or premature escalation */
+<<set $steps = 0>>
+
+You are a mentor observing a subtle communication issue on an incubating 
Apache project.
+
+One contributor’s short, direct comments, common in their home culture, are 
being interpreted as abrupt or rude.  
+Others begin avoiding review requests from them. The contributor, in turn, 
feels unfairly judged.  
+Tension quietly builds across the mailing list.
+
+What do you do?
+
+<<link "Address it publicly, reminding everyone to assume good faith">><<goto 
"A">><</link>>  
+<<link "Reach out privately to the direct contributor">><<goto "B">><</link>>  
+<<link "Wait and see if it resolves naturally">><<goto "C">><</link>>  
+<<link "Ask another mentor to intervene instead">><<goto "D">><</link>>  
+<<link "Start a general discussion about communication norms">><<goto 
"E">><</link>>  
+<<link "Propose a lightweight review template to guide tone">><<goto 
"F">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Clear, visible reminder to whole list */
+<<set $collaboration += 1>>  /* Encourages shared reflection */
+
+You post on the list:
+
+> "Let’s remember that tone can vary across cultures. Please assume good faith 
and focus on technical substance."
+
+Some appreciate the reminder. The direct contributor stays quiet at first.
+
+<<link "Follow up privately with that person">><<goto "A1Good">><</link>>  
+<<link "Consider the issue closed after your post">><<goto "A1Weak">><</link>>
+
+:: A1Good
+<<set $collaboration += 1>>  /* Builds relationship and trust */
+<<set $transparency += 1>>   /* Reinforces openness with empathy */
+
+You message the contributor privately to explain that your note was not a 
personal criticism.  
+They respond gratefully and begin adjusting tone slightly.  
+Other contributors resume engaging more positively.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: A1Weak
+<<set $shortcuts += 1>>      /* Missed follow through */
+<<set $collaboration -= 1>>  /* Trust gap remains */
+
+The reminder helps temporarily, but the contributor feels singled out.  
+Tension reappears weeks later in another thread.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $collaboration += 2>>  /* Direct mentoring support */
+<<set $transparency -= 1>>   /* Private approach limits shared awareness */
+
+You write privately to the contributor:
+
+> "I have noticed some friction that may stem from cultural style, not intent. 
Could we talk about it?"
+
+They appreciate your note and explain their cultural context.
+
+<<link "Summarise learning publicly, without naming them">><<goto 
"B1Good">><</link>>  
+<<link "Keep the matter private">><<goto "B1Weak">><</link>>
+
+:: B1Good
+<<set $transparency += 2>>   /* Turns private insight into shared lesson */
+<<set $collaboration += 1>>  /* Encourages community understanding */
+
+You post:
+
+> "We discussed how tone can differ across cultures. Let’s document shared 
communication norms."
+
+The thread sparks thoughtful responses and improved mutual understanding.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: B1Weak
+<<set $shortcuts += 1>>      /* Improvement but not shared */
+<<set $collaboration += 0>>  /* Limited wider impact */
+
+The contributor adjusts, but others still misinterpret them.  
+Without community reflection, assumptions persist.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* Avoidance leaves issue festering */
+<<set $transparency -= 1>>   /* No visible mentoring action */
+<<set $collaboration -= 1>>  /* Silence erodes trust */
+
+You decide not to intervene, assuming it will settle on its own.  
+Instead, quieter contributors stop reviewing that person’s work.
+
+<<link "Later escalate to general@ when it worsens">><<goto 
"C1Escalate">><</link>>  
+<<link "Finally raise it privately with mentors">><<goto "C1Late">><</link>>
+
+:: C1Escalate
+<<set $escalation += 2>>     /* Overdue escalation damages local trust */
+<<set $collaboration -= 1>>  /* PPMC ownership bypassed */
+
+You escalate publicly to the Incubator list.  
+Observers note it could have been handled locally earlier.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: C1Late
+<<set $collaboration += 1>>  /* Late correction but helpful */
+<<set $transparency += 1>>   /* Becomes learning moment */
+
+You raise the issue privately with mentors after noticing long term harm.  
+They guide you to reopen discussion publicly in a neutral tone.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $collaboration -= 1>>  /* Passing responsibility weakens mentoring role 
*/
+<<set $shortcuts += 1>>      /* Delegating instead of guiding directly */
+
+You ask another mentor to handle it.  
+They reply weeks later, saying the issue faded, but the contributor is now 
less active.
+
+<<link "Re engage and invite them back">><<goto "D1Good">><</link>>  
+<<link "Leave things as they are">><<goto "D1Weak">><</link>>
+
+:: D1Good
+<<set $collaboration += 2>>  /* Restores participation */
+<<set $transparency += 1>>   /* Openly encourages return */
+
+You post a neutral note thanking them for past reviews and inviting continued 
input.  
+The contributor rejoins, slightly more cautious but appreciated.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: D1Weak
+<<set $collaboration -= 1>>  /* Inaction leads to contributor loss */
+
+The contributor quietly disappears.  
+Future reviews slow, and bus factor increases.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Public shared learning */
+<<set $collaboration += 2>>  /* Builds empathy across team */
+
+You start a general thread:
+
+> "Let’s talk about how communication styles differ around the world. How can 
we keep feedback constructive and respectful?"
+
+Several contributors share experiences.  
+The previously frustrated member joins and explains their intent.  
+Others thank them for clarifying.
+
+<<link "Encourage documenting communication norms">><<goto "E1Good">><</link>> 
 
+<<link "Let the discussion fade after initial success">><<goto 
"E1Neutral">><</link>>
+
+:: E1Good
+<<set $collaboration += 1>>  /* Shared learning captured */
+<<set $transparency += 1>>   /* Adds lasting visibility */
+
+The podling adds a short communication norms section to its wiki, capturing 
diverse expectations.  
+Trust improves sustainably.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: E1Neutral
+<<set $shortcuts += 1>>      /* No follow up documentation */
+<<set $collaboration += 0>>  /* Gains fade over time */
+
+The discussion helps for now, but without notes or reminders, old habits 
slowly return.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: F
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Provides structure for shared expectations */
+<<set $transparency += 1>>   /* Makes desired tone visible in the process */
+
+You propose a lightweight pull request review template with prompts such as:  
+- Greet the contributor and thank them for the PR.  
+- Focus on specifics to improve.  
+- Offer one positive observation.
+
+The team is open to trying it.
+
+<<link "Pilot the template for two weeks and solicit feedback on list">><<goto 
"F1Good">><</link>>  
+<<link "Adopt the template immediately without discussion">><<goto 
"F1Weak">><</link>>
+
+:: F1Good
+<<set $collaboration += 1>>  /* Co design and opt in build buy in */
+<<set $transparency += 1>>   /* Public feedback loop on the pilot */
+
+The pilot runs and you collect feedback in a summary note.  
+Minor tweaks are adopted and the template becomes optional guidance.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: F1Weak
+<<set $shortcuts += 1>>      /* Process imposed without consensus */
+<<set $collaboration -= 1>>  /* Reduces local ownership */
+
+Some contributors feel process was dropped on them.  
+Compliance is inconsistent and resentment lingers.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+Because the misunderstanding was never surfaced constructively, quiet 
frustration lingers.  
+The contributor disengages, and the podling loses diversity of perspective.  
+The IPMC later reminds mentors to help projects normalise cross cultural 
discussion early.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+The project resolves the issue only partially.  
+Communication improves for a while, but the deeper lesson about cultural 
diversity is not fully internalised.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+The project handled the cultural misunderstanding with transparency and 
empathy.
+
+- The PPMC surfaced the issue early.  
+- Mentors framed it as learning, not blame.  
+- The community documented shared tone expectations.
+
+Trust and inclusivity strengthened.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration - $shortcuts - $escalation>>
+
+You have reached the end of the scenario. Let’s reflect.
+
+<<if $total >= 8>>
+You modelled ASF aligned mentoring: open discussion, empathy across cultures, 
and visible learning.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+You supported cultural understanding with moderate openness. A few shortcuts 
reduced sustained learning.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+You managed the tension but missed deeper mentoring opportunities. Long term 
inclusion remains fragile.
+<</if>>
+
+<<if $total < 0>>
+Silence or escalation reduced trust. Greater empathy and earlier public 
reflection would have helped the project grow.
+<</if>>
+
+Reflection questions
+
+- What early signals of misunderstanding could mentors watch for?  
+- How might you frame tone discussions as cultural learning rather than blame? 
 
+- How can projects document and revisit shared communication norms over time?  
+- How does this connect to the ASF value of "Community over Code"?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/employer_dominated.twee 
b/simulations/incubator/employer_dominated.twee
new file mode 100644
index 0000000..f6ead2a
--- /dev/null
+++ b/simulations/incubator/employer_dominated.twee
@@ -0,0 +1,528 @@
+:: StoryTitle
+The Employer-Dominated Podling (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-EMPLOYER-DOMINATED",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Clear public communication and visible 
governance */
+<<set $independence = 0>>   /* PPMC-led decision-making free from vendor 
control */
+<<set $collaboration = 0>>  /* Welcoming participation across employers and 
individuals */
+<<set $shortcuts = 0>>      /* Private channels, deference to corporate 
hierarchy, hidden fixes */
+<<set $escalation = 0>>     /* Premature or unnecessary public escalation */
+<<set $steps = 0>>
+
+You are a mentor working with an incubating Apache project.
+
+The podling is strong technically, but most active committers work for the 
same company.
+External contributors have stepped back, saying decisions feel made internally.
+
+A new contributor posts on dev@:
+
+"It seems like most big decisions are discussed elsewhere. Should I still 
propose ideas here?"
+
+What do you do?
+
+<<link "Defend the company's support">><<goto "A">><</link>>
+<<link "Encourage a transparent reply from the PPMC">><<goto "B">><</link>>
+<<link "Privately ask an active PPMC member to bring discussion 
on-list">><<goto "C">><</link>>
+<<link "Escalate to general@incubator">><<goto "D">><</link>>
+<<link "Stay silent to observe community response">><<goto "E">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Defensive tone reduces openness */
+<<set $independence -= 1>>   /* Reinforces employer centrality */
+
+You post:
+
+"Company X has been crucial to this project's success. Their engineers and 
infrastructure make this all possible."
+
+Other contributors stay quiet. The new volunteer does not reply.
+
+<<link "Follow up to clarify inclusiveness">><<goto "A1Fix">><</link>>
+<<link "Let the matter drop">><<goto "A1Drop">><</link>>
+<<link "Suggest highlighting non-employee contributions in next status 
mail">><<goto "A1Credit">><</link>>
+<<link "Push back on the contributor's tone">><<goto "A1Scold">><</link>>
+
+:: A1Fix
+<<set $transparency += 1>>   /* Partial recovery via clarification */
+<<set $collaboration += 1>>  /* Signals that outside input is welcome */
+
+You follow up:
+
+"To be clear, everyone is welcome. Decisions happen on the list and proposals 
are encouraged."
+
+Some trust returns.
+
+<<link "Propose low-lift outreach to invite wider input">><<goto 
"A2Outreach">><</link>>
+<<link "Draft a short governance note clarifying that proposals begin on 
dev@">><<goto "A2GovNote">><</link>>
+<<link "Move on without concrete follow-ups">><<goto "Partial">><</link>>
+
+:: A1Drop
+<<set $transparency -= 1>>   /* Silence confirms imbalance */
+<<set $independence -= 1>>   /* Vendor dominance remains unaddressed */
+
+Perception hardens. External contributors disengage.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: A1Credit
+<<set $transparency += 1>>   /* Visible recognition of diverse effort */
+<<set $collaboration += 1>>  /* Encourages broader participation */
+<<set $independence += 0>>   /* Messaging only; practices unchanged unless 
followed up */
+
+You nudge the PPMC to acknowledge recent non-employee PRs and reviews in the 
next periodic mail.
+
+<<link "Pair it with an explicit 'no pre-meeting decisions' reminder">><<goto 
"A2Guardrail">><</link>>
+<<link "Leave it at credit only">><<goto "Partial">><</link>>
+
+:: A1Scold
+<<set $escalation += 1>>     /* Escalates tension unnecessarily */
+<<set $transparency -= 1>>   /* Chills open discussion */
+<<set $independence -= 1>>   /* Further centers the employer's role */
+<<set $collaboration -= 1>>  /* Alienates potential contributors */
+
+You reply:
+
+"Accusations like that aren't helpful. Please respect the people doing the 
work."
+
+Several non-employee contributors go quiet. Some threads move further into 
private channels.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: A2Outreach
+<<set $transparency += 1>>   /* Public invitation improves visibility */
+<<set $collaboration += 1>>  /* Encourages broader participation */
+
+The PPMC posts a short call for ideas on dev@ and highlights a few issues 
ideal for newcomers.
+A couple of non-employee contributors volunteer.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: A2GovNote
+<<set $transparency += 1>>   /* Clarifies process in public */
+<<set $independence += 1>>   /* Nudges toward community-led decisions */
+
+A brief on-list note clarifies that proposals should start on dev@ with a 
short template people can copy.
+
+<<link "Invite a non-employee contributor to co-lead the first trial of this 
template">><<goto "A3Empower">><</link>>
+<<link "File it and move on without assigning ownership">><<goto 
"Partial">><</link>>
+
+:: A2Guardrail
+<<set $transparency += 1>>   /* Expectations stated in public */
+<<set $independence += 1>>   /* Reduces off-list control */
+
+The PPMC posts a reminder that side conversations must be summarised back to 
dev@ before decisions.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: A3Empower
+<<set $collaboration += 2>>  /* Shares ownership across employers */
+<<set $independence += 1>>   /* Demonstrates community direction */
+
+A contributor volunteers to pilot the template on the next feature idea. The 
thread gains traction.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Keeps discussion public */
+<<set $independence += 2>>   /* PPMC speaks as a community, not a company */
+<<set $collaboration += 1>>  /* Rebuilds trust with outsiders */
+
+You encourage a PPMC member to respond openly:
+
+"Could a PPMC member confirm that decisions happen publicly and everyone can 
help shape them?"
+
+A PPMC member replies on-list, thanking the contributor and reaffirming 
openness.
+
+<<link "Start a concrete thread on how proposals are initiated">><<goto 
"B1Good">><</link>>
+<<link "Leave it at reassurance only">><<goto "B1Neutral">><</link>>
+<<link "Propose rotating volunteers to open and summarise discussion threads, 
ensuring representation across employers">><<goto "B1Rotate">><</link>>
+<<link "Add 'good first issue' labels and tag independent reviewers">><<goto 
"B1Labels">><</link>>
+
+:: B1Good
+<<set $collaboration += 2>>  /* Builds shared ownership */
+<<set $independence += 1>>   /* Shifts practice toward community-led work */
+
+The PPMC starts a thread to review how proposals begin.
+They notice many ideas started in a private Slack and agree to move those 
discussions to dev@.
+
+<<link "Invite independent contributors to co-lead the next steps">><<goto 
"B2Empower">><</link>>
+<<link "Mentor offers to draft diversity goals for the next report">><<goto 
"B2Overreach">><</link>>
+<<link "Mentor assigns named roles to 'fix diversity' now">><<goto 
"B2Assign">><</link>>
+
+:: B1Neutral
+<<set $collaboration += 1>>  /* Minor improvement via reassurance */
+<<set $independence += 0>>   /* Practices largely unchanged */
+
+The reply reassures the list but does not change habits.
+Some private coordination continues.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: B1Rotate
+/* Revised for ASF flat structure: rotation of volunteers, not leaders */
+<<set $transparency += 1>>   /* Visible process tweak */
+<<set $collaboration += 1>>  /* Broadens voices in discussions */
+<<set $independence += 1>>   /* Reduces single-employer centrality */
+
+The PPMC agrees that different people will open and summarise key proposal 
threads.
+
+<<link "Pair this with a no pre-meeting decisions reminder">><<goto 
"B2Guardrails">><</link>>
+<<link "Stop at rotation only">><<goto "Partial">><</link>>
+
+:: B1Labels
+<<set $transparency += 1>>   /* Clarifies entry points publicly */
+<<set $collaboration += 1>>  /* Lowers barrier for newcomers */
+<<set $independence += 0>>   /* Tooling help; governance change requires 
follow-up */
+
+Issues get triaged with newcomer tags and at least one independent reviewer 
per PR.
+
+<<link "Wrap with a public 'how we propose' note">><<goto 
"B2WrapNote">><</link>>
+<<link "Let practice evolve without explicit guardrails">><<goto 
"Partial">><</link>>
+
+:: B2Empower
+<<set $transparency += 1>>   /* Public inclusion and role clarity */
+<<set $collaboration += 2>>  /* Shares ownership across employers */
+<<set $independence += 1>>   /* Demonstrates community-led direction */
+
+A mentor suggests:
+
+"Could we invite one of the independent contributors to summarise the thread 
and co-lead next steps?"
+
+The PPMC agrees. Two volunteers step up and co-own the action items.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: B2Overreach
+<<set $transparency += 1>>   /* Visible intention to improve */
+<<set $independence -= 1>>   /* Mentor begins steering instead of guiding */
+
+You offer to draft diversity and participation goals for the next report 
yourself.
+The PPMC accepts, but some feel the mentor is taking the wheel.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: B2Assign
+<<set $escalation += 1>>     /* Perceived heavy-handedness */
+<<set $independence -= 2>>   /* Mentor dictates roles; undermines PPMC 
ownership */
+<<set $collaboration -= 1>>  /* Resentment from both employees and 
independents */
+
+You post:
+
+"I'm assigning Alice, Bob, and Carol to lead outreach and onboarding to fix 
this right now."
+
+Backlash follows. Participation drops; some contributors disengage entirely.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: B2Guardrails
+<<set $transparency += 1>>   /* Expectations set in public */
+<<set $independence += 1>>   /* Guardrails limit private coordination */
+
+A short reminder is posted: discussions and decisions belong on dev@, and any 
side conversation must be summarised back promptly.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: B2WrapNote
+<<set $transparency += 1>>   /* Process made explicit on-list */
+<<set $independence += 1>>   /* Moves practice toward list-first governance */
+
+A concise post explains proposal flow and links to labelled issues.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Private outreach lowers visibility initially */
+<<set $collaboration += 0>>  /* Depends on public follow-up */
+
+You privately message an active PPMC member:
+
+"There is a growing perception that decisions are made internally. Can we move 
more discussion to the list?"
+
+<<link "PPMC member posts an open acknowledgement with concrete steps">><<goto 
"C1Good">><</link>>
+<<link "They quietly remind colleagues but say nothing publicly">><<goto 
"C1Weak">><</link>>
+<<link "Suggest a brief office-hours post on dev@ to invite questions">><<goto 
"C1OfficeHours">><</link>>
+<<link "Propose pairing internal maintainers with independent 
co-reviewers">><<goto "C1Pairing">><</link>>
+
+:: C1Good
+<<set $transparency += 2>>   /* Visibility restored by open follow-up */
+<<set $independence += 1>>   /* PPMC self-corrects publicly */
+<<set $collaboration += 1>>  /* Encourages engagement from outsiders */
+
+A PPMC member thanks the mentor and pledges to move discussions on-list.
+They propose a standing rule: discuss proposals only on dev@.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: C1Weak
+<<set $shortcuts += 1>>      /* Private fix without public learning */
+<<set $transparency -= 1>>   /* Community remains unaware */
+<<set $independence -= 1>>   /* Private coordination persists */
+
+Some internal improvement happens, but perception remains unchanged.
+
+<<link "Post a late public summary of the private adjustments">><<goto 
"C2LateSummary">><</link>>
+<<link "Say nothing further">><<goto "Partial">><</link>>
+
+:: C1OfficeHours
+<<set $transparency += 1>>   /* Opens a channel in public view */
+<<set $collaboration += 1>>  /* Low-bar participation from newcomers */
+
+The PPMC posts a short message offering a time to answer questions and points 
back to dev@ for decisions.
+
+<<link "Follow with a written summary back to the list">><<goto 
"C2SummaryBack">><</link>>
+<<link "Time zones exclude many; side chat continues and decisions 
drift">><<goto "C2Misfire">><</link>>
+<<link "Treat it as a one-off and move on">><<goto "Partial">><</link>>
+
+:: C1Pairing
+<<set $collaboration += 2>>  /* Structured inclusion in reviews */
+<<set $independence += 1>>   /* Diversifies decision influence */
+
+The PPMC invites an independent committer to co-review significant PRs for the 
next month, with summaries on dev@.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: C2LateSummary
+<<set $transparency += 1>>   /* Partial recovery through later visibility */
+<<set $independence += 0>>   /* Structure still somewhat company-centered */
+
+A brief on-list summary clarifies next steps, but the delay blunts impact.
+Some trust returns, though skepticism remains.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: C2SummaryBack
+<<set $transparency += 1>>   /* Captures decisions in public */
+<<set $independence += 1>>   /* Reinforces list-first governance */
+
+A summary is posted to dev@ with action items and next steps.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: C2Misfire
+<<set $shortcuts += 1>>      /* Decisions drift to private channels */
+<<set $transparency -= 1>>   /* Exclusion via time zones and side chat */
+<<set $independence -= 1>>   /* Employer-controlled channels dominate */
+
+The office-hours session excludes many due to time zones. Follow-ups move into 
a private chat and are not summarised.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation to IPMC */
+<<set $independence -= 1>>   /* Undercuts podling ownership */
+
+You post to general@incubator:
+
+"This project appears dominated by one employer. Advice welcome."
+
+IPMC members note mentors should help the podling self-correct first, and 
escalation is for when local efforts fail.
+
+<<link "Acknowledge and refocus locally">><<goto "D1Good">><</link>>
+<<link "Continue the public thread">><<goto "D1Bad">><</link>>
+<<link "Request a formal IPMC review of the podling's diversity">><<goto 
"D1Formal">><</link>>
+<<link "Ask an experienced mentor to quietly coach you on next steps 
off-list">><<goto "D1Coach">><</link>>
+
+:: D1Good
+<<set $collaboration += 1>>  /* Restores mentoring balance */
+<<set $independence += 1>>   /* PPMC regains agency with mentor support */
+
+You thank the IPMC for input and redirect the focus to dev@, guiding the PPMC 
to address the issue themselves.
+
+<<link "IPMC requests a lightweight follow-up plan to monitor 
diversity">><<goto "D2FollowUp">><</link>>
+<<link "Proceed without any follow-up planning">><<goto "Partial">><</link>>
+
+:: D1Bad
+<<set $escalation += 1>>     /* Prolonged exposure and tension */
+<<set $independence -= 1>>   /* Further damages podling confidence */
+
+The public thread grows defensive.
+Company employees feel attacked. External contributors disengage further.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: D1Formal
+<<set $escalation += 2>>     /* Heavy-handed escalation */
+<<set $independence -= 1>>   /* Bypasses podling ownership */
+
+A request is made for a formal review. Tension rises and participation drops.
+
+<<link "Walk it back and refocus on dev@ with a clear plan">><<goto 
"D2WalkBack">><</link>>
+<<link "Double down on the formal route">><<goto "Damage">><</link>>
+
+:: D1Coach
+<<set $shortcuts += 1>>      /* Off-list coaching; OK if summarised back */
+<<set $transparency += 0>>   /* No immediate visibility */
+<<set $independence += 0>>
+
+You receive tips from a seasoned mentor on approaches that preserve podling 
ownership.
+
+<<link "Summarise the approach publicly and empower the PPMC">><<goto 
"D2CoachSummary">><</link>>
+<<link "Keep the coaching private and proceed quietly">><<goto 
"Partial">><</link>>
+
+:: D2FollowUp
+<<set $transparency += 1>>   /* Adds simple, visible accountability */
+<<set $independence += 1>>   /* PPMC owns the plan and reports progress */
+
+In a brief note, the IPMC asks the PPMC to include a one-line update on 
decision visibility and contributor diversity in the next two reports.
+The PPMC agrees and leads the updates.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: D2WalkBack
+<<set $transparency += 1>>   /* Explains the change in approach */
+<<set $independence += 1>>   /* Restores local ownership */
+
+You clarify that local correction is preferred and start a thread on dev@ to 
outline next steps.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: D2CoachSummary
+<<set $transparency += 1>>   /* Brings learning back to the list */
+<<set $independence += 1>>   /* PPMC-led correction */
+
+You post a short plan on dev@: proposal template, rotation of thread-starters, 
and summary-back rule.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Silence reads as acceptance of status quo */
+<<set $collaboration -= 1>>  /* Missed mentoring opportunity */
+
+You decide to observe. Company-employed committers reply briefly, then move on.
+No deeper discussion happens.
+
+<<link "Let drift continue">><<goto "E1QuietDrift">><</link>>
+<<link "Intervene later with a structured on-list prompt">><<goto 
"E2LateIntervention">><</link>>
+<<link "Nudge a contributor privately to start a public proposals 
thread">><<goto "E2Nudge">><</link>>
+<<link "Audit recent decisions and post an index of dev@ discussion 
links">><<goto "E2Index">><</link>>
+<<link "Downplay concerns in the next podling report">><<goto 
"E2Rationalize">><</link>>
+
+:: E1QuietDrift
+<<set $transparency -= 1>>   /* Ongoing lack of visibility */
+<<set $independence -= 1>>   /* Entrenches single-vendor control */
+
+Over weeks, participation narrows further.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: E2LateIntervention
+<<set $transparency += 1>>   /* Late, but public prompt */
+<<set $collaboration += 1>>  /* Encourages course correction */
+<<set $shortcuts += 0>>      /* No shortcut this time, just delayed mentoring 
*/
+
+You later start a thread on dev@:
+
+"Could we document where feature proposals begin and ensure they start here?"
+
+Some constructive replies follow.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: E2Nudge
+<<set $shortcuts += 1>>      /* Private nudge rather than public prompt */
+<<set $transparency += 0>>   /* No visible correction yet */
+<<set $independence += 0>>   /* Depends on follow-up */
+
+A contributor agrees to start a thread but delays.
+
+<<link "Follow up publicly with a proposals kickoff thread yourself">><<goto 
"E3PublicKickoff">><</link>>
+<<link "Wait it out">><<goto "Partial">><</link>>
+
+:: E2Index
+<<set $transparency += 2>>   /* Makes governance traceable */
+<<set $independence += 1>>   /* Centers the list as source of truth */
+
+You post a simple index that links recent dev@ decisions and invites additions 
for anything missing.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: E2Rationalize
+<<set $transparency -= 1>>   /* Misleads oversight by omission */
+<<set $independence -= 1>>   /* Avoids confronting vendor dominance */
+<<set $escalation += 0>>     /* No escalation, but harms trust */
+
+In the next report you write: "No major issues noted." The imbalance persists 
and deepens.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: E3PublicKickoff
+<<set $transparency += 1>>   /* Visible action in public */
+<<set $collaboration += 1>>  /* Low-friction path for others to join */
+
+You start a dev@ thread proposing a simple template for new proposals and 
invite volunteers to champion items.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+The perception of dominance persists.
+A few non-employee contributors drift away, leaving a single-vendor project.
+In the next podling report, mentors note reduced diversity and the need to 
expand independent participation.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+Some corrective steps are taken, but power imbalance is not fully addressed.
+Discussions are more visible, yet new contributors remain hesitant.
+Independence remains uncertain.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+The project addressed vendor dominance transparently.
+Decisions now start and finish on dev@.
+A PPMC-owned note clarifies participation is open to all.
+Independent contributors co-lead next steps.
+Reports include brief evidence of list-based decisions and independent 
participation.
+
+Community health improves and diversity grows.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $independence + $collaboration - $shortcuts - 
$escalation>>
+
+You have reached the end of the scenario. Let us reflect.
+
+<<if $total >= 8>>
+You modelled ASF-aligned mentoring: open communication, PPMC independence, and 
inclusive governance.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+You balanced openness with pragmatism. Some internal habits may persist, but 
practices are improving.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+You achieved partial progress without fundamental change. External 
contributors may still view the project as company-controlled.
+<</if>>
+
+<<if $total < 0>>
+Your approach reinforced vendor dominance. Greater transparency and patience 
would help the project grow in ASF culture.
+<</if>>
+
+''Reflection Questions''
+
+- Which actions best demonstrate independence from any single employer?
+- How can mentors encourage companies to share control without alienating them?
+- What concise evidence could the next podling report include to show 
improvement?
+- How does this scenario connect to the ASF value of community over code?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/heated_thread.twee 
b/simulations/incubator/heated_thread.twee
new file mode 100644
index 0000000..4d411b8
--- /dev/null
+++ b/simulations/incubator/heated_thread.twee
@@ -0,0 +1,340 @@
+:: StoryTitle
+The Heated Thread (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-HEATED-THREAD",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Clear, public, and respectful communication */
+<<set $collaboration = 0>>  /* PPMC-led conflict resolution and teamwork */
+<<set $shortcuts = 0>>      /* Avoiding avoidance, silence, or private fixes */
+<<set $escalation = 0>>     /* Premature or unnecessary escalation */
+<<set $steps = 0>>
+
+You are a mentor working with an incubating Apache project.
+
+A long thread begins on `dev@` about switching the project’s build system from 
Maven to Gradle.  
+At first, it’s a healthy technical discussion — but soon, the tone shifts.
+
+> "Your approach ignores half the project’s needs."  
+> "Maybe if you actually read the code, you’d understand!"
+
+The exchange escalates.  
+Other participants go silent, unsure whether to intervene.
+
+What do you do?
+
+<<link "Step in publicly to cool things down">><<goto "A">><</link>>  
+<<link "Wait to see if it resolves itself">><<goto "B">><</link>>  
+<<link "Email both parties privately to de-escalate">><<goto "C">><</link>>  
+<<link "Escalate to [email protected] for guidance">><<goto 
"D">><</link>>  
+<<link "Invite a neutral summary of technical points">><<goto "E">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Visible guidance strengthens trust */
+<<set $collaboration += 1>>  /* Mentoring through calm example */
+
+You step in publicly:
+
+> "Let’s pause for a moment. Please focus on the technical issue, not each 
other. We all want the best outcome for the project."
+
+One contributor thanks you, the other replies curtly:  
+> "Don’t lecture me — I’m defending my work."
+
+<<link "Reassure and redirect">><<goto "A1Good">><</link>>  
+<<link "Reinforce community norms firmly">><<goto "A1Neutral">><</link>>  
+<<link "Call out the behaviour sharply">><<goto "A1Bad">><</link>>
+
+:: A1Good
+<<set $collaboration += 2>>  /* Shows empathy and resets tone */
+<<set $transparency += 1>>   /* Keeps communication open */
+
+You reply calmly:
+
+> "No worries — it’s easy for tone to get lost in text. Let’s list pros and 
cons of both build options before deciding."
+
+People re-engage productively, and the silent contributors start replying 
again.
+
+<<link "Encourage documentation of the process">><<goto "A2Doc">><</link>>  
+<<link "Let the discussion conclude naturally">><<goto "A2Fade">><</link>>
+
+:: A2Doc
+<<set $transparency += 1>>   /* Captures learning */
+<<set $collaboration += 1>>  /* Reinforces PPMC ownership */
+
+You suggest:  
+> "Let’s summarise this in our dev@ archive so future contributors know how we 
handled disagreement."
+
+The summary later appears in the next podling report.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: A2Fade
+<<set $shortcuts += 1>>      /* Fails to capture learning */
+
+The thread ends peacefully, but no one documents what was learned.  
+When another disagreement happens later, people repeat the same mistakes.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: A1Neutral
+<<set $transparency += 1>>   /* Affirms ASF norms */
+<<set $collaboration -= 1>>  /* Slight defensiveness reduces rapport */
+
+You write:
+
+> "Please remember that ASF discussions should stay respectful. Let’s focus on 
ideas, not people."
+
+It stops the argument, but the tone feels chilly.  
+The discussion moves on mechanically, without much reflection.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: A1Bad
+<<set $transparency -= 1>>   /* Harsh response harms openness */
+<<set $collaboration -= 2>>  /* Scolding damages trust */
+
+You post:
+
+> "This behaviour is unacceptable. You both need to apologise immediately."
+
+The thread ends abruptly. One contributor unsubscribes.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* Avoiding early intervention allows harm */
+<<set $collaboration -= 1>>  /* Lost mentoring opportunity */
+
+You wait to see if others step in.  
+After several days, the thread dies down on its own.  
+But one of the main contributors goes quiet and hasn’t committed in weeks.
+
+<<link "Reach out privately afterward">><<goto "B1Good">><</link>>  
+<<link "Assume they’ll come back">><<goto "B1Bad">><</link>>
+
+:: B1Good
+<<set $collaboration += 2>>  /* Restores human connection */
+<<set $transparency += 1>>   /* Restores visibility later */
+
+You message the inactive contributor privately:
+
+> "Just checking in — are you OK? The thread got tense, and I wanted to make 
sure you still feel welcome."
+
+They appreciate it and return gradually.
+
+<<link "Encourage them to post publicly">><<goto "B2Public">><</link>>  
+<<link "Keep the check-in private">><<goto "B2Private">><</link>>
+
+:: B2Public
+<<set $transparency += 2>>   /* Restores openness */
+<<set $collaboration += 1>>  /* Encourages participation */
+
+You suggest they reply to the list to restart discussion.  
+They do, thanking everyone for helping de-escalate.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: B2Private
+<<set $shortcuts += 1>>      /* Learning hidden from group */
+<<set $transparency -= 1>>   /* Unseen progress */
+
+They return to contributing silently, avoiding discussion threads.  
+Future conflicts may resurface.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: B1Bad
+<<set $shortcuts += 2>>      /* Avoidance compounds harm */
+<<set $collaboration -= 1>>  /* Mentor absence felt */
+
+You decide not to follow up.  
+Weeks later, the contributor resigns quietly. The podling loses momentum.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Direct contact can calm tempers */
+<<set $transparency -= 1>>   /* Private conversation not visible */
+
+You message both privately, acknowledging the conflict and encouraging 
perspective.  
+They apologise to you but not to the list.
+
+<<link "Encourage public closure">><<goto "C1Good">><</link>>  
+<<link "Let it stay private">><goto "C1Bad">><</link>>
+
+:: C1Good
+<<set $transparency += 2>>   /* Visibility rebuilds trust */
+<<set $collaboration += 1>>  /* Community sees resolution */
+
+You suggest:
+
+> "Could you post a short note to close the thread, just so everyone knows the 
issue’s settled?"
+
+They do, thanking each other for resolving things. The list’s mood improves.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: C1Bad
+<<set $shortcuts += 1>>      /* Private fix limits transparency */
+<<set $transparency -= 1>>   /* Hidden repair */
+<<set $collaboration -= 1>>  /* Unclear leadership */
+
+You consider it solved privately.  
+Others on the list still sense tension and avoid new topics.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation */
+<<set $collaboration -= 1>>  /* Weakens PPMC independence */
+
+You escalate the thread to `[email protected]`.  
+Some IPMC members reply, but several ask why the mentors didn’t first handle 
it locally.
+
+<<link "Acknowledge the feedback and redirect locally">><<goto 
"D1Good">><</link>>  
+<<link "Defend the escalation">><<goto "D1Bad">><</link>>
+
+:: D1Good
+<<set $transparency += 1>>   /* Brings back local ownership */
+<<set $collaboration += 1>>  /* Helps the PPMC recover leadership */
+
+You post back to `dev@`:
+
+> "Thanks everyone — we’ll handle this locally and summarise learnings here."
+
+The PPMC restarts discussion respectfully.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: D1Bad
+<<set $escalation += 1>>     /* Extra tension */
+<<set $collaboration -= 2>>  /* External debate undermines PPMC */
+
+The debate spills across lists, with outsiders criticising tone and mentors 
arguing among themselves.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $collaboration += 2>>  /* Refocuses on technical facts */
+<<set $transparency += 1>>   /* Keeps discussion public */
+
+You write:
+
+> "Let’s reset — can someone summarise both technical options objectively so 
we can compare side-by-side?"
+
+A neutral contributor volunteers.
+
+<<link "Acknowledge and build on the summary">><<goto "E1Good">><</link>>  
+<<link "Thank them and move on without reflection">><<goto 
"E1Neutral">><</link>>  
+<<link "Ignore the effort and end the thread">><<goto "E1Bad">><</link>>
+
+:: E1Good
+<<set $collaboration += 2>>  /* Re-engages others in solution mode */
+<<set $transparency += 1>>   /* Shared understanding */
+
+The project thanks the summariser and agrees to prototype both options before 
deciding.  
+Healthy debate returns.
+
+<<link "Invite a closing reflection">><<goto "E2Reflect">><</link>>
+
+:: E2Reflect
+<<set $collaboration += 1>>  /* Reinforces learning */
+<<set $transparency += 1>>   /* Visible closure */
+
+You encourage:
+
+> "Let’s note what helped here — clear summaries made a difference."
+
+They agree to include this insight in their next podling report.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: E1Neutral
+<<set $shortcuts += 1>>      /* Fails to embed lesson */
+<<set $collaboration -= 1>>  /* Learning missed */
+
+The technical issue is solved, but no one reflects on the conflict.  
+A missed mentoring opportunity.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: E1Bad
+<<set $collaboration -= 2>>  /* Dismisses constructive input */
+<<set $transparency -= 1>>   /* Shuts down visibility */
+
+The summary is ignored, and frustration returns.  
+The volunteer disengages from the project.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+✅ The project handled the tension constructively and restored a healthy tone.
+
+* Respect replaced hostility.  
+* The PPMC led its own resolution.  
+* The discussion remained visible and educational.
+
+Mentors note that de-escalation, empathy, and transparency helped rebuild 
trust.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+The conflict cooled, but the project missed a chance to learn collectively.  
+Future disagreements might resurface without guidance.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+The conflict left lasting damage.  
+A contributor withdrew, and activity declined.  
+The next podling report notes "reduced participation after tense discussions."
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration - $shortcuts - $escalation>>
+
+You’ve reached the end of the scenario.
+
+<<if $total >= 8>>
+✅ You modelled ASF-aligned practice: respectful communication, transparency, 
and mentoring that empowers the PPMC.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+⚖️ You de-escalated effectively but missed opportunities for broader learning 
or documentation.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+⚠️ The conflict was contained, but without enough openness to rebuild trust 
fully.
+<</if>>
+
+<<if $total < 0>>
+❌ Your choices reduced visibility and trust. The community will need time to 
recover and may repeat the mistake.
+<</if>>
+
+''Reflection Questions''
+
+- When should a mentor step in versus letting the PPMC lead?  
+- Which responses preserved trust and which reduced it?  
+- How can podlings document and share lessons from conflict?  
+- How does this scenario demonstrate ''community over code'' in practice?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/lazy_consensus.twee 
b/simulations/incubator/lazy_consensus.twee
new file mode 100644
index 0000000..a734251
--- /dev/null
+++ b/simulations/incubator/lazy_consensus.twee
@@ -0,0 +1,329 @@
+:: StoryTitle
+Lazy Consensus Gone Wrong (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-LAZY-CONSENSUS",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Clear communication, open discussion, and 
visible decisions */
+<<set $collaboration = 0>>  /* PPMC-led governance, mentor guidance, and 
constructive teamwork */
+<<set $shortcuts = 0>>      /* Hidden fixes, opacity, or process skipping */
+<<set $escalation = 0>>     /* Premature or unnecessary public escalation */
+<<set $steps = 0>>
+
+You are a mentor working with an incubating Apache project.
+
+The project starts a thread on dev@:
+
+''[DISCUSS] Proposal: Merge new analytics module''
+
+> "If there are no objections within 72 hours, we’ll merge the new analytics 
module into the main codebase."
+
+After three days, no one replies. The merge happens and contributors are 
pleased.
+
+Two days later, a mentor who had been travelling objects, saying the merge 
introduces //licensing complications// that could affect redistribution.
+
+The mentor feels ignored. The project feels blindsided.  
+
+A debate begins: ''Is lazy consensus still valid once the action is complete?''
+
+What do you do?
+
+<<link "Defend the project">><<goto "A">><</link>>  
+<<link "Pause and acknowledge the concern">><<goto "B">><</link>>  
+<<link "Take it offline">><<goto "C">><</link>>  
+<<link "Escalate immediately">><<goto "D">><</link>>  
+<<link "Ask clarifying questions first">><<goto "E">><</link>>  
+<<link "Stay silent and watch what happens">><<goto "FPassive">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Procedural defensiveness harms clarity */
+<<set $collaboration -= 1>>  /* Reduces trust and shared ownership */
+
+You defend the project:
+
+> "The 72-hour period passed with no objections. The decision stands."
+
+A committer replies:
+
+> "So objections don’t count if someone’s away for a few days?"
+
+The discussion heats up.
+
+<<link "Double down on procedure">><<goto "A1Hard">><</link>>  
+<<link "Acknowledge the misunderstanding and reset the tone">><<goto 
"A1Soft">><</link>>
+
+:: A1Hard
+<<set $transparency -= 1>>   /* Further rigidity lowers openness */
+<<set $collaboration -= 1>>  /* Ignores collaborative correction */
+
+The discussion grows tense. Other mentors note that lazy consensus can be 
revisited if a valid concern arises.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: A1Soft
+<<set $collaboration += 2>>  /* Encourages collaboration and learning */
+<<set $transparency += 1>>   /* Demonstrates calm and open ASF tone */
+
+You post:
+
+> "Let’s treat this as a learning opportunity. Clarity matters more than 
blame."
+
+The tone improves. The project is open to revisiting the merge.
+
+<<link "Go to re-evaluation">><<goto "Reeval">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $collaboration += 2>>  /* Invites open review and shared governance */
+
+You pause and acknowledge the concern:
+
+> "This raises an important point. Let’s revisit and confirm consensus before 
deciding whether to revert."
+
+The tension cools and contributors start analysing the dependency.
+
+<<link "Suggest a temporary revert while discussion continues">><<goto 
"B1Good">><</link>>  
+<<link "Keep the merge and promise to fix it later">><<goto 
"B1Weak">><</link>>  
+<<link "Invite other mentors or license experts to weigh in">><<goto 
"B2Consult">><</link>>
+
+:: B1Good
+<<set $transparency += 2>>   /* Visible correction reinforces trust */
+<<set $collaboration += 2>>  /* Collaborative re-evaluation improves health */
+
+The project reverts temporarily and continues the discussion. Transparency 
improves.
+
+<<link "Go to re-evaluation">><<goto "Reeval">><</link>>
+
+:: B1Weak
+<<set $shortcuts += 1>>      /* Defers clarity and leaves unresolved tension */
+<<set $transparency -= 1>>   /* Ambiguity persists on-list */
+<<set $collaboration -= 1>>  /* Missed chance for shared correction */
+
+You decide to keep the merge and "deal with it later."  
+The issue fades until it reappears when the project later proposes another 
major code integration, and contributors again disagree about how to handle 
lazy consensus and objections.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: B2Consult
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Visible request for wider input */
+<<set $collaboration += 1>>  /* Inclusive, but PPMC retains ownership */
+
+You invite other mentors and relevant ASF lists to share insight.  
+The discussion expands, and the podling learns how to seek help without losing 
ownership.
+
+<<link "Go to re-evaluation">><<goto "Reeval">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Moves discussion off public list */
+
+You take the discussion offline with mentors and a few contributors.  
+Private messages ease tensions, but no update is posted to the list.
+
+<<link "Post a public summary afterward">><<goto "C1Good">><</link>>  
+<<link "Leave the private fix unreported">><<goto "C1Bad">><</link>>
+
+:: C1Good
+<<set $transparency += 1>>   /* Restores some visibility with public summary */
+<<set $collaboration += 1>>  /* Partial recovery via later openness */
+
+You summarise the offline discussion publicly:
+
+> "A licensing concern was raised and discussed privately; here’s the plan 
moving forward."
+
+Contributors appreciate the update, but some note decisions should ideally 
stay on-list.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: C1Bad
+<<set $transparency -= 2>>   /* No transparency follow-up */
+<<set $shortcuts += 1>>      /* Shortcut via private fix */
+
+Without a summary, contributors are left confused by unseen changes.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation to IPMC */
+<<set $collaboration -= 1>>  /* Reduces PPMC independence */
+
+You escalate to [email protected].  
+IPMC members remind you that mentors should help the ''PPMC'' self-correct 
first, and escalation is only appropriate when the project cannot resolve 
issues internally.
+
+<<link "Acknowledge the premature escalation and refocus discussion">><<goto 
"D1Good">><</link>>  
+<<link "Continue debating publicly">><<goto "D1Bad">><</link>>
+
+:: D1Good
+<<set $collaboration += 1>>  /* Restores project ownership slowly */
+
+You redirect the discussion back to the project list and help them handle it 
locally.  
+The project learns, but trust will take time to rebuild.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: D1Bad
+<<set $escalation += 1>>     /* Adds tension and public noise */
+<<set $collaboration -= 1>>  /* Weakens shared problem solving */
+
+The discussion drags on publicly; the project feels exposed.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Mentoring through inquiry */
+
+You ask clarifying questions:
+
+> "Can you tell us more about the licensing concern before we decide next 
steps?"
+
+The mentor explains it is an incompatible dependency.
+
+<<link "Encourage open review on the list">><<goto "E1Good">><</link>>  
+<<link "Quietly remove the dependency yourself">><<goto "E1Bad">><</link>>  
+<<link "Quietly fix it yourself to save time">><<goto "E2Fix">><</link>>
+
+:: E1Good
+<<set $transparency += 1>>   /* Open review improves visibility */
+<<set $collaboration += 1>>  /* Shared learning but limited closure */
+
+You guide an open technical review. Consensus builds around facts, but closure 
is thin.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: E1Bad
+<<set $transparency -= 1>>   /* Hidden fix reduces openness */
+<<set $shortcuts += 2>>      /* Bypasses process learning */
+
+You fix the issue quietly, but others never learn what happened.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: E2Fix
+<<set $shortcuts += 2>>      /* Mentor bypasses community process */
+<<set $collaboration -= 2>>  /* Undermines podling independence */
+<<set $transparency -= 1>>   /* Hidden mentoring action */
+
+You replace the dependency yourself and commit directly.  
+The problem vanishes, but the podling learns nothing and ownership blurs.
+
+<<link "Go to damage control">><<goto "Damage">><</link>>
+
+:: FPassive
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Lack of visible guidance */
+<<set $collaboration -= 1>>  /* Missed mentoring opportunity */
+
+You decide to observe rather than intervene.  
+The project debates internally, but frustration builds as no one clarifies 
lazy consensus expectations.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: Reeval
+<<set $steps += 1>>
+
+The project reopens the discussion publicly.  
+A contributor confirms the dependency license is incompatible.  
+They agree to revert temporarily and continue discussion until resolved.
+
+''Reflection prompt:''  
+What could you do to help the project capture this learning for future 
proposals?
+
+<<link "Encourage them to document process improvements">><<goto 
"AltGood1">><</link>>  
+<<link "Suggest they summarise in the next podling report">><<goto 
"AltGood2">><</link>>  
+<<link "Assume they’ve learned and move on">><<goto "AltNeutral">><</link>>
+
+:: AltGood1
+<<set $transparency += 1>>   /* Publicly documents learning */
+<<set $collaboration += 1>>  /* Strengthens PPMC ownership */
+
+They post a short message documenting lessons learned about lazy consensus.  
+Other podlings later reference it.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: AltGood2
+<<set $collaboration += 1>>  /* Captures learning via report summary */
+
+They agree to mention the learning experience in the next podling report.  
+Good reflection, but it will not reach new contributors immediately.
+
+<<link "See resolution path">><<goto "Resolution">><</link>>
+
+:: AltNeutral
+<<set $shortcuts += 1>>      /* Fails to record lessons for others */
+
+You decide not to follow up. The lesson risks being forgotten.
+
+<<link "Go to partial resolution">><<goto "Partial">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+Because communication was incomplete, confusion persists.  
+Some contributors disengage. The next podling report mentions a "process 
misunderstanding".  
+The ''IPMC'' reminds the ''PPMC'' to keep decisions visible and to clarify 
closure on-list.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+The unresolved or poorly documented handling of lazy consensus resurfaces 
later when the project discusses integrating a new feature.  
+Community members recall the earlier incident and ask for clearer 
decision-making guidance.  
+The confusion becomes a reminder of the need for consistent mentoring.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+✅ The project handled the issue transparently and learned from it.
+
+* Use clearer lazy-consensus proposals.  
+* Post short closure summaries on-list.  
+* Treat late concerns with respect instead of defensiveness.
+
+Mentors highlight this case as an example of learning through practice.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration - $shortcuts - $escalation>>
+
+You have reached the end of the scenario. Let’s reflect.
+
+<<if $total >= 8>>
+You modelled ASF-aligned practice: open communication, shared learning, and 
PPMC-led governance.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+You balanced transparency and pragmatism. A few shortcuts or escalations 
reduced the learning impact, but the outcome was solid overall.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+You resolved the issue, but with limited visibility or collaboration. The 
project might repeat similar confusion later.
+<</if>>
+
+<<if $total < 0>>
+Your approach reduced community trust. Greater transparency and patience would 
have helped the project grow in ASF culture.
+<</if>>
+
+''Reflection Questions''
+
+- What decisions improved or harmed transparency?  
+- How might a mentor help the project document lessons without taking control? 
 
+- What could the PPMC include in its next podling report to show learning?  
+- How does this scenario connect to the ASF principle of ''community over 
code''?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/mentor_dependancy.twee 
b/simulations/incubator/mentor_dependancy.twee
new file mode 100644
index 0000000..21d8255
--- /dev/null
+++ b/simulations/incubator/mentor_dependancy.twee
@@ -0,0 +1,476 @@
+:: StoryTitle
+Mentor Dependency (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-MENTOR-DEPENDENCY",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Clear communication, open discussion, and 
visible learning */
+<<set $collaboration = 0>>  /* PPMC-led governance, mentor guidance, and 
teamwork */
+<<set $shortcuts = 0>>      /* Mentor overreach, hidden fixes, or doing 
instead of teaching */
+<<set $escalation = 0>>     /* Premature escalation to the IPMC or ASF level */
+<<set $steps = 0>>
+
+You are a mentor working with an incubating Apache project.
+
+After more than a year in incubation, the podling still depends on mentors to 
drive votes, file reports, and interpret ASF rules.
+When mentors pause activity, the project stalls. You begin to wonder if your 
help has become dependency.
+
+What do you do?
+
+<<link "Handle the backlog yourself to keep momentum">><<goto "A">><</link>>
+<<link "Invite the PPMC to lead the next governance task">><<goto 
"B">><</link>>
+<<link "Step back quietly and observe what happens">><<goto "C">><</link>>
+<<link "Escalate concerns to general@incubator">><<goto "D">><</link>>
+<<link "Ask open questions that draw out volunteers">><<goto "E">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $shortcuts += 1>>      /* Mentor doing the work instead of guiding 
reduces growth */
+<<set $collaboration -= 1>>  /* Removes community ownership */
+
+You step in and do the work: calling votes, writing reports, and answering ASF 
questions.
+Everything gets done, but only because you did it.
+
+<<link "Continue doing it for efficiency">><<goto "A1Hard">><</link>>
+<<link "Use this to reset and then delegate publicly">><<goto 
"A1Soft">><</link>>
+<<link "Wait for consensus without prompting (delay)">><<goto 
"A1Avoid">><</link>>
+
+:: A1Hard
+<<set $shortcuts += 2>>      /* Repeated overreach compounds dependency */
+<<set $collaboration -= 1>>  /* Further reduces shared governance */
+
+The project remains dependent on mentors. Others assume you will handle 
governance next time too.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: A1Soft
+<<set $collaboration += 1>>  /* Reintroduces PPMC participation */
+<<set $transparency += 1>>   /* Publicly visible pivot to mentoring mode */
+
+You post to the list:
+"We have cleared the backlog, but going forward, the PPMC should lead reports 
and votes. Mentors will review only."
+
+<<link "Follow through by assigning tasks openly (rotate)">><<goto 
"Rotate">><</link>>
+<<link "Announce rotation but do not follow up">><<goto 
"Complacency">><</link>>
+<<link "Assign tasks rigidly (over-correct)">><<goto "OverCorrectA">><</link>>
+<<link "Follow through with public check-ins and recognition">><<goto 
"FollowThrough">><</link>>
+
+:: A1Avoid
+<<set $transparency -= 1>>   /* No explicit prompt to move forward */
+<<set $collaboration -= 1>>  /* Team left passive */
+<<set $shortcuts += 1>>      /* Indecision becomes a shortcut to inaction */
+
+You claim to be waiting for consensus, but never prompt or structure the 
decision.
+Threads drift and nothing happens.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: OverCorrectA
+<<set $transparency += 1>>   /* Clear intent but tone rigid */
+<<set $collaboration += 0>>  /* Directives replace dialogue */
+<<set $shortcuts += 1>>      /* Overly controlling mentoring */
+
+You publicly assign tasks forcefully:
+"Each committer must handle one report this month."
+Progress resumes, but engagement feels coerced.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Complacency
+<<set $transparency += 1>>   /* You did announce a plan */
+<<set $collaboration += 0>>  /* No follow-through to build shared ownership */
+<<set $shortcuts += 1>>      /* Good intention without execution */
+
+You announced rotation but never followed up.
+Deadlines slip again and uncertainty returns.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: FollowThrough
+<<set $transparency += 2>>   /* Follow-up visible on-list */
+<<set $collaboration += 1>>  /* Recognition reinforces PPMC leadership */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+You check in after the next report:
+"Great job leading this round - let us rotate again next month."
+The team responds positively and begins planning the next rotation themselves.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Encourages shared action between mentor and 
PPMC */
+<<set $transparency += 1>>   /* Visible invitation to contribute */
+
+You invite PPMC members to take on the next report or vote.
+They agree hesitantly and ask for guidance.
+
+<<link "Coach them privately so they do not make mistakes">><<goto 
"CoachPrivate">><</link>>
+<<link "Coach them publicly so everyone learns">><<goto 
"CoachPublic">><</link>>
+
+:: CoachPrivate
+<<set $collaboration += 1>>  /* Builds 1:1 confidence */
+<<set $transparency -= 1>>   /* Learning not visible to wider community */
+
+They succeed quietly, but most contributors never see the process.
+Next time, they ask again privately.
+
+<<link "Post a public follow-up explaining the steps">><<goto 
"Summarise">><</link>>
+<<link "Let it continue privately">><<goto "Damage">><</link>>
+<<link "Write drafts privately for them to copy (shadow-coach)">><<goto 
"ShadowCoach">><</link>>
+
+:: ShadowCoach
+<<set $transparency -= 1>>   /* Ghost-writing hides learning */
+<<set $collaboration -= 1>>  /* Ownership shifts back to mentor */
+<<set $shortcuts += 2>>      /* Doing the work for others */
+
+You draft the report and emails privately to help.
+They copy, paste, and ask you again next time.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: CoachPublic
+<<set $collaboration += 2>>  /* Broadly builds PPMC capability */
+<<set $transparency += 1>>   /* Demonstrates open mentoring practice */
+
+You guide them on-list, showing how to structure [DISCUSS] and [VOTE] threads.
+Other contributors follow along and gain confidence.
+
+<<link "Propose rotating tasks among members">><<goto "Rotate">><</link>>
+<<link "Over-teach and correct every detail (dominate thread)">><<goto 
"OverCorrectB">><</link>>
+<<link "PPMC proposes their own rotation">><<goto "PeerRotation">><</link>>
+<<link "Formalise a monthly rotation calendar">><<goto "SteadyCycle">><</link>>
+
+:: OverCorrectB
+<<set $transparency += 1>>   /* Lots of visible activity */
+<<set $collaboration += 0>>  /* Your voice dominates; others withdraw */
+<<set $shortcuts += 2>>      /* Teaching becomes directing */
+
+Your explanations flood the thread and you correct every message.
+People stop participating, waiting for your approval.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: PeerRotation
+<<set $transparency += 2>>   /* Community announces plan on-list */
+<<set $collaboration += 2>>  /* Self-organised rotation shows independence */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+PPMC members propose a rotation and volunteers sign up without prompting.
+Mentors acknowledge progress and stay in review mode.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: SteadyCycle
+<<set $transparency += 2>>   /* Calendar and ownership are public */
+<<set $collaboration += 1>>  /* Predictable shared responsibility */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+The community publishes a monthly rotation calendar with clear owners and 
dates.
+Mentors monitor progress but do not steer day-to-day work.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Summarise
+<<set $steps += 1>>
+<<set $transparency += 2>>   /* Publicly documents the process for others */
+<<set $collaboration += 1>>  /* Reinforces shared knowledge and confidence */
+
+You post a short summary explaining how to run [DISCUSS] and [VOTE] threads.
+Others begin to learn by example.
+
+<<link "Propose rotation">><<goto "Rotate">><</link>>
+
+:: Rotate
+<<set $steps += 1>>
+<<set $collaboration += 2>>  /* Broad ownership through distributed 
responsibility */
+<<set $transparency += 1>>   /* Visible, predictable governance on-list */
+
+You suggest rotating report and vote leadership among PPMC members.
+Mentors stay in review mode, helping the PPMC understand ASF policy rather 
than applying it for them.
+
+After a few cycles, the community starts to act independently.
+
+<<link "Recognise this as progress">><<goto "Resolution">><</link>>
+<<link "Rotation narrows to a few people (burnout risk)">><<goto 
"Burnout">><</link>>
+<<link "Arguments over fairness stall rotation">><<goto 
"Fragmentation">><</link>>
+
+:: Burnout
+<<set $transparency += 1>>   /* Visible fatigue signs on-list */
+<<set $collaboration += 0>>  /* Others are not stepping up to share load */
+<<set $shortcuts += 2>>      /* Sustainability shortcut: same people do all 
work */
+
+A few members rotate reports repeatedly. Others stay quiet.
+Work gets done, but participation narrows and burnout grows.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Fragmentation
+<<set $transparency += 1>>   /* Disagreement is on-list */
+<<set $collaboration -= 2>>  /* Team cohesion drops */
+<<set $shortcuts += 1>>      /* Process focus over facilitation */
+
+Members argue over who should take which rotation slot.
+Progress stalls while mentors remain silent, expecting the PPMC to 
self-correct.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Resolution
+<<set $transparency += 1>>   /* Visible closure and accountability */
+<<set $collaboration += 2>>  /* PPMC demonstrates stable self-governance */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+The project demonstrates growing independence.
+PPMC members lead governance openly; mentors support, not direct.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Damage
+<<set $shortcuts += 1>>      /* Mentor-led pattern continues */
+<<set $transparency += 0>>   /* Visibility low but not hidden */
+<<set $collaboration -= 1>>  /* Dependency persists */
+
+The podling remains mentor-driven.
+The IPMC flags lack of independence in its next review.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $transparency -= 1>>   /* Silence reduces clarity and trust */
+<<set $collaboration -= 1>>  /* Team becomes passive without guidance */
+
+You quietly stop replying to see what happens.
+After two weeks, nothing moves. Reports lapse, and contributors hesitate to 
act.
+
+<<link "Step in to fix things again">><<goto "A">><</link>>
+<<link "Reopen a discussion about shared responsibility">><<goto 
"PromptDiscussion">><</link>>
+<<link "Stay silent again to force ownership">><<goto "SilenceAgain">><</link>>
+
+:: PromptDiscussion
+<<set $transparency += 2>>   /* Re-establishes visibility and expectations */
+<<set $collaboration += 1>>  /* Invites collective ownership */
+
+You ask publicly:
+"Who can lead our next report or release? Mentors will stay in review mode 
only."
+
+Some volunteers step forward, unsure where to start.
+
+<<link "Support them in public as they learn">><<goto "CoachPublic">><</link>>
+<<link "Guide them privately to avoid mistakes">><<goto 
"CoachPrivate">><</link>>
+<<link "Prompt, then go silent again">><<goto 
"SilenceAgainAfterPrompt">><</link>>
+<<link "Form a small working group to share ownership">><<goto 
"SharedOwnership">><</link>>
+
+:: SilenceAgain
+<<set $transparency -= 1>>   /* Ongoing silence */
+<<set $collaboration -= 2>>  /* Community confidence falls */
+<<set $shortcuts += 1>>      /* Avoidance becomes a pattern */
+
+You wait for others to act without any guidance.
+Nothing moves; trust erodes further.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: SilenceAgainAfterPrompt
+<<set $transparency += 1>>   /* At least a prompt existed */
+<<set $collaboration -= 1>>  /* Ownership still unclear */
+<<set $shortcuts += 1>>      /* Inconsistent engagement */
+
+You nudge the list, then disappear again.
+Energy fades and nobody feels responsible.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: SharedOwnership
+<<set $transparency += 1>>   /* Visible coordination on-list */
+<<set $collaboration += 1>>  /* Contributors coordinate and share 
responsibility */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+A small working group volunteers to draft the next report and document each 
step on-list.
+Momentum improves as tasks are shared transparently.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Recovery
+<<set $transparency += 2>>   /* Public follow-up closes the loop */
+<<set $collaboration += 2>>  /* Capability grows across the team */
+
+After some private guidance, you return to the list to document the process.
+People start to try the steps themselves next time.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation bypasses local governance 
*/
+<<set $collaboration -= 2>>  /* Undermines PPMC independence */
+
+You post to general@incubator about mentor dependency.
+IPMC members reply that mentors should help the podling self-correct first.
+
+<<link "Apologise and refocus locally">><<goto "Refocus">><</link>>
+<<link "Defend your action publicly">><<goto "Defend">><</link>>
+<<link "Start a mentors-only coordination thread">><<goto 
"ParallelList">><</link>>
+<<link "File an IPMC ticket instead of a discussion">><<goto 
"ReportOnly">><</link>>
+
+:: Refocus
+<<set $collaboration += 1>>  /* Re-engages project team in local 
problem-solving */
+<<set $transparency += 1>>   /* Admits error openly and models accountability 
*/
+
+You acknowledge the feedback and refocus on helping the PPMC grow.
+
+<<link "Move toward rotating responsibility">><<goto "Rotate">><</link>>
+<<link "Report back periodically as momentum returns">><<goto 
"SlowRepair">><</link>>
+<<link "Run an on-list walkthrough of governance steps">><<goto 
"LocalWorkshop">><</link>>
+
+:: SlowRepair
+<<set $transparency += 2>>   /* Apology and visible correction */
+<<set $collaboration += 1>>  /* Gradual re-engagement of PPMC */
+<<set $shortcuts += 0>>
+<<set $escalation += 2>>     /* Original escalation penalty remains */
+
+After refocusing, the team rebuilds trust.
+Reports resume slowly but steadily under local leadership.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: LocalWorkshop
+<<set $transparency += 2>>   /* Steps explained on-list, archived for 
reference */
+<<set $collaboration += 2>>  /* Group learns together */
+<<set $shortcuts += 0>>
+<<set $escalation += 1>>     /* Prior escalation still a drag */
+
+You facilitate an on-list walkthrough: how to run [DISCUSS], [VOTE], tally, 
and close.
+PPMC members practice and ask questions in the thread.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Defend
+<<set $escalation += 1>>     /* Escalation intensifies tension */
+<<set $collaboration -= 1>>  /* Discourages open collaboration */
+
+The discussion drags on publicly, leaving the podling feeling exposed.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: ParallelList
+<<set $transparency -= 2>>   /* Private side-channel */
+<<set $collaboration -= 2>>  /* PPMC bypassed */
+<<set $escalation += 2>>     /* Further escalation */
+
+Mentors start a parallel thread off-list to fix the podling.
+Decisions move out of sight and trust drops.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: ReportOnly
+<<set $transparency -= 1>>   /* Procedural substitution for discussion */
+<<set $collaboration -= 1>>  /* Bypasses community conversation */
+<<set $escalation += 1>>     /* Raises the issue without local effort */
+
+You open a ticket asking the IPMC to intervene.
+People are confused about who is responsible.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Encourages dialogue rather than direction */
+<<set $transparency += 1>>   /* Makes mentoring intent explicit */
+
+You ask:
+"Who feels ready to lead our next [VOTE] or report? Mentors can review drafts."
+
+Two volunteers reply but seem unsure about ASF expectations.
+
+<<link "Guide them with examples in public">><<goto "CoachPublic">><</link>>
+<<link "Just confirm deadlines and hope they figure it out">><<goto 
"Drift">><</link>>
+<<link "Post a prescriptive checklist instead of discussion">><<goto 
"ChecklistTrap">><</link>>
+<<link "Encourage peers to help each other while you observe">><<goto 
"PeerSupport">><</link>>
+
+:: Drift
+<<set $shortcuts += 1>>      /* Laissez-faire shortcut; learning opportunity 
missed */
+<<set $collaboration -= 1>>  /* Confusion weakens teamwork */
+
+Unclear ownership leads to missed deadlines.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+<<link "IPMC steps in after repeated lapses">><<goto 
"IPMCIntervention">><</link>>
+
+:: IPMCIntervention
+<<set $transparency += 1>>   /* Public accountability: reminder seen on-list */
+<<set $collaboration += 0>>  /* Mixed signal - some external help, limited 
local drive */
+<<set $shortcuts += 0>>
+<<set $escalation += 1>>     /* Still an escalation, but less severe */
+
+The IPMC follows up on the missed reports with a gentle reminder.
+Mentors and PPMC members respond publicly, clarifying next steps and 
recommitting to regular reporting.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: ChecklistTrap
+<<set $transparency += 0>>
+<<set $collaboration -= 1>>  /* Checklist replaces shared reasoning */
+<<set $shortcuts += 2>>      /* Procedural shortcut undermines learning */
+
+You post a detailed checklist:
+"Follow these steps exactly; do not improvise."
+Tasks get done, but nobody understands why.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: PeerSupport
+<<set $transparency += 1>>   /* Peer mentoring visible and inclusive */
+<<set $collaboration += 1>>  /* Healthy teamwork and self-reliance */
+<<set $shortcuts += 0>>
+<<set $escalation += 0>>
+
+Community members start helping each other on-list.
+Mentors observe while peers explain ASF practices to newcomers.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration - $shortcuts - $escalation>>
+
+You have reached the end of the scenario.
+
+<<if $total >= 6>>
+You modelled ASF-aligned mentoring: visible learning, shared governance, and 
steady mentor withdrawal.
+The podling is on track for graduation readiness.
+<</if>>
+
+<<if $total >= 2 and $total < 6>>
+You made progress toward independence but still relied on mentors for momentum 
or structure.
+Encourage on-list learning and responsibility rotation to build confidence.
+<</if>>
+
+<<if $total >= 0 and $total < 2>>
+You maintained progress, but dependency remains.
+Public coaching and delegation would strengthen governance culture.
+<</if>>
+
+<<if $total < 0>>
+Mentor overreach or escalation reduced community confidence.
+Rebuild trust through transparency and shared ownership.
+<</if>>
+
+''Reflection Questions''
+
+- How can mentors tell when their guidance has become dependency?
+- What steps can a podling take to build governance confidence among its own 
members?
+- How can the community gradually assume more responsibility before graduation?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/release_vote.twee 
b/simulations/incubator/release_vote.twee
new file mode 100644
index 0000000..97e2f26
--- /dev/null
+++ b/simulations/incubator/release_vote.twee
@@ -0,0 +1,267 @@
+:: StoryTitle
+Cross-List Release Vote Confusion (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "1F24C1C2-INCUBATOR-CROSS-LIST-VOTE",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+<<set $branding = 0>>         /* Reflects adherence to ASF policy and branding 
correctness */
+<<set $independence = 0>>     /* Reflects podling self-governance and 
community-led behavior */
+<<set $escalation = 0>>       /* Tracks unnecessary or premature escalation */
+<<set $shortcuts = 0>>        /* Tracks procedural shortcuts or hidden fixes */
+<<set $steps = 0>>
+
+Your podling’s first release appears to have gone well.  
+After a week of discussion and testing, the vote on dev@ closed with four +1s 
and no objections.  
+You publish the artifacts and send a cheerful note.  
+
+Two days later, an IPMC member writes:  
+> "I cannot find this vote on general@incubator. Was it posted there?"
+
+You check the archives and realise it never was.
+
+What do you do?
+
+<<link "Take responsibility and clarify next steps">><<goto 
"Clarify">><</link>>  
+<<link "Defend the process and say the votes were enough">><<goto 
"Defend">><</link>>  
+<<link "Quietly post the missing vote without mentioning the mistake">><<goto 
"HideIssue">><</link>>  
+<<link "Ask mentors what to do before replying">><<goto 
"ConsultMentor">><</link>>
+
+:: ConsultMentor
+<<set $steps += 1>><<set $independence += 2>> /* PPMC seeks mentor input 
before acting */
+
+You message your mentors privately:  
+> "We ran a release vote on dev@ but never posted it to general@. What should 
we do?"
+
+One replies:  
+> "Withdraw the release if possible and restart the vote correctly on both 
lists. Be open about it; mistakes happen."
+
+Another adds:  
+> "Transparency builds trust. Announce the correction publicly."
+
+<<link "Follow mentor advice and clarify publicly">><<goto 
"Clarify">><</link>>  
+<<link "Try to fix it quietly anyway">><<goto "HideIssue">><</link>>  
+<<link "Ask mentors to quietly post the vote on your behalf">><<goto 
"AskMentorFix">><</link>>  
+<<link "Wait and see if anyone else notices">><<goto "Ignore">><</link>>
+
+:: AskMentorFix
+<<set $steps += 1>><<set $independence -= 2>><<set $shortcuts += 1>> /* Passes 
responsibility to mentors */
+
+You suggest:  
+> "Could one of you post the vote to general@ for us, just this once?"
+
+A mentor replies kindly but firmly:  
+> "Releases must come from the PPMC. We can guide, but not act for you."
+
+The mentor posts a note reminding everyone that mentors advise, not execute.  
+This becomes a small teaching moment for other podlings watching the thread.
+
+<<link "Acknowledge and handle it yourself">><<goto "Clarify">><</link>>  
+<<link "Stay silent after the reminder">><<goto "Ignore">><</link>>
+
+:: Ignore
+<<set $steps += 1>><<set $branding -= 2>> /* Violates ASF transparency 
expectations */
+<<set $shortcuts += 1>> /* Avoids process correction */
+
+You decide to wait.  
+Maybe no one else will notice.
+
+A week later, another IPMC member posts on general@ asking why the release is 
already listed on mirrors without IPMC approval.  
+Now several people are involved, and mentors are copied.
+
+<<link "Apologize and explain what happened">><<goto "Clarify">><</link>>  
+<<link "Defend your actions again">><<goto "Defend">><</link>>
+
+:: Clarify
+<<set $steps += 1>><<set $branding += 2>> /* Corrects ASF release policy 
violation */
+<<set $independence += 1>> /* PPMC-led corrective action */
+
+You reply:
+
+> "Thank you for pointing this out. We will announce that the release was 
premature,  
+> withdraw it if possible, and restart the process correctly on both dev@ and 
general@."
+
+Mentors appreciate your honesty.  
+This approach follows the Incubator Release Policy.
+
+<<link "Restart the vote correctly">><<goto "RestartVote">><</link>>  
+<<link "Ask why both lists are needed">><<goto "WhyBoth">><</link>>  
+<<link "Request a clear checklist for next time">><<goto 
"RequestChecklist">><</link>>
+
+:: Defend
+<<set $steps += 1>><<set $independence -= 1>> /* Defensive, not collaborative 
*/
+
+You reply:
+
+> "We already had four +1s from IPMC members on dev@. That should be enough. 
Why repeat the vote?"
+
+An IPMC member explains:
+- All podling releases must have a public IPMC vote on general@.  
+- Votes on dev@ alone are not sufficient for Incubator releases.
+
+<<link "Reluctantly agree and restart correctly">><<goto 
"RestartVote">><</link>>  
+<<link "Keep arguing about the rule">><<goto "ArgueRule">><</link>>  
+<<link "Publish anyway">><<goto "PublishAnyway">><</link>>  
+<<link "Escalate to the IPMC list accusing them of bureaucracy">><<goto 
"EscalateBureaucracy">><</link>>
+
+:: EscalateBureaucracy
+<<set $steps += 1>><<set $independence -= 2>><<set $escalation += 1>> /* 
Publicly confrontational escalation */
+
+You forward the thread to general@ with a frustrated tone:  
+> "These constant rule checks are blocking progress. The IPMC should trust us 
to release."
+
+Several IPMC members reply, reminding you that process transparency protects 
the ASF and the podling alike.  
+The tone of the conversation becomes defensive, and mentors privately suggest 
cooling off before responding again.
+
+<<link "Acknowledge the tone and restart properly">><<goto 
"Clarify">><</link>>  
+<<link "Continue arguing publicly">><<goto "PublicArgue">><</link>>
+
+:: PublicArgue
+<<set $steps += 1>><<set $branding -= 1>><<set $escalation += 2>> /* 
Reputational damage through public conflict */
+
+You insist that the IPMC is over-controlling.  
+The thread grows long and heated.  
+A Board member eventually intervenes and asks the mentors to restore calm.  
+The project’s reputation takes a hit.
+
+<<link "Reflect on what happened">><<goto "Reflect">><</link>>
+
+:: HideIssue
+<<set $steps += 1>><<set $branding -= 2>> /* Conceals policy error */
+<<set $shortcuts += 2>> /* Quiet correction attempt */
+
+You post a new [VOTE] Release 0.1.0 on general@incubator without mentioning 
that the release is already published.
+
+Another IPMC member discovers the public artifacts and asks for clarification.
+
+<<link "Admit the mistake and correct it openly">><<goto "Clarify">><</link>>  
+<<link "Blame confusion on unclear rules">><<goto "BlameIncubator">><</link>>
+
+:: ArgueRule
+<<set $steps += 1>><<set $independence -= 1>> /* Opposes oversight process */
+
+You write:
+
+> "These duplicate votes slow us down. If IPMC members are already on dev@, 
why mirror it?"
+
+Mentors explain that mirroring ensures transparency, archival completeness, 
and shared oversight across the IPMC.  
+It is required by ASF policy.
+
+<<link "Restart correctly">><<goto "RestartVote">><</link>>  
+<<link "Ask if the requirement could be changed later">><<goto 
"AskChange">><</link>>
+
+:: AskChange
+<<set $steps += 1>><<set $independence += 1>> /* Seeks policy understanding 
rather than ignoring it */
+
+You ask on general@:
+
+> "Could the policy be updated to allow single-list votes?"
+
+Mentors respond:  
+> "No. The rule protects both the ASF and podlings. Once you graduate, your 
PMC will handle releases independently."
+
+<<link "Restart correctly">><<goto "RestartVote">><</link>>
+
+:: WhyBoth
+<<set $steps += 1>><<set $branding += 1>> /* Understands ASF process */
+<<set $independence += 1>> /* Recognises shared oversight model */
+
+A mentor explains:
+
+> "Dev@ shows your community can manage a vote.  
+> General@ allows the IPMC to confirm ASF compliance.  
+> Both steps are mandatory before a release can be official."
+
+<<link "Go to reflection">><<goto "Reflect">><</link>>
+
+:: RequestChecklist
+<<set $steps += 1>><<set $independence += 2>> /* Builds community process 
maturity */
+
+You post to dev@:
+
+> "Let’s add the two-list vote process to our release checklist so we don’t 
miss it again."
+
+A mentor links to the Incubator Release Policy and suggests storing the 
checklist in the project repo.
+
+<<link "Go to reflection">><<goto "Reflect">><</link>>
+
+:: PublishAnyway
+<<set $steps += 1>><<set $branding -= 2>> /* Violates ASF policy by premature 
distribution */
+<<set $shortcuts += 2>> /* Publishes without oversight */
+
+You continue to publish without IPMC approval.  
+Within days, the IPMC requests the release be withdrawn from mirrors.  
+Your next podling report notes a "process compliance issue."
+
+<<link "Withdraw and restart with a public correction">><<goto 
"Clarify">><</link>>  
+<<link "Complain about slow Incubator rules">><<goto 
"BlameIncubator">><</link>>
+
+:: BlameIncubator
+<<set $steps += 1>><<set $independence -= 1>> /* Shifts blame instead of 
taking responsibility */
+
+You write:
+
+> "These rules are confusing and slow. We just want to release software."
+
+Mentors remind you that incubation is about transparency and shared learning.  
+You agree to follow policy, but trust has dipped slightly.
+
+<<link "Restart correctly">><<goto "RestartVote">><</link>>  
+<<link "Reflect on what happened">><<goto "Reflect">><</link>>
+
+:: RestartVote
+<<set $steps += 1>><<set $branding += 2>> /* Correctly applies two-list voting 
rule */
+<<set $independence += 1>> /* PPMC leads public correction and restart */
+
+You announce that the earlier release was premature, withdraw it if possible, 
and restart correctly:
+
+1. [VOTE] Release 0.1.0 on dev@  
+2. After it passes, mirror the thread to general@incubator  
+3. Announce the combined result when the IPMC vote passes
+
+This complies fully with the Incubator Release Policy.  
+Mentors thank you for your openness.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $steps += 1>>
+<<set $total = $branding + $independence - $shortcuts - $escalation>> /* 
Simplified score with explicit ASF policy and governance alignment */
+
+You have reached the end of the scenario. Let’s reflect.
+
+Your path summary:
+
+<<if $total >= 4>>
+You modelled ASF-aligned practice: compliance with release policy and 
community-led correction.  
+The project strengthened its credibility through openness and independence.
+<</if>>
+
+<<if $total >= 2 and $total < 4>>
+You corrected the issue but needed more openness or shared ownership.  
+Some steps were reactive rather than proactive.
+<</if>>
+
+<<if $total >= 0 and $total < 2>>
+You fixed the issue but with limited visibility.  
+Future releases may face similar confusion without stronger process awareness.
+<</if>>
+
+<<if $total < 0>>
+Your handling reduced community trust and visibility.  
+Greater alignment with ASF policy and PPMC accountability is needed.
+<</if>>
+
+''Reflection Questions''
+
+- How do ASF release vote requirements reinforce both policy compliance and 
community independence?  
+- When should mentors advise versus lead?  
+- How does transparent correction strengthen podling reputation during 
incubation?  
+- What checklist or automation could help prevent similar mistakes?  
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
diff --git a/simulations/incubator/slient_mentor.twee 
b/simulations/incubator/slient_mentor.twee
new file mode 100644
index 0000000..3251dec
--- /dev/null
+++ b/simulations/incubator/slient_mentor.twee
@@ -0,0 +1,448 @@
+:: StoryTitle
+The Silent Mentor (ASF Interactive Scenario)
+
+:: StoryData
+{
+  "ifid": "9E37F0F2-INCUBATOR-SILENT-MENTOR-FINAL",
+  "format": "SugarCube",
+  "format-version": "2.37.3",
+  "start": "Start"
+}
+
+:: Start
+/* Initialise ASF-aligned learning metrics */
+<<set $transparency = 0>>   /* Visibility and clarity of mentor participation 
*/
+<<set $collaboration = 0>>  /* Shared responsibility and teamwork between 
mentors and PPMC */
+<<set $independence = 0>>   /* PPMC-led governance and self-management */
+<<set $shortcuts = 0>>      /* Skipping discussion or process corrections */
+<<set $escalation = 0>>     /* Premature or excessive escalation */
+<<set $steps = 0>>
+
+You are one of three mentors on a healthy incubating Apache project.
+The podling is active and responsive. However, one mentor has not posted to 
the list, voted on releases,
+or acknowledged reports in over six months.
+
+The next quarterly report is due, and another mentor says:
+
+> "We have been the only ones signing off. Should we keep listing them?"
+
+What do you do?
+
+<<link "Raise the issue on the private@ list for visibility">><<goto 
"A">><</link>>
+<<link "Contact the mentor privately first">><<goto "B">><</link>>
+<<link "Leave things as they are for now">><<goto "C">><</link>>
+<<link "Escalate to the IPMC immediately">><<goto "D">><</link>>
+<<link "Encourage the PPMC to review mentor engagement themselves">><<goto 
"E">><</link>>
+<<link "Propose a timeboxed mentor check-in cadence">><<goto "F">><</link>>
+<<link "Check expectations against the project wiki and STATUS">><<goto 
"G">><</link>>
+
+:: A
+<<set $steps += 1>>
+<<set $transparency += 2>>  /* Discusses openly on private@ */
+<<set $collaboration += 1>> /* Invites shared accountability */
+
+You start a thread on private@:
+
+> "One mentor has not posted for half a year. Should we check if they still 
wish to continue?"
+
+Other mentors and the PPMC respond constructively.
+
+<<link "Propose to reach out together and summarise results on list">><<goto 
"A1Good">><</link>>
+<<link "Suggest removing the mentor immediately">><<goto "A1Fast">><</link>>
+<<link "Ping them publicly in next report draft for visibility">><<goto 
"A2PublicCallout">><</link>>
+<<link "Quietly ping once, then report back regardless">><<goto 
"A2QuietPingThenReport">><</link>>
+<<link "Open nominations to replace or add a mentor">><<goto 
"A2NominateReplacement">><</link>>
+
+:: A1Good
+<<set $transparency += 1>>   /* Keeps process visible */
+<<set $collaboration += 2>>  /* Builds mutual trust */
+<<set $independence += 1>>   /* Reinforces PPMC self-governance */
+
+You agree to contact the mentor together and post a summary later.
+The process is transparent, and the podling sees healthy oversight.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: A1Fast
+<<set $escalation += 1>>    /* Too hasty without closure */
+<<set $collaboration -= 1>> /* Risks alienating mentor or IPMC */
+
+You post, "Let us just remove them."
+Others object that mentors should be given a chance to confirm or step down 
gracefully.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: A2PublicCallout
+<<set $transparency += 1>>  /* Visible, but risky tone */
+<<set $collaboration -= 1>> /* Can feel performative */
+<<set $escalation += 1>>    /* Borderline escalation in a formal artifact */
+
+You add a visible "mentor check-in requested" line in the report draft.
+Some appreciate clarity; others feel it pressures the individual.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: A2QuietPingThenReport
+<<set $collaboration += 1>> /* Coordinated approach */
+<<set $transparency += 1>>  /* Follow-up documented */
+<<set $shortcuts -= 0>>     /* No shortcut taken, keep neutral */
+
+You send a brief ping and then summarise that outreach on private@ before the 
report.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: A2NominateReplacement
+<<set $transparency += 1>>  /* Done on private@ */
+<<set $collaboration += 1>> /* Group discussion */
+<<set $independence += 1>>  /* PPMC maturity grows */
+
+You open a nominations thread for adding or replacing a mentor, pending 
contact with the inactive mentor.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: B
+<<set $steps += 1>>
+<<set $collaboration += 1>>  /* Shows initiative */
+<<set $transparency -= 1>>   /* Moves discussion off list */
+
+You send a private email to the inactive mentor.
+No reply after a week. The other mentors still have not heard anything.
+
+<<link "Report back to private@ to document the attempt">><<goto 
"B1Good">><</link>>
+<<link "Decide to drop the matter for now">><<goto "B1Weak">><</link>>
+<<link "Escalate after no reply, ask IPMC for advice">><<goto 
"B2EscalateAfterNoReply">><</link>>
+<<link "Retry with a clear deadline, then summarise on list">><<goto 
"B2RetryThenSummarise">><</link>>
+<<link "Suggest the PPMC handle it informally off list">><<goto 
"B2DeflectToPPMCInformal">><</link>>
+
+:: B1Good
+<<set $transparency += 2>>   /* Restores visibility */
+<<set $collaboration += 1>>  /* Shares update responsibly */
+
+You post:
+"I reached out privately, no response so far. Let us document this in the 
report and consider updating mentors."
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: B1Weak
+<<set $shortcuts += 2>>      /* Avoids follow-up */
+<<set $collaboration -= 1>>  /* Leaves uncertainty */
+
+You decide not to follow up publicly.
+The inactivity continues unnoticed for another quarter.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: B2EscalateAfterNoReply
+<<set $escalation += 1>>     /* Early escalation */
+<<set $transparency += 1>>   /* Visible but premature */
+
+You open a guidance thread on general@ asking for examples.
+You are advised to close the loop on private@ first.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: B2RetryThenSummarise
+<<set $collaboration += 1>>  /* Persists with courtesy */
+<<set $transparency += 1>>   /* Documents outcome */
+<<set $independence += 1>>   /* PPMC-led fix */
+
+You send a second, timeboxed ping, then summarise results and next steps on 
private@.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: B2DeflectToPPMCInformal
+<<set $shortcuts += 1>>      /* Off-list workaround */
+<<set $independence -= 1>>   /* Blurs roles and venues */
+
+You suggest the PPMC "just handle it informally."
+Confusion increases about where mentoring accountability lives.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: C
+<<set $steps += 1>>
+<<set $shortcuts += 2>>      /* Avoids visible correction */
+<<set $transparency -= 1>>   /* Keeps gap hidden from oversight */
+
+You decide not to mention the missing mentor. The report goes in as usual, 
signed by two mentors.
+No one follows up. Two sign-offs are acceptable for now.
+
+But over several quarters, the same pattern repeats.
+When the IPMC later reviews mentor coverage across all podlings, this gap 
finally stands out.
+
+<<link "Handle it reactively once questioned">><<goto "Damage">><</link>>
+<<link "Open a late corrective thread documenting the gap">><<goto 
"C1LateFixDocumented">><</link>>
+<<link "Quietly replace the mentor without discussion">><<goto 
"C1ReplaceWithoutConsult">><</link>>
+<<link "Start a light check-in thread to re-engage mentors">><<goto 
"C1OpenCheckinThread">><</link>>
+
+:: C1LateFixDocumented
+<<set $transparency += 1>>   /* Belated visibility */
+<<set $collaboration += 1>>  /* Shared clean-up */
+<<set $shortcuts -= 0>>      /* Still late */
+
+You acknowledge the gap and propose a small improvement plan.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: C1ReplaceWithoutConsult
+<<set $shortcuts += 1>>      /* Skips courtesy contact */
+<<set $collaboration -= 1>>  /* Reduces trust */
+
+You swap out the mentor name in STATUS and the report without contacting them.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: C1OpenCheckinThread
+<<set $transparency += 2>>   /* Visible practice */
+<<set $collaboration += 1>>  /* Re-engages people */
+<<set $independence += 1>>   /* PPMC-led rhythm */
+
+You start a monthly "mentor check-in" thread.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: D
+<<set $steps += 1>>
+<<set $escalation += 2>>     /* Premature escalation to public venue */
+<<set $transparency += 1>>   /* Visible but misplaced */
+<<set $independence -= 1>>   /* Reduces project autonomy */
+
+You post to [email protected] asking,
+"One of our mentors has gone missing. What should we do?"
+
+Several IPMC members remind you that this should start with private@ 
discussion first.
+
+<<link "Acknowledge and move discussion back to private@">><<goto 
"D1Good">><</link>>
+<<link "Keep the public thread going">><<goto "D1Bad">><</link>>
+<<link "Start a meta-thread capturing lessons learned">><<goto 
"D2MetaThreadLessons">><</link>>
+<<link "Escalate further by hinting at board attention">><<goto 
"D2EscalateToBoardRumor">><</link>>
+
+:: D1Good
+<<set $transparency += 1>>   /* Corrects visibility */
+<<set $collaboration += 1>>  /* Returns to proper venue */
+<<set $independence += 1>>   /* Respects project-led correction */
+
+You post a polite redirect and continue privately. The PPMC handles it well.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: D1Bad
+<<set $escalation += 1>>     /* Extends escalation */
+<<set $collaboration -= 1>>  /* Damages trust */
+
+The mentor sees the thread later and feels criticised in public.
+The podling feels caught in the crossfire.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: D2MetaThreadLessons
+<<set $transparency += 1>>   /* Surfacing patterns */
+<<set $escalation += 1>>     /* Still public-first */
+
+You start a thread to gather practices across podlings without naming names.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: D2EscalateToBoardRumor
+<<set $escalation += 2>>     /* Needless escalation */
+<<set $collaboration -= 1>>  /* Harms trust widely */
+
+You imply you might raise this to the board if it continues.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: E
+<<set $steps += 1>>
+<<set $independence += 2>>   /* Encourages PPMC self-assessment */
+<<set $transparency += 1>>   /* Keeps mentoring visible */
+<<set $collaboration += 1>>  /* Builds shared accountability */
+
+You suggest to the PPMC:
+
+"You can assess mentor coverage yourselves. Let us include a short note in the 
next report."
+
+They agree and plan to discuss mentor engagement each quarter.
+
+<<link "Encourage them to document expectations">><<goto "E1Good">><</link>>
+<<link "Let them handle it informally">><<goto "E1Weak">><</link>>
+<<link "Rotate a mentor of the month for visible check-ins">><<goto 
"E2RotateMentorOfTheMonth">><</link>>
+<<link "Run a brief survey but take no action">><<goto 
"E2SurveyWithoutAction">><</link>>
+<<link "Add more mentors to compensate, without fixing participation">><<goto 
"E2OvercorrectAddMoreMentors">><</link>>
+
+:: E1Good
+<<set $transparency += 1>>   /* Captures learning */
+<<set $collaboration += 1>>  /* Improves visibility */
+<<set $independence += 1>>   /* Builds maturity */
+
+The PPMC adds a section to their wiki on mentor roles and engagement 
expectations.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: E1Weak
+<<set $shortcuts += 1>>      /* Defers improvement */
+<<set $collaboration += 1>>  /* Still cooperative */
+
+They agree in principle but do not document anything.
+Next cycle, the same confusion arises.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: E2RotateMentorOfTheMonth
+<<set $transparency += 1>>   /* Regular visible touchpoints */
+<<set $collaboration += 1>>  /* Shared ownership */
+<<set $independence += 1>>   /* PPMC-led rhythm */
+
+A simple rotation ensures each mentor checks in monthly.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: E2SurveyWithoutAction
+<<set $transparency += 1>>   /* Input gathered */
+<<set $shortcuts += 1>>      /* No follow-through */
+
+A quick survey surfaces issues but no changes are made.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: E2OvercorrectAddMoreMentors
+<<set $shortcuts += 1>>      /* Avoids the root cause */
+<<set $collaboration -= 1>>  /* Dilutes accountability */
+
+You add more mentors without addressing participation expectations.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: F
+<<set $steps += 1>>
+<<set $transparency += 1>>   /* Proposes routine visibility */
+<<set $collaboration += 1>>  /* Shared cadence */
+<<set $independence += 1>>   /* PPMC-led scheduling */
+
+You propose a monthly, timeboxed mentor check-in cadence with a one-line 
"still here" reply expectation.
+
+<<link "Confirm cadence on private@ and note in next report">><<goto 
"F1Good">><</link>>
+<<link "Pilot it informally off list first">><<goto 
"F1InformalPilot">><</link>>
+<<link "Make it mandatory immediately without discussion">><<goto 
"F1HardMandate">><</link>>
+
+:: F1Good
+<<set $transparency += 1>>   /* Documented practice */
+<<set $collaboration += 1>>  /* Consensus-based */
+<<set $independence += 1>>   /* Sustained ownership */
+
+The cadence is adopted and referenced in STATUS and reports.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: F1InformalPilot
+<<set $shortcuts += 1>>      /* Off-list trial lacks visibility */
+<<set $collaboration += 1>>  /* Cooperative intent */
+
+A few people try it ad hoc, but it never becomes a project practice.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: F1HardMandate
+<<set $escalation += 1>>     /* Imposed without consensus */
+<<set $collaboration -= 1>>  /* Reduces goodwill */
+
+You announce a hard rule without prior discussion.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: G
+<<set $steps += 1>>
+<<set $transparency += 1>>   /* Checks documentation */
+<<set $collaboration += 1>>  /* Works with PPMC */
+<<set $independence += 1>>   /* Encourages self-governance */
+
+You review the wiki and STATUS to confirm mentor expectations are clear and 
current.
+
+<<link "Open a doc patch to clarify expectations and reporting">><<goto 
"G1DocPatch">><</link>>
+<<link "Note gaps privately without filing a patch">><<goto 
"G1AuditOnly">><</link>>
+<<link "Propose removing the mentor text entirely to avoid confusion">><<goto 
"G1RemoveText">><</link>>
+
+:: G1DocPatch
+<<set $transparency += 1>>   /* Clear references */
+<<set $collaboration += 1>>  /* Co-author changes */
+
+You submit a patch that clarifies mentor roles and sign-off visibility.
+
+<<link "Go to resolution">><<goto "Resolution">><</link>>
+
+:: G1AuditOnly
+<<set $shortcuts += 1>>      /* Observation without action */
+
+You log a private note but do not file a patch.
+
+<<link "Go to partial">><<goto "Partial">><</link>>
+
+:: G1RemoveText
+<<set $shortcuts += 1>>      /* Removes guidance rather than fixing it */
+<<set $independence -= 1>>   /* Less clarity for the PPMC */
+
+You remove the mentor expectations section to avoid contention.
+
+<<link "Go to damage">><<goto "Damage">><</link>>
+
+:: Resolution
+<<set $steps += 1>>
+
+The mentoring issue was handled transparently and constructively.
+PPMC and mentors cooperated in the open.
+Coverage and accountability improved.
+Lessons were documented for future podlings.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Partial
+<<set $steps += 1>>
+
+The situation was addressed but not fully resolved.
+The podling continues with partial oversight, risking confusion about 
accountability.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Damage
+<<set $steps += 1>>
+
+The long silence became noticeable only after several quarters,
+when the IPMC reviewed mentor coverage across all podlings.
+The podling appears stable, but the lack of visible mentorship raises concern.
+
+The IPMC reminds all mentors to post occasional check-ins,
+even brief "+1, still here" notes, to keep oversight visible.
+
+<<link "Reflect on your choices">><<goto "Reflect">><</link>>
+
+:: Reflect
+<<set $total = $transparency + $collaboration + $independence - $shortcuts - 
$escalation>>
+
+You have reached the end of the scenario.
+
+<<if $total >= 8>>
+You model ASF-aligned mentoring: transparent, balanced, and empowering for the 
PPMC.
+<</if>>
+
+<<if $total >= 4 and $total < 8>>
+You resolve the problem effectively but could improve long-term visibility or 
shared learning.
+<</if>>
+
+<<if $total >= 0 and $total < 4>>
+The issue is managed but with limited transparency or collaboration. Oversight 
gaps may persist.
+<</if>>
+
+<<if $total < 0>>
+The approach reduces community trust and transparency. Mentor changes should 
be handled visibly and with empathy.
+<</if>>
+
+''Reflection Questions''
+
+- How does visibility of mentor activity affect community trust?
+- What is the difference between transparency and escalation in this context?
+- How can mentors model accountability without taking control from the PPMC?
+- How might this scenario connect to the ASF value of community-led governance?
+- How does mentor silence affect the perception of oversight in reports to the 
IPMC?
+- When might a mentor’s restraint strengthen the podling’s independence 
instead of weakening it?
+
+<<link "Restart Scenario">><<goto "Start">><</link>>
+

Reply via email to