mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-03 23:37:53 +01:00
inventory: only the seeded backlog may be grandfathered, so a new part's row is checked (review fix)
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
1 parent
5f0be66afa
commit
d0b3028b5a
2 files changed
+80
-2
No files matched your search
+76
@@ -0,0 +1,76 @@
|
|||||||
|
{
|
||||||
|
"note": "The parts present when the R56 ledger was seeded (GST-914, PR #3837). Only these rows may say grandfathered: true; a part added later carries reason, plan, owner and measure_by (ETHOS.md: 9. Earn Its Place). Never add a key here.",
|
||||||
|
"keys": [
|
||||||
|
"autoplan",
|
||||||
|
"autoplan-phases",
|
||||||
|
"benchmark",
|
||||||
|
"benchmark-models",
|
||||||
|
"browse",
|
||||||
|
"canary",
|
||||||
|
"captain",
|
||||||
|
"capy-factory",
|
||||||
|
"capy-skill",
|
||||||
|
"careful",
|
||||||
|
"catalog",
|
||||||
|
"claude-code",
|
||||||
|
"codex",
|
||||||
|
"context-restore",
|
||||||
|
"context-save",
|
||||||
|
"cso",
|
||||||
|
"design-consultation",
|
||||||
|
"design-html",
|
||||||
|
"design-motion",
|
||||||
|
"design-review",
|
||||||
|
"design-shotgun",
|
||||||
|
"deslop-shared-libs",
|
||||||
|
"devex-review",
|
||||||
|
"diagram",
|
||||||
|
"document-generate",
|
||||||
|
"document-release",
|
||||||
|
"eval-plan",
|
||||||
|
"freeze",
|
||||||
|
"gstack",
|
||||||
|
"gstack-upgrade",
|
||||||
|
"guard",
|
||||||
|
"health",
|
||||||
|
"investigate",
|
||||||
|
"ios-clean",
|
||||||
|
"ios-design-review",
|
||||||
|
"ios-fix",
|
||||||
|
"ios-qa",
|
||||||
|
"ios-sync",
|
||||||
|
"land-and-deploy",
|
||||||
|
"landing-report",
|
||||||
|
"learn",
|
||||||
|
"make-pdf",
|
||||||
|
"modernize",
|
||||||
|
"office-hours",
|
||||||
|
"open-gstack-browser",
|
||||||
|
"pair-agent",
|
||||||
|
"plan-ceo-review",
|
||||||
|
"plan-design-review",
|
||||||
|
"plan-devex-review",
|
||||||
|
"plan-eng-review",
|
||||||
|
"plan-tune",
|
||||||
|
"preamble",
|
||||||
|
"qa",
|
||||||
|
"qa-only",
|
||||||
|
"retro",
|
||||||
|
"review",
|
||||||
|
"scrape",
|
||||||
|
"setup-browser-cookies",
|
||||||
|
"setup-deploy",
|
||||||
|
"setup-gbrain",
|
||||||
|
"ship",
|
||||||
|
"ship-docs-audit",
|
||||||
|
"ship-review-panel",
|
||||||
|
"skillify",
|
||||||
|
"spec",
|
||||||
|
"sync-gbrain",
|
||||||
|
"test-audit",
|
||||||
|
"ubicloud",
|
||||||
|
"unfreeze",
|
||||||
|
"verify",
|
||||||
|
"write-skill"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -51,8 +51,10 @@ describe('the ledger covers every key and validates', () => {
|
|||||||
expect(validateLedger(ledger, keys)).toEqual([]);
|
expect(validateLedger(ledger, keys)).toEqual([]);
|
||||||
});
|
});
|
||||||
|
|
||||||
test('the initial backlog is grandfathered and the guards are safety rows', () => {
|
test('the initial backlog is grandfathered, nothing else is, and the guards are safety rows', () => {
|
||||||
for (const [key, row] of Object.entries<any>(ledger.parts)) expect([key, row.grandfathered]).toEqual([key, true]);
|
const backlog: string[] = JSON.parse(fs.readFileSync(path.join(ROOT, 'test', 'fixtures', 'inventory-grandfathered.json'), 'utf8')).keys;
|
||||||
|
for (const key of backlog) expect([key, ledger.parts[key]?.grandfathered]).toEqual([key, true]);
|
||||||
|
for (const [key, row] of Object.entries<any>(ledger.parts)) if (row.grandfathered) expect(backlog).toContain(key);
|
||||||
for (const key of ['careful', 'freeze', 'guard', 'unfreeze', 'cso']) expect(ledger.parts[key].status).toBe('safety');
|
for (const key of ['careful', 'freeze', 'guard', 'unfreeze', 'cso']) expect(ledger.parts[key].status).toBe('safety');
|
||||||
for (const key of ['capy-skill', 'capy-factory']) expect(ledger.parts[key]).toMatchObject({ status: 'untested', plan: 'none' });
|
for (const key of ['capy-skill', 'capy-factory']) expect(ledger.parts[key]).toMatchObject({ status: 'untested', plan: 'none' });
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in new issue
Block a user