feat(ch18): Reconciliation Loop pattern + Mode axis#8
Open
danielmeppiel wants to merge 2 commits into
Open
Conversation
Introduces the Mode axis (static / style / sugar) as a second coordinate alongside the existing Layer axis. Each pattern entry now records how it asserts itself over the substrate, not only where it lives. Most existing entries are mode=static; this revision adds the first mode=style entry. Adds section 7 'Control loop patterns' as a cross-cutting mode category (not a fifth layer) with the Reconciliation Loop as its first entry. The entry extends the GoF-compressed template (Intent / Applicability / Consequences) with three operational fields (Invariant / Convergence / Failure Mode) that the original template was never designed to host -- the same extension Kubernetes Operator literature and the SRE book arrived at independently. Existence proof: the batch-bug-shepherd skill ran a full reconciliation saga in Q2 2026 inside GitHub Copilot CLI, a harness that ships neither /goal nor /loop, demonstrating that the discipline renders on baseline primitives (sub-agent dispatch, persistent state, completion signal). Vendor sugar (Codex /goal, Claude Code /loop, Copilot CLI issues #2129 and #3364) is convergent recognition, not a precondition. Adds forward reference from ch17 ADAPT loop to the new ch18 section. Cross-references the failure-mode field to ch19 Cost Runaway, Not Fixing the Primitives, and Persona Drift. Closes #7 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- 'Existence proof' section renamed to 'Worked example' and reframed: batch-bug-shepherd is the first concrete realization we built while developing the pattern, not external industry validation. A single worked example is not a population claim; it is the move from aspirational to demonstrated. - 'Substrate portability' acknowledges we tested the claim by building the worked example in Copilot CLI specifically because it ships neither /goal nor /loop -- the discipline rendered without the sugar. - New 'Composition with adjacent patterns' subsection after the topology diagram, showing A10-wraps-A11-with-per-item-A8-or-A1 with a Mermaid diagram and a three-axis explanation (outer governance wrap, per-item drop-in, queue-level policy). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This was referenced May 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #7
TL;DR
The move is naming the agentic instance of an ancient style (Wiener 1948, Shewhart 1939, Fielding 2000, CoreOS 2016, SRE 2016) -- this PR claims recognition, not novelty. The existence proof is the
batch-bug-shepherdskill running a full reconciliation saga inside GitHub Copilot CLI in Q2 2026 with neither/goalnor/loopshipped by the harness. The Mode axis (static / style / sugar) is the structural fix for ch18's silent structural-only bias: every entry now has two coordinates, not one.Why now
Three vendor signals are converging on the same discipline, independently. Codex packaged it as
/goal; Claude Code packaged it as/loopand/goal; GitHub Copilot CLI has open proposals in #2129 and #3364. Three independent vendors converging on the same primitive in the same quarter is the field telling us a discipline is worth naming. The handbook is the place to name it as the architectural style it is, before the sugar wins the naming war and the discipline becomes legible only to users of one specific runtime.What changes
Mode: staticin Consequences and adds a two-line forward reference to the Reconciliation Loop: "PANEL deliberates once; the Reconciliation Loop reasserts continuously."Validation evidence
/goalor/loop-- substrate-portability is the load-bearing claim, the conversion metric is supportive); Dev Lead Proxy validated Monday-actionability (Invariant / Convergence / Failure Mode are operational checks a senior dev can write today); Fact & Ref Checker validated every classical citation (Fielding 2000 UC Irvine PhD, Philips 2016 CoreOS blog, SRE book 2016 O'Reilly, Wiener 1948 MIT Press, Shewhart 1939, plus the four vendor URLs verbatim from the discovery brief); Illustrator validated both Mermaid diagrams as syntactically valid and comprehension-accelerating; Chief Editor synthesised and enforced handbook voice (no factory / wedge / commercial framing; novelty disclaimed in the thesis).Trade-offs