Merge feature/model-tiering-w3-tier-moves into develop

This commit is contained in:
Bastien Chanot
2026-07-19 22:46:19 +02:00
5 changed files with 26 additions and 10 deletions
+5
View File
@@ -7,6 +7,11 @@ model: sonnet
# Git Smart Commit # Git Smart Commit
> MODEL (BDR-077): `MODE: propose` is dispatched with `model="opus"` (the
> call-site override — narrative reconstruction + capitalize routing are
> judgment); `MODE: apply` runs on the sonnet frontmatter pin (mechanical
> staging/committing of an approved plan).
Reconstruct the development narrative from a working directory. The goal Reconstruct the development narrative from a working directory. The goal
is to create a git history that reads like a story of how the work was is to create a git history that reads like a story of how the work was
done — each commit is one development step, in chronological order. done — each commit is one development step, in chronological order.
+1 -1
View File
@@ -2,7 +2,7 @@
name: validator-analyzer name: validator-analyzer
description: Web standards audit agent — W3C HTML validity (validator.nu), W3C CSS validity (jigsaw.w3.org), WCAG 2.1 accessibility (axe-core, pa11y, WAVE). Dispatched from /web-validate. Produces scored .claude/audits/VALIDATE.md report with concrete diffs for auto-fixable issues and user actions for judgment-required fixes. Complementary to /harden (security), /seo (indexability), /geo (AI extraction). description: Web standards audit agent — W3C HTML validity (validator.nu), W3C CSS validity (jigsaw.w3.org), WCAG 2.1 accessibility (axe-core, pa11y, WAVE). Dispatched from /web-validate. Produces scored .claude/audits/VALIDATE.md report with concrete diffs for auto-fixable issues and user actions for judgment-required fixes. Complementary to /harden (security), /seo (indexability), /geo (AI extraction).
tools: Read, Edit, Write, Bash, Grep, Glob, WebFetch tools: Read, Edit, Write, Bash, Grep, Glob, WebFetch
model: opus model: sonnet
--- ---
# Validator — W3C + WCAG audit # Validator — W3C + WCAG audit
+12 -6
View File
@@ -58,14 +58,15 @@ has "agents/client-handover-writer.md" 'subagent_type="handover-doc-writer"'
has "agents/feater.md" 'Applier path' has "agents/feater.md" 'Applier path'
has "skills/refactor/SKILL.md" 'subagent_type="refactorer"' has "skills/refactor/SKILL.md" 'subagent_type="refactorer"'
has "agents/refactorer.md" 'model: sonnet' has "agents/refactorer.md" 'model: sonnet'
# 11) BDR-076 — session model (Fable) = orchestration + inline reflection ONLY. # 11) BDR-076/077 — session model = orchestration + inline reflection ONLY.
# Dispatched judgment agents pinned OPUS (big tier, session-independent; # Dispatched judgment agents pinned OPUS. validator-analyzer TIERED DOWN
# never sonnet — that would silently downgrade a live audit). Inline-load- # to sonnet (W3 — deterministic validator-runner + fixed deduction
# only agents (interviewer, client-handover-writer) STAY unpinned: they run # tables, no deep judgment; approved plan). Inline-load-only agents
# IN the main loop, a frontmatter pin there is inert and misleads. # (interviewer, client-handover-writer) STAY unpinned: they run IN the
# main loop, a frontmatter pin there is inert and misleads.
has "agents/seo-analyzer.md" 'model: opus' has "agents/seo-analyzer.md" 'model: opus'
has "agents/geo-analyzer.md" 'model: opus' has "agents/geo-analyzer.md" 'model: opus'
has "agents/validator-analyzer.md" 'model: opus' has "agents/validator-analyzer.md" 'model: sonnet'
has "agents/plan-challenger.md" 'model: opus' has "agents/plan-challenger.md" 'model: opus'
fm_lacks "agents/client-handover-writer.md" 'model:' fm_lacks "agents/client-handover-writer.md" 'model:'
fm_lacks "agents/interviewer.md" 'model:' fm_lacks "agents/interviewer.md" 'model:'
@@ -125,6 +126,11 @@ has "skills/onboard/SKILL.md" 'subagent_type="onboarder"'
lacks "skills/init-project/SKILL.md" 'Load `$HOME/.claude/agents/scaffolder.md`' lacks "skills/init-project/SKILL.md" 'Load `$HOME/.claude/agents/scaffolder.md`'
# shellcheck disable=SC2016 # shellcheck disable=SC2016
lacks "skills/onboard/SKILL.md" 'Load `$HOME/.claude/agents/onboarder.md`' lacks "skills/onboard/SKILL.md" 'Load `$HOME/.claude/agents/onboarder.md`'
# 16) BDR-077 W3 — commit-changer per-mode override: propose = opus at the
# call site (documented precedence over the sonnet pin), apply = pin
has "skills/commit-change/SKILL.md" 'model="opus"'
has "agents/commit-changer.md" 'MODE: propose'
has "agents/commit-changer.md" 'model: sonnet'
printf 'model-routing census: %d pass, %d fail\n' "$pass" "$fail" printf 'model-routing census: %d pass, %d fail\n' "$pass" "$fail"
[ "$fail" -eq 0 ] [ "$fail" -eq 0 ]
+7 -2
View File
@@ -18,7 +18,8 @@ allowed-tools:
# /commit-change — propose → confirm → apply dispatcher # /commit-change — propose → confirm → apply dispatcher
Grouping and committing both run on the sonnet-pinned `commit-changer` Grouping (propose, `model="opus"` override — judgment) and committing
(apply, sonnet pin — mechanical) both run on the dispatched `commit-changer`
subagent (dispatch makes the pin effective). No inline reflection happens subagent (dispatch makes the pin effective). No inline reflection happens
in this dispatcher to protect, so there is no model gate. This dispatcher in this dispatcher to protect, so there is no model gate. This dispatcher
owns the two approval gates that used to live inside the subagent: owns the two approval gates that used to live inside the subagent:
@@ -52,11 +53,15 @@ protected branch.
## STEP 1 — Propose ## STEP 1 — Propose
``` ```
Agent(subagent_type="commit-changer") Agent(subagent_type="commit-changer", model="opus")
prompt: "MODE: propose prompt: "MODE: propose
$ARGUMENTS" $ARGUMENTS"
``` ```
(`model="opus"` — BDR-077: propose = narrative reconstruction + capitalize
routing, judgment tier; the call-site override takes precedence over the
sonnet frontmatter pin. Apply, STEP 4, stays on the pin.)
Read the returned `COMMIT PLAN` + `EDGE CASES` + `CAPITALIZE CANDIDATES`, Read the returned `COMMIT PLAN` + `EDGE CASES` + `CAPITALIZE CANDIDATES`,
terminated by `READY TO APPLY — awaiting dispatcher confirmation`. terminated by `READY TO APPLY — awaiting dispatcher confirmation`.
+1 -1
View File
@@ -186,7 +186,7 @@ feat(<scope>): <what was added>
If the feature touched multiple concerns (e.g., feature + config + If the feature touched multiple concerns (e.g., feature + config +
test), consider splitting into 2-3 atomic commits grouped by logical test), consider splitting into 2-3 atomic commits grouped by logical
unit — or run `/commit-change` on the pending work (it dispatches the unit — or run `/commit-change` on the pending work (it dispatches the
sonnet commit-changer; never inline-load the bare agent, it is now a commit-changer (propose opus / apply sonnet, BDR-077); never inline-load the bare agent, it is now a
propose/apply executor). propose/apply executor).
Print summary: Print summary: