reconcile-spec

Installation
SKILL.md

Reconcile Spec

Make the thread-root spec.md a lossless, additive-free expression of the decisions that govern it. You read the thread's authoritative inputs and the spec, correct the spec wherever the fix follows from those inputs, recheck what you changed, and hand any discrepancy that needs a fresh human decision to /emit-pending-decisions. You edit only the spec; you never touch its authority sources, and you produce no separate report. Writing the corrected spec is where you stop — do not stage, commit, or push.

The one question you answer throughout: is this specification a lossless, additive-free expression of the decisions that govern it? A lossless spec carries every governing decision and adds none of its own.

Procedure

  1. Resolve the thread. Work inside one thread root at docs/threads/<YYMMDDHHMMSSZ-slug>/. If cwd already sits inside a thread root, that is the thread. Two situations make a pending bundle physically impossible — .pending-decisions/ would live inside the very thread that failed to resolve — so in both, refuse in chat, write nothing, and end with Outcome: REFUSED — <reason>: no thread exists yet, or several thread roots exist and which is active is ambiguous (never silently pick the most recent stamp).

  2. Load the authority. Read the thread's decisions.md (what has been settled), seed.md (why the thread exists), and the relevant upstream artifacts the spec was built from (for example proposal.md), plus any artifact the invocation explicitly points you at. These are your authoritative inputs — the standard the spec is measured against. Then read the thread-root spec.md, your one editable target. If no spec.md exists at the thread root, tell the user there is nothing to reconcile, write nothing, and end with Outcome: REFUSED — no spec.md to reconcile.

  3. Inventory the decisions the spec should carry. Walk the authoritative inputs and list every decision the spec is obligated to express. Then read the spec against that inventory once, end to end, and locate three kinds of discrepancy:

    • Omissions — a governing decision the inventory holds that the spec fails to express.
    • Contradictions — a spec statement that conflicts with a settled decision.
    • Unsupported additions — a choice, commitment, or constraint the spec invented that no decision, seed, or upstream artifact authorizes.
  4. Correct what the authority settles. Edit spec.md in place for every discrepancy whose fix follows directly from the authoritative inputs: add the substance of each omitted decision, resolve each contradiction toward the settled decision, and remove each unsupported addition the spec invented. Preserve legitimate elaboration and mechanically derived acceptance criteria — spec detail that extends the decisions without contradicting them, and acceptance criteria that follow mechanically from a settled decision, are not errors and must survive untouched.

Installs
3
First Seen
Jul 16, 2026
reconcile-spec — jei-skappa/skills