feat(content): migrate interactiveCopy into six typed collections

Move the six remaining bilingual datasets from app.js:160 into Astro
content collections so GuideSelector has data to drive. Mechanical copy
of 178 strings (160 localized pairs + 18 worker array strings) plus
the non-localized fields (status, path, command, score, icon, title,
number). Source field on commonSkills embedded from skillSources to
match the GuideSelectorData contract; if a URL changes, both this
entry and skillSources/<id>.json must be updated. Status kept on trees
even though GuideSelectorData omits it — index.html renders it.

Did not delete interactiveCopy from app.js: legacy page still consumes
it, and verify.mjs still asserts against it. Did not migrate the
labels (data.labels.*) — those live inside render functions in app.js
and belong to 15d.
This commit is contained in:
Marcos Paulo
2026-09-05 18:48:07 +00:00
parent 99ccc8e249
commit fc063f606a
28 changed files with 507 additions and 0 deletions
+23
View File
@@ -0,0 +1,23 @@
{
"id": "debug",
"number": "05",
"kind": { "en": "DIAGNOSTIC LOOP", "pt": "CICLO DE DIAGNÓSTICO" },
"title": "diagnosing-bugs",
"rule": {
"en": "No red-capable loop, no theory.",
"pt": "Sem ciclo capaz de falhar, sem teoria."
},
"use": {
"en": "Use for hard bugs, flakes, and regressions. First build a fast deterministic reproduction, then minimize, rank hypotheses, instrument, and fix the root cause.",
"pt": "Use para bugs difíceis, flakes e regressões. Primeiro crie reprodução rápida e determinística; depois minimize, ranqueie hipóteses, instrumente e corrija a causa raiz."
},
"example": {
"en": "One command reproduces the exact symptom before any fix.",
"pt": "Um comando reproduz o sintoma exato antes de qualquer correção."
},
"caution": {
"en": "Do not jump from error message straight to a patch.",
"pt": "Não pule da mensagem de erro direto para um patch."
},
"source": "https://github.com/mattpocock/skills/blob/6654f6b60cd9d5be8b54c6fafe44346dabeb3b76/skills/engineering/diagnosing-bugs/SKILL.md"
}