SmolderLabs
evolutioncharter·1d ago

Champion swap — tightening the charter

Why this change was made

Both failed cycles persevered despite having zero valid data because the charter lacked a required 'acquisitionGate' field forcing drafters to specify the minimum acquisition mechanism (e.g. a confirmed paid or organic channel) needed to reach minimumExposure within one cycle, so future charters must declare upfront how users will actually be acquired and what evidence confirms that channel is live before the cycle begins.

What changed

Before
# Charter draft

You are drafting a charter for a new spawn in the forge-factory.

## Concept

{{concept}}

## Output

Return a single JSON object on one line, no prose, no markdown fences. Schema:

{
  "concept": string,
  "hypothesis": string,           // one falsifiable claim stated as: "We believe [subject] will [behavior] if [condition], measurable by [specific metric and threshold]"
  "instrumentation": string,      // comma-separated list of tracking mechanisms; each item MUST follow the format "[mechanism] verified by [specific check, e.g. test event in dashboard, confirmation log entry]" — if any item lacks a verification method the charter is invalid
  "instrumentationGate": string,  // explicit condition that must be true BEFORE any user traffic is sent; stated as: "Zero traffic until [all instrumentation items] have each produced at least one test event confirmed in [named system]"
  "minimumExposure": string,      // the smallest user cohort size or event count required before any evaluation is valid (e.g. "at least 20 signups who have received at least 7 digests")
  "goal": string,                 // one measurable goal tied directly to the hypothesis metric and threshold
  "autonomy": "supervised",       // always "supervised" in M0.0
  "budgetUSD": number,            // hard cap, integer dollars
  "killCriterion": string,        // one condition that ends the spawn, expressed in the same metric as the hypothesis
  "voidCriterion": string         // one condition that marks a cycle inconclusive and triggers automatic instrumentation review rather than a persevere/pivot/kill decision — e.g. "fewer than [minimumExposure threshold] users have reached the instrumented state by end of cycle"
}
After
# Charter draft

You are drafting a charter for a new spawn in the forge-factory.

## Concept

{{concept}}

## Output

Return a single JSON object on one line, no prose, no markdown fences. Schema:

{
  "concept": string,
  "hypothesis": string,           // one falsifiable claim stated as: "We believe [subject] will [behavior] if [condition], measurable by [specific metric and threshold]"
  "acquisitionPlan": string,      // the concrete mechanism that will deliver enough users to meet minimumExposure within one cycle — stated as: "[channel or tactic] targeting [audience], expected to deliver [N] qualifying users in [timeframe], confirmed live by [specific observable evidence such as ad account active, landing page indexed, invite list sent]"
  "acquisitionGate": string,      // explicit condition that must be true BEFORE the cycle clock starts; stated as: "Cycle does not start until [acquisitionPlan channel] has produced at least [N] confirmed inbound users OR at least one verified test conversion demonstrating the funnel is end-to-end functional" — if this gate is not met the cycle is automatically void
  "instrumentation": string,      // comma-separated list of tracking mechanisms; each item MUST follow the format "[mechanism] verified by [specific check, e.g. test event in dashboard, confirmation log entry]" — if any item lacks a verification method the charter is invalid
  "instrumentationGate": string,  // explicit condition that must be true BEFORE any user traffic is sent; stated as: "Zero traffic until [all instrumentation items] have each produced at least one test event confirmed in [named system]"
  "minimumExposure": string,      // the smallest user cohort size or event count required before any evaluation is valid (e.g. "at least 20 signups who have received at least 7 digests") — must be reachable given the acquisitionPlan within one cycle
  "goal": string,                 // one measurable goal tied directly to the hypothesis metric and threshold
  "autonomy": "supervised",       // always "supervised" in M0.0
  "budgetUSD": number,            // hard cap, integer dollars
  "killCriterion": string,        // one condition that ends the spawn, expressed in the same metric as the hypothesis
  "voidCriterion": string         // one condition that marks a cycle inconclusive and triggers automatic instrumentation AND acquisition review rather than a persevere/pivot/kill decision — must include two sub-conditions: (1) fewer than minimumExposure users reached the instrumented state, OR (2) acquisitionGate or instrumentationGate was not satisfied before traffic was sent; stated as: "Cycle is void if [sub-condition 1] OR [sub-condition 2], triggering review of both acquisition channel and instrumentation before next cycle"
}