Recurring ritual from ADR-135 (the over-build self-extending pattern corpus). Companion to #123.
What this is
The over-build gate (hooks/ways/softwaredev/code/overbuild/) is a small, prunable set of high-precision detectors with a 0-false-positive hard constraint. ADR-135 §3 makes it a learning corpus: periodically read the encounter telemetry, comprehend the genuinely ambiguous cases, and record / exempt / prune — usually nothing. The loop is bidirectional by design; append-only growth would reconstitute the "ponytail" dogma the ADR exists to avoid.
Last run — 2026-06-12
Outcome: no corpus change (the correct anti-dogmatic result).
- Telemetry: 5 fires, all non-organic (feature e2e tests + the dev session).
ways tune-precision --way overbuild: no over-firing flag.
- Detector validation: 5/5 (2 true-positives fire; 3 near-misses — legit
OrderedDict reordering, an _instance field, a markdown example — correctly stay silent).
- No organic encounters to learn from yet; adding speculative detectors would be the accretion anti-pattern.
Re-run trigger
When organic (non-test) over-build fires have accumulated:
# fires, excluding the pony-* / dev self-test sessions
grep '"way":"softwaredev/code/overbuild"' ~/.claude/stats/events.jsonl \
| grep -v 'pony-' | wc -l
ways tune-precision --way overbuild # is it over-firing into irrelevant sessions?
The loop
- Read encounter telemetry (over-build
way_fired events) + recent PR-review / usage-report signals.
- Comprehend the genuinely ambiguous cases (cost paid here, off the hot path).
- Decide: record a new detector (a real, generalizable reinvention), exempt (a legit/novel shape that must never fire), or — usually — nothing.
- Prune any detector the precision audit shows over-firing.
- Re-validate 0-FP before/after (true-positives fire, near-misses stay silent).
Known scope limit (not a defect)
Seed detectors are Python-only (OrderedDict+popitem(last=False, __new__+_instance is None). Broaden only on cross-language encounter evidence, never speculatively.
References
Recurring ritual from ADR-135 (the over-build self-extending pattern corpus). Companion to #123.
What this is
The over-build gate (
hooks/ways/softwaredev/code/overbuild/) is a small, prunable set of high-precision detectors with a 0-false-positive hard constraint. ADR-135 §3 makes it a learning corpus: periodically read the encounter telemetry, comprehend the genuinely ambiguous cases, and record / exempt / prune — usually nothing. The loop is bidirectional by design; append-only growth would reconstitute the "ponytail" dogma the ADR exists to avoid.Last run — 2026-06-12
Outcome: no corpus change (the correct anti-dogmatic result).
ways tune-precision --way overbuild: no over-firing flag.OrderedDictreordering, an_instancefield, a markdown example — correctly stay silent).Re-run trigger
When organic (non-test) over-build fires have accumulated:
The loop
way_firedevents) + recent PR-review / usage-report signals.Known scope limit (not a defect)
Seed detectors are Python-only (
OrderedDict+popitem(last=False,__new__+_instance is None). Broaden only on cross-language encounter evidence, never speculatively.References
docs/architecture/system/ADR-135-content-aware-write-time-over-build-gate-with-a-self-extending-pattern-corpus.md(§3 the loop; 2026-06-12 amendment for the postcheck/pattern-as-way mechanism).hooks/ways/softwaredev/code/overbuild/{overbuild.md,postcheck.sh}.