This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

A Human Edit To The Brief Cannot Commit Until Its Implied Intents And Principles Are Drawn Out And Reconciled

intentdraftsminoritd-61

Press Release

abcd gains a brief-change derivation: when a human edits the brief directly, a grill-style pass draws out what that edit implies — new or changed intents, and new or changed cross-cutting principles (disciplines) — and the edit is blocked until each drawn-out item is accepted or dismissed. abcd already carries built reality forward into the brief and docs ([[itd-60-doc-fidelity-anti-drift]]). This is the reverse: a person changes the brief — adds a capability, tightens a rule, shifts the mental map — and the framework refuses to let the roadmap silently lag behind. It interrogates the edit the way the grill interrogates an intent, surfaces the implied itd-N intents and the implied disciplines, and reconciles each. Any change fires the pass; if an implied item is already captured (because the forward path authored it), the dedup recognizes it and no-ops.

"I edit the brief when my thinking moves — that's the whole point of it being a living canvas," said Iris, a product thinker steering abcd. "But an edit to the brief is a promise about the product, and promises imply work. If I write 'every surface must survive a restart' into the brief, that's a new discipline, and I shouldn't be able to walk away pretending it isn't. Make me reckon with what I just committed to — draw it out, let me accept or drop it — before the edit lands."

Why This Matters

The brief is abcd's single source of truth and a living canvas a human edits directly. That power is also a gap: a brief edit can introduce a capability or a cross-cutting rule that never becomes an intent or a discipline, so the roadmap silently falls behind the stated design. The forward direction ([[itd-60-doc-fidelity-anti-drift]]) keeps the brief in step with built reality; it cannot catch a brief that runs ahead of reality by human authorship. Only a reverse pass can.

abcd already owns the right instrument: the grill — a Socratic interview that draws out what a stated intention actually entails. Pointing that instrument at a brief edit (rather than a fresh intent) turns an ungoverned edit into a reconciled one: the implied intents and the implied principles are made explicit and either accepted into the roadmap or consciously dismissed. Blocking until reconciliation mirrors abcd's existing tamper-evident, fail-closed posture — a brief edit is consequential enough to deserve the same "you cannot proceed past an unresolved state" treatment that provenance and the reviewers already enforce.

What's In Scope

  • A derivation pass triggered by any change to the brief: it analyses the edit (grill-style) and draws out the changes it implies.
  • Two output kinds: new or updated intents (itd-N drafts — when the edit implies a capability or changes an existing one) and new or updated principles (disciplines — when the edit implies a cross-cutting rule or invariant).
  • Blocking-until-reconciled semantics: the brief edit cannot be committed until each drawn-out item has been explicitly accepted (captured into the roadmap) or dismissed.
  • Dedup against the forward path: because any brief change fires the pass — including brief edits the forward doc-fidelity pass itself auto-drafted ([[itd-60-doc-fidelity-anti-drift]]) — the derivation recognizes an already-captured implication and no-ops rather than producing a duplicate intent/principle.
  • Reuse of the existing grill's interrogation machinery rather than a parallel re-implementation.

What's Out of Scope

  • The forward direction. Carrying built reality into the brief and the public docs is [[itd-60-doc-fidelity-anti-drift]]. This intent only handles human-authored brief edits flowing back into the roadmap.
  • Editing the brief's prose for the human. The pass draws out implications and reconciles them; it does not rewrite the human's brief edit.
  • Auto-promoting drawn-out intents past draft. Implied intents land as drafts for the normal lifecycle; the pass does not skip grilling/planning.
  • Sequencing/dependency decisions relative to itd-60 and itd-62 — /abcd:intent plan's job.

Acceptance Criteria

Given-When-Then per the itd-1 discipline.

  • Given a human edits the brief, when the derivation pass runs, then it draws out the intents and the principles (disciplines) that the edit implies, each as an explicit drawn-out item.
  • Given the pass has drawn out implied items, when the human has not yet accepted or dismissed each one, then the brief edit is blocked from committing.
  • Given an implied item is accepted, when the human accepts it, then it is recorded as a draft intent (itd-N) and/or a principle, per its kind.
  • Given a brief change whose implications are already captured (e.g. authored by the forward doc-fidelity path), when the pass runs, then the dedup recognizes the existing item and the pass does not create a duplicate.
  • Given the derivation cannot reliably run, when a brief edit is attempted, then the block holds (fail closed) rather than letting the edit commit unreconciled.

SOTA

Surveyed on 2026-10-23; sources, evidence tiers and the local fit risks are in the traceability-governance SOTA note. The classification half (a model proposes new intent, issue, contradiction or no impact; the product thinker confirms; the recall and precision figures) is in the 2026-10-04 brief-to-record traceability note; this pass researched where the block lives, the trivial-edit filter and the pass's shape.

  • The block. git's pre-commit hook aborts the commit on a non-zero exit and "can be bypassed with the --no-verify option"; hooks are not tracked content. A hook is the early, loud copy; the gate that holds is the record-lint rule preflight and CI run, which is abcd's three-tier posture already.
  • Trivial edits are kept out by the fingerprint's scope, not a second heuristic, and the scope is narrower than it looks. Doorstop's fingerprint covers the item UID, text, ref and references, the UIDs in links and opted-in extended attributes, not header, level or layout; Jama fires only on configured fields. If the trigger is itd-2610040817105016's section fingerprint over normative text, a reflow or other whitespace-only edit fires nothing by construction, but a typo fix does move the fingerprint, marks the links suspect and, under the record-lint rule below, fails the gate until cleared; so editorial edits need a cheap clear-by-act (an "editorial, no impact" row the product thinker confirms in one step), or the open question's pre-filter stays open. "Any change fires the pass" narrows to any change of normative text.
  • The errata world's triage rule transfers. The IESG tells reviewers "only items that are clearly wrong should be considered" and "Significant clarifications should not be handled as errata reports": an editorial brief edit is cleared in one step, a technical one fires the pass, and an edit that changes what the product is owes a record.
  • Single pass, then confirm, is the shipped shape. Spec Kit's analyze runs once, read-only, one table with a location per finding, remediation "only offered". Its near-duplicate pass is a model's judgement with no published recall; duplicate-detection research was not surveyed this pass.
  • The change-folder alternative (OpenSpec: a proposal folder with spec deltas, archived and applied on acceptance) keeps the edit out of the brief until reconciled, at the cost of taking the brief out of the product thinker's hands between edit and apply.
  • Path 2: native. The deterministic suspect set is the trigger; the pass is single-shot and read-only in the finding-table shape; the block is a record-lint rule (a moved fingerprint with uncleared links fails), with the pre-commit hook as early warning; this moves the hold from the commit to the push and merge gates, so the criterion "blocked from committing" would read "blocked from reaching main" at planning, a rewording only the product thinker makes. The seam is the finding table, so the proposer can change without the gate changing. One assessment verb serves this intent and itd-2610040817105016.

The independent fit-challenge runs at plan time.

Open Questions

  • What counts as "the brief edit committing"? The brief is a directory of files — does the block live at commit time (a pre-commit hook), at a /abcd surface, or both? abcd's three-tier design (pre-commit → CI → runtime) is the natural template.
  • How is "any brief change fires the pass; dedup later" scoped to avoid firing on trivial edits (typo fixes, reflows)? The dedup handles already-captured implications, but a cheap "is this load-bearing?" pre-filter may still be needed to avoid grilling on whitespace.
  • How does dedup identify an "already-captured" implication robustly — provenance markers from the forward path, content matching against existing drafts/disciplines, or both?
  • Does the grill run interactively (like the existing grill) on every brief edit, or single-pass-then-confirm? Interactive is truer to the grill but heavier per edit.
  • Where do drawn-out principles land — as discipline drafts under intents/disciplines/, and does a framework-provided vs app-authored distinction apply (see [[itd-62-pluggable-safety-gate]])?
  • (SOTA 2026-10-23) Whether the gate holds the commit or the edit: a product thinker who edits their brief on the dashboard with no session open must not be stalled by a block only a session can clear.
  • (SOTA 2026-10-23) What the gate decides with no model present: an uncleared suspect link fails, but is a brief edit with no proposal on file a failure or a pending state?

Evidence 2026-10-04 (a downstream lab)

  • Tense (recorded for the product thinker, not decided). A downstream private project's brief-authoring lab found that the present-tense-only convention makes a target-design brief read as a working product: 99 present-tense product claims against 9 "staged" markers. Its owner called this the biggest issue they face with abcd, and holds that the brief is the target design the product thinker owns. The lab named this intent with itd-142 and itd-143.
  • Brief to records. The same lab wrote a 22-file brief over two days and drew no intent from it: no verb proposes intents, decisions or captures from a brief, and the status board did not notice a brief with no records beside it. This intent's derivation pass is the record for the first half, since a brief written from nothing is a run of brief edits; the board's silence on a brief with no records is outside its scope as written. The lab rated it major.

Hypothesis 2026-10-04 (the brief's tense)

Recorded from the product thinker, 2026-10-04, answering how a brief describes what is not built yet, verbatim: "this is a big open question I'm currently testing on another repo. My current hypothesis: The brief is the main 'target design' document for the PT; while written in present tense, it's a vision of what the PT assumes the final product will look like. That way, the PT can 'think' about the product in a familiar way, while abcd helps them -- via the TF -- to make it a reality (step-by-step). We need SOTA research to ensure abcd will do that in a deterministic way, e.g. by listing implemented intents and/or plumbing implementations to each brief section; if the PT then changes the brief, abcd must assess whether a new intent/issue is required (and record it) or whether an existing intent (already filed, planned, and/or build) contradicts that change, in which case the PT is owed a design decision. Makes sense?" Recorded as a working hypothesis under test, not a ruling; a state-of-the-art pass on deterministic brief-to-record traceability was started the same day.

This intent is the second half of the hypothesis: a brief change is assessed for a new intent or issue, or for a contradiction with an intent already filed, planned or built, which owes the product thinker a design decision.

Audit Notes

Empty. Populated by intent-fidelity-reviewer when intent moves to shipped/.

References

  • Originating assessment: ~/Desktop/abcd-assessment.html (2026-06-26) — the brief-vs-reality coherence concern that motivates both directions.
  • Reuses: skills/abcd-intent-grill/ (the Socratic interrogation machinery), pointed at a brief edit rather than a fresh intent.
  • Paired with: [[itd-60-doc-fidelity-anti-drift]] (the forward direction; its auto-drafted brief edits are the primary dedup case).
  • Posture precedent: abcd's tamper-evident provenance and fail-closed reviewers — "cannot proceed past an unresolved state" applied to brief edits.
  • built on by itd-2611011151512956 (hand-written text caught and offered back to the brief): A piece moved from a documentation surface into the brief goes through this intent's reconciliation.

Frontmatter

iditd-61
typeintent
lifecycledrafts
severityminor

References1

Referenced by10

mentions14