feat(v4): audit two-dimension model — Native Health + dotforge Adoption#3
Merged
Conversation
Reorient the audit from "do you have dotforge machinery?" to "do you use native Claude Code well?", per the native-first scope decision. - Dimension A — Native Health (score, 0-10): 5 obligatory + 10 recommended. New native-usage items: auto-memory hygiene (MEMORY.md as index, not dump), permission cascade (settings.local.json), attribution (vs deprecated includeCoAuthoredBy). Same obl*0.7 + rec*0.3 formula, security cap 6.0. - Dimension B — dotforge Adoption (forge_adoption, 0-5): behaviors, workflows, override loop, domain rules, sync recency. INFORMATIONAL — never affects score. Native-first projects (B=0, A=10) are now a desirable outcome, not penalized. Migrate all checklist consumers to keep them aligned: - audit/score.sh (CI engine): rewrite items 6-15 + add dimension B + dual output - audit_all.py (12-project re-auditor): same, writes forge_adoption to registry - .github/workflows/audit.yml: use native_health_items, fix stale /7 divisor - docs (README, usage-guide, guia-uso): two-dimension tables + formula Fixes three pre-existing inconsistencies: scoring summed items 6-15 while the checklist had 6-17; registry comment showed wrong 3.0/8 divisor; v4 items 16-17 were outside the score formula. Adds ADR docs/v4/SCOPE-DECISION.md and rule domain/native-vs-dotforge-boundary.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The audit job computed the score correctly but failed at the comment step with 403 "Resource not accessible by integration" — the workflow declared no permissions and the repo default GITHUB_TOKEN is read-only. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
🟢 dotforge Native Health: 9/10 (Excelente)dotforge Adoption: 4/5 (Most) — informational, does not affect Native Health
Dimension A — Native Health
Dimension B — dotforge Adoption (informational)
Score computed by |
The v4.0.0 release bumped VERSION but left .claude-plugin/plugin.json at 3.0.4, failing the ci.yml version-consistency check on every PR. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
🟢 dotforge Native Health: 9/10 (Excelente)dotforge Adoption: 4/5 (Most) — informational, does not affect Native Health
Dimension A — Native Health
Dimension B — dotforge Adoption (informational)
Score computed by |
… default search-first ships enabled=false since v3.6.1 (flag-consume false positives), but test_on_off.sh still asserted an initial enabled=true, failing on every PR. The on/off cycle test now sets its own baseline via the CLI, decoupling it from the shipped default of any single behavior. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
🟢 dotforge Native Health: 9/10 (Excelente)dotforge Adoption: 4/5 (Most) — informational, does not affect Native Health
Dimension A — Native Health
Dimension B — dotforge Adoption (informational)
Score computed by |
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.
Qué
Reorienta el audit de "¿tenés la maquinaria dotforge?" a "¿usás bien Claude Code nativo?", según la decisión de scope native-first (ADR + domain rule).
Modelo de dos dimensiones
score, 0-10): 5 obligatorios + 10 recomendados. Nuevos items de uso nativo: auto-memory hygiene (MEMORY.md como índice, no dump), permission cascade (settings.local.json), attribution (vsincludeCoAuthoredBydeprecado). Misma fórmulaobl*0.7 + rec*0.3, cap de seguridad 6.0.forge_adoption, 0-5): behaviors, workflows, override loop, domain rules, sync recency. Informativo — nunca afecta el score. Un proyecto native-first (B=0, A=10) ahora es resultado deseable, no penalizado.Consumidores migrados (mantener alineados)
audit/score.sh(motor CI) — items 6-15 reescritos + dimensión B + output dualscripts/audit_all.py(re-auditor de 12 proyectos) — escribeforge_adoptional registry.github/workflows/audit.yml— usanative_health_items, corrige divisor/7viejoInconsistencias preexistentes corregidas
scoringsumaba items 6-15 pero el checklist tenía 6-173.0/8incorrectoVerificación
bash -n+ ejecución + JSON + gate (pasa 7.0 / falla 9.5) enscore.sh✓py_compile+ dry-run sobre los 12 proyectos reales enaudit_all.py✓🤖 Generated with Claude Code