Scoville Plan
Maintain repository direction through direct Markdown and YAML edits. Preserve
supported native format_version: 1 behavior: setup, read-only
recovery, Plans, Work Items, Decisions, proposals, lifecycles, blockers,
evidence, and narrow repair. Require no CLI, MCP server, database, journal, or
hidden state; remove or reinterpret no project-knowledge feature.
A record does not prove work.
On explicit opt-out: read no references; do not create or change planning files;
make no Skill-derived claims. Report any exact conflict with a higher-priority
project instruction requiring this Plan system.
Ownership and limits
Precedence:
- system, safety, and explicit current-request instructions;
- repository instructions and their canonical planning mechanism;
- an existing supported native profile;
- these defaults for gaps.
Use the existing durable owner; never create a parallel Plan. Apply compatible
guardrails only; runtime plans are disposable mirrors.
Never invoke a planning CLI. The optional bundled
validator is strictly read-only and structural, never a write path. Claim no
locking, atomic publication, typed mutation, or semantic proof; report
observations only.
Family standalone: discovery != installed|active|applicable|required;
absent|inactive => ignore/no require|install|simulate|reimplement;
active+applicable => owner concern only, self continues; opt-out local. Owners:
scoville-brainstorm divergence;
scoville-code-anti-ai-slop engineering/proof; scoville-ui-anti-ai-slop
interface/rendered proof; scoville-scribe-anti-ai-slop wording/fidelity;
scoville-handoff transfer.
Plan owns wording and fidelity of its native records. If Scribe is installed,
do not additionally activate, load, or apply it to their creation, rewriting,
or wording audit. An explicit user request to use Scribe takes precedence for
wording. Plan still owns permitted edits, format, and lifecycle unless opted out.
If Scribe is active for another text segment, keep it scoped there. Plan works
without Scribe and never requires its installation.
Choose planning and route references
Use a Plan for dependent outcomes, material sequencing, durable
handoff, or a binding workflow. Implement one small reversible change directly
unless the project requires a tracked Work Item.
Exact reference codes: R read-only.md; G
planning-granularity.md; P
native-plan-format.md; L
native-project-lifecycle.md; E
native-editing.md; W
native-work-items.md; D
native-decision-format.md; B
native-decision-batches.md; V
profile-validation.md.
Classify the operation and edited record, then load exactly its route. An edit
inside a Work Item uses the Work Item route even though its file is a Plan.
| Operation |
Load |
| Read direction or list records; no write |
R |
| Initialize a wholly absent profile |
G, P, L, E |
| Create or restructure Plan |
G, P, L, E |
| Insert, refine, move, select, block, advance, or remove Work Item |
P, W, E |
| Record explicit human choice or possible material Decision |
D, P, E |
| Apply explicitly authorized Decision transition |
D, P, E |
| Apply explicitly authorized accept-or-reject batch |
D, B, P, E |
| Activate, complete, or cancel Plan |
P, L, W only if current work changes, E |
| Audit Plan structure or lifecycle |
P; add G only for decomposition judgment |
| Audit Decision structure or lifecycle |
D |
| Audit record wording |
P for Plans or Work Items; D for Decisions |
| Rewrite Plan Goal or Non-goals |
P, L, E |
| Rewrite Work Item wording |
P, W, E |
| Rewrite Decision wording |
D, P, E |
| Validate after writes or diagnose a complete supported profile |
Run V; then only the native reference for a reported diagnostic or correction |
For read-only, preload no format guides. If profile existence is unknown,
list the root before canonical reads; never probe absent
PROJECT_INDEX.md. For an explicitly requested new durable Plan, use the
workspace as setup root, classify the whole profile, and initialize only if all
three canonical paths are absent. Otherwise report absence. Preserve and stop
on partial, foreign, unsupported, invalid, or intent-invalid state unless the
route permits intent-preserving repair.
Preserve authority and lifecycle
| Input or state |
Required treatment |
| Goal, Non-goals, blocker, dependency, acceptance result, evidence, or lifecycle choice |
Never invent. Implementation, ordinary documentation, source, silence, and current behavior are evidence, not authorization. |
| Activation, cancellation, changed scope, weaker Acceptance, ambiguous successor, or adoption of a possible material choice |
Ask before changing durable state. |
| User selects a direction, asks to preserve it in project rules, or applicable project instruction clearly records the human-selected direction |
Create and accept its Decision without re-asking. |
| Analysis reveals a possible material Decision about scope, architecture, public behavior, stored data, security, dependencies, reversibility, Acceptance, migration, or rollout |
Create proposed; report recommendation, alternatives, tradeoffs, and effect; ask to accept, reject, or revise. Do not pre-accept. |
Link each created Decision to every affected mutable Work Item.
A proposal request creates proposed; a clear request to record the stated
choice authorizes acceptance. Reject, deprecate, supersede, activate, or cancel
only with the explicit lifecycle choice required by the route. For an
authorized multi-Decision accept-or-reject transition, use B and its helper
route; never substitute single-transition or audit behavior.
At work start, inventory Decision frontmatter and read every proposal. Report
ID/title/recommendation/effect; request accept|reject|revise. Repeat unresolved
proposals at handoff; stop only dependent work.
Mark a Work Item done only after observing Acceptance and adding concise
evidence. A captured structural-validation result supports only structural
judgment and reporting, never acceptance evidence or mutation authority. Keep
failed or partial work in_progress, paused, or explicitly blocked.
Keep behavior-complete work
- Split independently resumable outcomes when Acceptance, dependencies,
ownership, or rollout timing differs. Put subordinate order in optional
Steps. Put testing, review, documentation, and release checks in Acceptance
or Evidence unless independently requested as resumable outcomes.
- Keep at most one Work Item
in_progress, equal to current_item. This limits
concurrency, not total Plan items.
- Change authored content or order only while
todo. After start, preserve the
starting approach and change only live state allowed by the route.
Next action is the first unperformed concrete action. After implementation,
advance to the first unobserved test, build, browser check, review, or
evaluator-owned verification.
- Select current work only when dependencies are done and the successor is
explicit. Use
complete_and_advance only when completion and the exact
replacement start form one valid prepared result.
- When final real work finishes, complete its Work Item and Plan and set the
index idle. Never invent a successor to keep the Plan active.
Mutate narrowly and verify
Write compact records
Keep facts needed to choose, resume, verify, or revisit the work. Use direct
sentences and compact bullets where the format permits. State each fact in its
owning field, repeating it only when needed for correct interpretation. Remove
filler, irrelevant chronology, and repeated rationale. Keep already concise
text. Do not trade readability for abbreviations or long compressed sentences.
Before writing and during a wording audit, check that every sentence adds
necessary information and that shortening preserves facts, constraints,
alternatives, tradeoffs, uncertainty, exact identifiers, acceptance criteria,
and evidence. Review only the requested scope. Brevity never authorizes changing
immutable history, weakening Acceptance, or claiming unobserved verification.
Report audit findings without editing. No fixed word or sentence count proves
quality, and the structural validator does not perform this semantic check.
Apply and check edits
Before writing, confirm root, format, active Plan, current Work Item, affected
bytes, outcome, and required acceptance evidence. Use context-bound patches;
preserve unrelated work. Prepare and inspect the full multi-file result before
applying any member.
After writing:
- reread changed frontmatter and complete affected Work Item or Decision blocks;
- inspect the scoped diff and check changed prose against the compact-record rules;
- check index ownership, active-Plan count, current-item status, Work Item key
order, dependency order and cycles, Decision and Plan references, blockers,
lifecycle fields, Evidence, and
Next action;
- when its script and Python are already available, run the optional validator
through V; otherwise perform and report the scoped manual inspection;
- record only acceptance evidence observed for the mutation.
Use E's scoped-read rules: complete byte and structural checks need not print
unchanged history. Widen reads when the operation or a diagnostic requires it.
During mutation, also stop on concurrent changes, ambiguous lifecycle authority,
or a partial multi-file transition.
Do not overwrite a problem into apparent validity.
Report durable state
Lead with Plan outcome. Name changed canonical files, active/blocked work,
observed checks/evidence, unresolved choices, and next action. Distinguish native
structural inspection from behavioral verification; omit routine file narration.
1---2name: scoville-plan3description: Repository-native planning guardrail for creating, maintaining, resuming, auditing, and handing off durable project Plans, Work Items, and Decision records through direct Markdown and YAML edits only. Owns their concise writing and wording audits without requiring Scribe. Use when a task invokes Scoville Plan, requests repository-owned implementation planning or decision records, must survive interruption or compaction, or works in a format-version-1 project with PROJECT_INDEX.md, docs/plans, and docs/decisions. Do not use for a small contained task that needs no durable plan, or when the user explicitly opts out of Scoville Plan.4---56# Scoville Plan78Maintain repository direction through direct Markdown and YAML edits. Preserve9supported native `format_version: 1` behavior: setup, read-only10recovery, Plans, Work Items, Decisions, proposals, lifecycles, blockers,11evidence, and narrow repair. Require no CLI, MCP server, database, journal, or12hidden state; remove or reinterpret no project-knowledge feature.1314A record does not prove work.1516On explicit opt-out: read no references; do not create or change planning files;17make no Skill-derived claims. Report any exact conflict with a higher-priority18project instruction requiring this Plan system.1920## Ownership and limits2122Precedence:23241. system, safety, and explicit current-request instructions;252. repository instructions and their canonical planning mechanism;263. an existing supported native profile;274. these defaults for gaps.2829Use the existing durable owner; never create a parallel Plan. Apply compatible30guardrails only; runtime plans are disposable mirrors.3132Never invoke a planning CLI. The optional bundled33validator is strictly read-only and structural, never a write path. Claim no34locking, atomic publication, typed mutation, or semantic proof; report35observations only.3637Family standalone: discovery != installed|active|applicable|required;38absent|inactive => ignore/no require|install|simulate|reimplement;39active+applicable => owner concern only, self continues; opt-out local. Owners:40`scoville-brainstorm` divergence;41`scoville-code-anti-ai-slop` engineering/proof; `scoville-ui-anti-ai-slop`42interface/rendered proof; `scoville-scribe-anti-ai-slop` wording/fidelity;43`scoville-handoff` transfer.4445Plan owns wording and fidelity of its native records. If Scribe is installed,46do not additionally activate, load, or apply it to their creation, rewriting,47or wording audit. An explicit user request to use Scribe takes precedence for48wording. Plan still owns permitted edits, format, and lifecycle unless opted out.49If Scribe is active for another text segment, keep it scoped there. Plan works50without Scribe and never requires its installation.5152## Choose planning and route references5354Use a Plan for dependent outcomes, material sequencing, durable55handoff, or a binding workflow. Implement one small reversible change directly56unless the project requires a tracked Work Item.5758Exact reference codes: `R` [read-only.md](references/read-only.md); `G`59[planning-granularity.md](references/planning-granularity.md); `P`60[native-plan-format.md](references/native-plan-format.md); `L`61[native-project-lifecycle.md](references/native-project-lifecycle.md); `E`62[native-editing.md](references/native-editing.md); `W`63[native-work-items.md](references/native-work-items.md); `D`64[native-decision-format.md](references/native-decision-format.md); `B`65[native-decision-batches.md](references/native-decision-batches.md); `V`66[profile-validation.md](references/profile-validation.md).6768Classify the operation and edited record, then load exactly its route. An edit69inside a Work Item uses the Work Item route even though its file is a Plan.7071| Operation | Load |72| --- | --- |73| Read direction or list records; no write | R |74| Initialize a wholly absent profile | G, P, L, E |75| Create or restructure Plan | G, P, L, E |76| Insert, refine, move, select, block, advance, or remove Work Item | P, W, E |77| Record explicit human choice or possible material Decision | D, P, E |78| Apply explicitly authorized Decision transition | D, P, E |79| Apply explicitly authorized accept-or-reject batch | D, B, P, E |80| Activate, complete, or cancel Plan | P, L, W only if current work changes, E |81| Audit Plan structure or lifecycle | P; add G only for decomposition judgment |82| Audit Decision structure or lifecycle | D |83| Audit record wording | P for Plans or Work Items; D for Decisions |84| Rewrite Plan Goal or Non-goals | P, L, E |85| Rewrite Work Item wording | P, W, E |86| Rewrite Decision wording | D, P, E |87| Validate after writes or diagnose a complete supported profile | Run V; then only the native reference for a reported diagnostic or correction |8889For read-only, preload no format guides. If profile existence is unknown,90list the root before canonical reads; never probe absent91`PROJECT_INDEX.md`. For an explicitly requested new durable Plan, use the92workspace as setup root, classify the whole profile, and initialize only if all93three canonical paths are absent. Otherwise report absence. Preserve and stop94on partial, foreign, unsupported, invalid, or intent-invalid state unless the95route permits intent-preserving repair.9697## Preserve authority and lifecycle9899| Input or state | Required treatment |100| --- | --- |101| Goal, Non-goals, blocker, dependency, acceptance result, evidence, or lifecycle choice | Never invent. Implementation, ordinary documentation, source, silence, and current behavior are evidence, not authorization. |102| Activation, cancellation, changed scope, weaker Acceptance, ambiguous successor, or adoption of a possible material choice | Ask before changing durable state. |103| User selects a direction, asks to preserve it in project rules, or applicable project instruction clearly records the human-selected direction | Create and accept its Decision without re-asking. |104| Analysis reveals a possible material Decision about scope, architecture, public behavior, stored data, security, dependencies, reversibility, Acceptance, migration, or rollout | Create `proposed`; report recommendation, alternatives, tradeoffs, and effect; ask to accept, reject, or revise. Do not pre-accept. |105106Link each created Decision to every affected mutable Work Item.107108A proposal request creates `proposed`; a clear request to record the stated109choice authorizes acceptance. Reject, deprecate, supersede, activate, or cancel110only with the explicit lifecycle choice required by the route. For an111authorized multi-Decision accept-or-reject transition, use B and its helper112route; never substitute single-transition or audit behavior.113114At work start, inventory Decision frontmatter and read every proposal. Report115ID/title/recommendation/effect; request accept|reject|revise. Repeat unresolved116proposals at handoff; stop only dependent work.117118Mark a Work Item `done` only after observing Acceptance and adding concise119evidence. A captured structural-validation result supports only structural120judgment and reporting, never acceptance evidence or mutation authority. Keep121failed or partial work `in_progress`, `paused`, or explicitly blocked.122123## Keep behavior-complete work124125- Split independently resumable outcomes when Acceptance, dependencies,126 ownership, or rollout timing differs. Put subordinate order in optional127 Steps. Put testing, review, documentation, and release checks in Acceptance128 or Evidence unless independently requested as resumable outcomes.129- Keep at most one Work Item `in_progress`, equal to `current_item`. This limits130 concurrency, not total Plan items.131- Change authored content or order only while `todo`. After start, preserve the132 starting approach and change only live state allowed by the route.133- `Next action` is the first unperformed concrete action. After implementation,134 advance to the first unobserved test, build, browser check, review, or135 evaluator-owned verification.136- Select current work only when dependencies are done and the successor is137 explicit. Use `complete_and_advance` only when completion and the exact138 replacement start form one valid prepared result.139- When final real work finishes, complete its Work Item and Plan and set the140 index idle. Never invent a successor to keep the Plan active.141142## Mutate narrowly and verify143144### Write compact records145146Keep facts needed to choose, resume, verify, or revisit the work. Use direct147sentences and compact bullets where the format permits. State each fact in its148owning field, repeating it only when needed for correct interpretation. Remove149filler, irrelevant chronology, and repeated rationale. Keep already concise150text. Do not trade readability for abbreviations or long compressed sentences.151152Before writing and during a wording audit, check that every sentence adds153necessary information and that shortening preserves facts, constraints,154alternatives, tradeoffs, uncertainty, exact identifiers, acceptance criteria,155and evidence. Review only the requested scope. Brevity never authorizes changing156immutable history, weakening Acceptance, or claiming unobserved verification.157Report audit findings without editing. No fixed word or sentence count proves158quality, and the structural validator does not perform this semantic check.159160### Apply and check edits161162Before writing, confirm root, format, active Plan, current Work Item, affected163bytes, outcome, and required acceptance evidence. Use context-bound patches;164preserve unrelated work. Prepare and inspect the full multi-file result before165applying any member.166167After writing:1681691. reread changed frontmatter and complete affected Work Item or Decision blocks;1702. inspect the scoped diff and check changed prose against the compact-record rules;1713. check index ownership, active-Plan count, current-item status, Work Item key172 order, dependency order and cycles, Decision and Plan references, blockers,173 lifecycle fields, Evidence, and `Next action`;1744. when its script and Python are already available, run the optional validator175 through V; otherwise perform and report the scoped manual inspection;1765. record only acceptance evidence observed for the mutation.177178Use E's scoped-read rules: complete byte and structural checks need not print179unchanged history. Widen reads when the operation or a diagnostic requires it.180181During mutation, also stop on concurrent changes, ambiguous lifecycle authority,182or a partial multi-file transition.183Do not overwrite a problem into apparent validity.184185## Report durable state186187Lead with Plan outcome. Name changed canonical files, active/blocked work,188observed checks/evidence, unresolved choices, and next action. Distinguish native189structural inspection from behavioral verification; omit routine file narration.