Skip to content

docs(ssot): record language-discipline guard build-vs-reuse decision (#122) - #594

Closed
artyhoo wants to merge 1 commit into
stagingfrom
feature/language-discipline-s2-ssot-ad3b71
Closed

docs(ssot): record language-discipline guard build-vs-reuse decision (#122)#594
artyhoo wants to merge 1 commit into
stagingfrom
feature/language-discipline-s2-ssot-ad3b71

Conversation

@artyhoo

@artyhoo artyhoo commented Jun 17, 2026

Copy link
Copy Markdown
Owner

Stage 2 of the language-discipline-residue umbrella (#590), dispatched autonomously via aif-handoff.

Appends SSOT entry #122 to docs/meta-factory/prior-art-evaluations.md recording the build-vs-reuse decision for the language-discipline guard. Forward register entry — the merged squash trailer (92c776c) is frozen history and cannot be rewritten. The BUILD verdict was finalized only after the 6-item search (WebSearch ×3 + repo-level ×3; DeepWiki MCP unavailable in env, WebFetch substituted per the #121 precedent), which surfaced adjacent single-purpose tools (comment-lang-detector, cyrchk, Pulp Fiction, blocklint) — none couples an internal-English machinery gate with AIF_HOOK_LANG-gated output localization.

Prior-art: prior-art-evaluations.md#122 (BUILD — no upstream couples the internal-English machinery gate with env-gated output-language localization; surfaced tools rejected as wrong problem-class per T16).

§1.7 Forward-check applied

Checked against existing disciplines before writing the SSOT entry:

  • .claude/rules/phase-research-coverage.md:1 — invariant 3 (6-item search on a negative-existence claim): ran WebSearch ×3 + repo-level ×3 and cited the surfaced adjacent tools, rather than asserting "nothing exists" from training data (T-LangRes-B / T11 / T12 avoided).
  • .claude/rules/build-first-reuse-default.md:1 — BUILD justified via the mechanical cost-gate (dependency-free vitest grep = "cheap") and the REUSE-half already taken (AIF_HOOK_LANG + lang/*.sh).
  • .claude/rules/ai-laziness-traps.md:1 — T16 problem-class written explicitly in the row ("Upstream class X / our class Y / Match? No, with evidence").

§1.7 Backward-check applied

Swept existing artefacts under this change's scope:

  • docs/meta-factory/prior-art-evaluations.md:192 — appended ID 122 directly after the highest existing ID 121 (verified unique, no collision); matches the 8-column row schema.
  • packages/core/principles/11-build-first-reuse-default.test.ts:1 — F2 verdict recognized + F4 ID-uniqueness stays green after the append.
  • .claude/rules/language-discipline.md:1 + packages/core/principles/22-internal-english.test.ts:1 — both named verbatim in the row so the hasSsotMatch linker connects them; no prior SSOT entry superseded (append-only).

…122)

Forward SSOT entry recording the build-vs-reuse decision for the
language-discipline guard (.claude/rules/language-discipline.md +
packages/core/principles/22-internal-english.test.ts). The two original
capability commits carried `Prior-art: skipped` (frozen squash history,
unrewritable) — this entry closes the residual register gap.

Verdict BUILD for the coupled guard, derived from the full 6-item search
(2026-06-17): DeepWiki MCP unavailable in env (per #121 precedent) →
WebSearch x3 + repo-level x3 + WebFetch attempt. Search surfaced adjacent
single-purpose tools (comment-lang-detector GitHub Action, Cyrillic Check,
Pulp Fiction) recorded as REFERENCE-class precedent for the detection
sub-pattern; none couples an internal-English machinery gate that preserves
category-3 bilingual match-data with an AIF_HOOK_LANG-gated output-language
directive (T16 problem-class distinguished in the entry rationale).

Prior-art: prior-art-evaluations.md#122 — adds the BUILD-with-REFERENCE decision for the language-discipline guard; backed by the 6-item search run 2026-06-17 (DeepWiki unavailable → WebSearch x3 + repo-level x3), not a training-data escape hatch.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@artyhoo

artyhoo commented Jun 17, 2026

Copy link
Copy Markdown
Owner Author

Superseded by #596 — SSOT ID collision: PR #592 (/story skill) merged in parallel and took ID #122 on staging, so this row is re-numbered to #123 in #596 (rebased onto current staging). Closing this one; the corrected entry lands via #596.

@artyhoo artyhoo closed this Jun 17, 2026
auto-merge was automatically disabled June 17, 2026 06:15

Pull request was closed

@artyhoo
artyhoo deleted the feature/language-discipline-s2-ssot-ad3b71 branch June 17, 2026 06:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant