Files
agentic-dev/docs/work/_system/_state.json

765 lines
23 KiB
JSON

{
"updated_at": "2026-05-20T12:57:04.572Z",
"epics": {
"binder-wrap-helper": {
"status": "done",
"title": "Collapse binder duplication via wireUseCase helper",
"prd": "docs/work/prds/binder-wrap-helper.prd.md",
"stories": {
"01-wire-use-case-helper": {
"status": "done",
"title": "Introduce wireUseCase helper in core-shared",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"02-migrate-feature-binders",
"03-update-generator-templates"
]
},
"02-migrate-feature-binders": {
"status": "done",
"title": "Migrate all five feature binders to wireUseCase",
"ac_total": 5,
"ac_completed": 5,
"depends_on": [
"01-wire-use-case-helper"
],
"blocks": []
},
"03-update-generator-templates": {
"status": "done",
"title": "Update feature generator templates to emit wireUseCase call shape",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-wire-use-case-helper"
],
"blocks": []
}
}
},
"ci-security-and-supply-chain": {
"status": "done",
"title": "CI security + supply-chain enforcement stack",
"prd": "docs/work/prds/ci-security-and-supply-chain.prd.md",
"stories": {
"01-trace-schema-extensions": {
"status": "done",
"title": "Trace schema extensions (socketRisk + lastRevalidated)",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"02-socket-integration": {
"status": "done",
"title": "Socket integration (skill + CI)",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"01-trace-schema-extensions"
],
"blocks": [
"08-reviewer-prompt-update"
]
},
"03-renovate-adoption": {
"status": "done",
"title": "Renovate adoption",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"09-ci-security-guide-and-docs"
]
},
"04-major-bump-reevaluation": {
"status": "done",
"title": "Major-bump re-evaluation flow",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-trace-schema-extensions"
],
"blocks": [
"05-trace-revalidation-workflow"
]
},
"05-trace-revalidation-workflow": {
"status": "done",
"title": "Trace revalidation workflow",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"01-trace-schema-extensions",
"04-major-bump-reevaluation"
],
"blocks": [
"09-ci-security-guide-and-docs"
]
},
"06-codeql-and-audit-signatures": {
"status": "done",
"title": "CodeQL workflow + pnpm audit signatures",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": [
"08-reviewer-prompt-update"
]
},
"07-gitleaks-precommit": {
"status": "done",
"title": "Gitleaks pre-commit hook",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"09-ci-security-guide-and-docs"
]
},
"08-reviewer-prompt-update": {
"status": "done",
"title": "Sandcastle reviewer prompt update",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"02-socket-integration",
"06-codeql-and-audit-signatures"
],
"blocks": [
"09-ci-security-guide-and-docs"
]
},
"09-ci-security-guide-and-docs": {
"status": "done",
"title": "CI security guide + CLAUDE.md",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": []
}
}
},
"compliance-docs-scaffolds": {
"status": "done",
"title": "Compliance docs scaffolds — Epic D of ADR-025",
"prd": "docs/work/prds/compliance-docs-scaffolds.prd.md",
"stories": {
"01-land-operator-checklist": {
"status": "done",
"title": "Land operator-checklist.md verbatim",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"02-refresh-operator-checklist"
]
},
"02-refresh-operator-checklist": {
"status": "done",
"title": "Refresh operator-checklist.md for ADR-024 and ADR-025",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-land-operator-checklist"
],
"blocks": []
},
"03-policy-templates": {
"status": "done",
"title": "Write seven policy templates in docs/compliance/templates/",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": [
"04-pre-launch-compliance-checklist",
"05-compliance-overview"
]
},
"04-pre-launch-compliance-checklist": {
"status": "done",
"title": "Write pre-launch compliance checklist",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"03-policy-templates"
],
"blocks": [
"05-compliance-overview"
]
},
"05-compliance-overview": {
"status": "done",
"title": "Write compliance-overview.md hub",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"03-policy-templates",
"04-pre-launch-compliance-checklist"
],
"blocks": [
"06-doc-wiring"
]
},
"06-doc-wiring": {
"status": "done",
"title": "Wire compliance docs into CLAUDE.md, README, and glossary",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"05-compliance-overview"
],
"blocks": []
}
}
},
"compliance-manifests-pii-retention-subprocessors": {
"status": "done",
"title": "Declarative compliance manifests (PII + retention + sub-processors) — Epic A of ADR-025",
"prd": "docs/work/prds/compliance-manifests-pii-retention-subprocessors.prd.md",
"stories": {
"01-pii-retention-type-primitives": {
"status": "done",
"title": "PII and retention type primitives in core-shared",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"02-eslint-rule-pii-declaration-complete": {
"status": "done",
"title": "Add pii-declaration-must-be-complete ESLint rule to core-eslint",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-pii-retention-type-primitives"
],
"blocks": [
"05-backfill-template-collections"
]
},
"03-adr-022-amendment-and-evaluate-library-skill": {
"status": "done",
"title": "ADR-022 amendment for sub-processor fields and evaluate-library skill update",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-pii-retention-type-primitives"
],
"blocks": []
},
"04-retention-purge-job": {
"status": "done",
"title": "Background retention purge job in core-shared",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-pii-retention-type-primitives"
],
"blocks": []
},
"05-backfill-template-collections": {
"status": "done",
"title": "Backfill existing template Payload collections with PII and retention metadata",
"ac_total": 5,
"ac_completed": 5,
"depends_on": [],
"blocks": [
"06-compliance-generator-scripts"
]
},
"06-compliance-generator-scripts": {
"status": "done",
"title": "Compliance generator scripts (emit-data-map, emit-retention-policy, emit-sub-processors, emit-all)",
"ac_total": 4,
"ac_completed": 4,
"depends_on": [
"01-pii-retention-type-primitives",
"05-backfill-template-collections"
],
"blocks": [
"07-pre-commit-and-ci-integration",
"08-docs-compliance-reference-files"
]
},
"07-pre-commit-and-ci-integration": {
"status": "done",
"title": "Pre-commit hook and CI integration for compliance drift detection",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"06-compliance-generator-scripts"
],
"blocks": []
},
"08-docs-compliance-reference-files": {
"status": "done",
"title": "docs/compliance reference example files and README",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"06-compliance-generator-scripts"
],
"blocks": []
}
}
},
"dsr-consent-and-cookie-banner": {
"status": "done",
"title": "DSR + consent abstraction + cookie consent banner — Epic B of ADR-025",
"prd": "docs/work/prds/dsr-consent-and-cookie-banner.prd.md",
"stories": {
"01-subject-linkage-types": {
"status": "done",
"title": "Subject-linkage types in core-shared",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"02-audit-enum-amendment"
]
},
"02-audit-enum-amendment": {
"status": "done",
"title": "Audit action enum amendment (ADR-018)",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-subject-linkage-types"
],
"blocks": [
"03-core-consent-foundation",
"06-core-dsr"
]
},
"03-core-consent-foundation": {
"status": "done",
"title": "core-consent foundation — types, brand, withConsent wrapper, conformance extension, ESLint rule",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"02-audit-enum-amendment"
],
"blocks": [
"04-core-consent-implementation"
]
},
"04-core-consent-implementation": {
"status": "done",
"title": "core-consent implementation — Payload impl, DI binders, migration helpers, tRPC router",
"ac_total": 3,
"ac_completed": 3,
"depends_on": [
"03-core-consent-foundation"
],
"blocks": []
},
"05-core-consent-react": {
"status": "done",
"title": "core-consent React subpath — ConsentProvider + useConsent()",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"04-core-consent-implementation"
],
"blocks": [
"09-cookie-consent-banner"
]
},
"06-core-dsr": {
"status": "done",
"title": "core-dsr — scaffold, interfaces, Payload impls, recording doubles, handlers, dsrRouter",
"ac_total": 3,
"ac_completed": 3,
"depends_on": [
"02-audit-enum-amendment"
],
"blocks": [
"07-core-api-router-composition"
]
},
"07-core-api-router-composition": {
"status": "done",
"title": "core-api router composition — dsrRouter + consentRouter into appRouter",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"04-core-consent-implementation",
"06-core-dsr"
],
"blocks": [
"11-documentation"
]
},
"08-core-ui-scaffold": {
"status": "done",
"title": "core-ui scaffold",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"09-cookie-consent-banner"
]
},
"09-cookie-consent-banner": {
"status": "done",
"title": "CookieConsentBanner component in core-ui",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"05-core-consent-react",
"08-core-ui-scaffold"
],
"blocks": [
"11-documentation"
]
},
"10-auth-signup-migration": {
"status": "done",
"title": "auth signUp anonymous consent migration",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"04-core-consent-implementation"
],
"blocks": [
"11-documentation"
]
},
"11-documentation": {
"status": "done",
"title": "Documentation — DSR guide, consent guide, glossary, CLAUDE.md",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
}
}
},
"library-evaluation-policy": {
"status": "done",
"title": "Library evaluation policy — skill, traces, enforcement stack",
"prd": "docs/work/prds/library-evaluation-policy.prd.md",
"stories": {
"01-trace-schema-foundation": {
"status": "done",
"title": "Trace schema module + docs/library-decisions/ foundation",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"02-pre-commit-check-script": {
"status": "done",
"title": "Pre-commit check script for library trace presence",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-trace-schema-foundation"
],
"blocks": [
"06-sandcastle-reviewer-prompt"
]
},
"03-claude-hooks": {
"status": "done",
"title": "Claude PreToolUse / PostToolUse hooks for library-policy nudge",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"04-evaluate-library-skill": {
"status": "done",
"title": "evaluate-library skill (SKILL.md + supporting files)",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-trace-schema-foundation"
],
"blocks": [
"05-human-guide"
]
},
"05-human-guide": {
"status": "done",
"title": "Human reading-room guide — docs/guides/adding-a-library.md",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"04-evaluate-library-skill"
],
"blocks": [
"09-claude-md-update"
]
},
"06-sandcastle-reviewer-prompt": {
"status": "done",
"title": "Sandcastle reviewer prompt — Library-trace check section",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"02-pre-commit-check-script"
],
"blocks": []
},
"07-generator-pre-shipped-traces": {
"status": "done",
"title": "Generator templates — pre-shipped traces for optional core packages",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-trace-schema-foundation"
],
"blocks": []
},
"08-backfill-traces": {
"status": "done",
"title": "Backfill library traces for existing feature- and core-tier runtime deps",
"ac_total": 4,
"ac_completed": 4,
"depends_on": [
"01-trace-schema-foundation"
],
"blocks": []
},
"09-claude-md-update": {
"status": "done",
"title": "CLAUDE.md Key Conventions — library policy bullet",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"05-human-guide"
],
"blocks": []
}
}
},
"product-analytics-channel": {
"status": "done",
"title": "Product analytics as a fourth capture channel (ADR-024 implementation)",
"prd": "docs/work/prds/product-analytics-channel.prd.md",
"stories": {
"01-scaffold-core-analytics-package": {
"status": "done",
"title": "Scaffold @repo/core-analytics package with IAnalytics and NoopAnalytics",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": []
},
"02-recording-analytics": {
"status": "done",
"title": "Add RecordingAnalytics to @repo/core-testing",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-scaffold-core-analytics-package"
],
"blocks": [
"08-react-provider"
]
},
"03-analyzed-brand-and-with-analytics-wrapper": {
"status": "done",
"title": "Add Analyzed brand and withAnalytics wrapper",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"01-scaffold-core-analytics-package"
],
"blocks": [
"04-manifest-schema-and-wire-use-case"
]
},
"04-manifest-schema-and-wire-use-case": {
"status": "done",
"title": "Extend manifest schema and wireUseCase with analyticsEvents",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"03-analyzed-brand-and-with-analytics-wrapper"
],
"blocks": []
},
"05-assert-feature-conformance-analyzed": {
"status": "done",
"title": "Extend assertFeatureConformance to check Analyzed brand",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"04-manifest-schema-and-wire-use-case"
],
"blocks": []
},
"06-analytics-protocol-bind-context": {
"status": "done",
"title": "Add AnalyticsProtocol and BindContext.analytics",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"05-assert-feature-conformance-analyzed"
],
"blocks": [
"09-documentation"
]
},
"07-eslint-rule-no-undeclared-analytics-event": {
"status": "done",
"title": "Add no-undeclared-analytics-event ESLint rule to @repo/core-eslint",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"05-assert-feature-conformance-analyzed"
],
"blocks": [
"09-documentation"
]
},
"08-react-provider": {
"status": "done",
"title": "Add React provider to @repo/core-analytics",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"02-recording-analytics"
],
"blocks": [
"09-documentation"
]
},
"09-documentation": {
"status": "done",
"title": "Documentation — analytics.md, conformance-quickref, CLAUDE.md, template-tiers",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": []
}
}
},
"security-headers-rate-limit-sbom": {
"status": "done",
"title": "Security headers + rate-limit primitive + SBOM in CI — Epic C of ADR-025",
"prd": "docs/work/prds/security-headers-rate-limit-sbom.prd.md",
"stories": {
"01-rate-limit-type-primitives": {
"status": "done",
"title": "Rate-limit type primitives and manifest field",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"02-rate-limit-implementations": {
"status": "done",
"title": "Rate-limit implementations — Noop, InMemory, Recording",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"01-rate-limit-type-primitives"
],
"blocks": []
},
"03-no-undeclared-rate-limit-eslint-rule": {
"status": "done",
"title": "`no-undeclared-rate-limit` ESLint rule",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-rate-limit-type-primitives"
],
"blocks": [
"05-auth-signin-rate-limit-backfill"
]
},
"04-with-rate-limit-wrapper-and-conformance": {
"status": "done",
"title": "`withRateLimit` wrapper and conformance extensions",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"01-rate-limit-type-primitives",
"02-rate-limit-implementations"
],
"blocks": [
"05-auth-signin-rate-limit-backfill"
]
},
"05-auth-signin-rate-limit-backfill": {
"status": "done",
"title": "auth.signIn rate-limit backfill",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"06-security-headers-core-module": {
"status": "done",
"title": "Security headers core module",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": [
"07-security-header-adapters"
]
},
"07-security-header-adapters": {
"status": "done",
"title": "Per-framework security header adapters",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"06-security-headers-core-module"
],
"blocks": [
"08-app-wiring-web-next",
"09-app-wiring-web-tanstack-and-cms"
]
},
"08-app-wiring-web-next": {
"status": "done",
"title": "App wiring: web-next",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [
"07-security-header-adapters"
],
"blocks": []
},
"09-app-wiring-web-tanstack-and-cms": {
"status": "done",
"title": "App wiring: web-tanstack and cms",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [
"07-security-header-adapters"
],
"blocks": []
},
"10-sbom-ci-workflow": {
"status": "done",
"title": "SBOM CI workflow and ADR-023 amendment",
"ac_total": 1,
"ac_completed": 1,
"depends_on": [],
"blocks": []
},
"11-documentation": {
"status": "done",
"title": "Documentation and conformance reference updates",
"ac_total": 2,
"ac_completed": 2,
"depends_on": [],
"blocks": []
}
}
}
},
"ready": [],
"blocked": [],
"needs_prd_ship": []
}