{"id":"ops/evidence-script-ownership","relativePath":"ops/evidence-script-ownership.md","title":"Evidence Script Ownership","markdown":"# Evidence Script Ownership\n\nThe readiness scripts are part of the product, not a parallel app. Every\nhigh-churn evidence command has one accountable owner lane, one artifact surface,\nand at least one package-script check that must stay valid when the script\nchanges.\n\nThe machine-readable source of truth is\n`src/services/evidence-script-ownership.ts`. The guard is\n`tests/services/evidence-script-ownership.test.ts`, which fails when a\nhigh-churn package command loses its owner, points at a missing script, or names\na non-existent required check. It also fails when a colon-delimited\n`package.json` script namespace such as `launch:*`, `activity:*`, `pilot:*`, or\n`monitoring:*` lacks a namespace owner, preferred entry points, and pruning\nguidance.\n\n## Owner Lanes\n\n| Owner lane | Scope | Default cadence |\n|---|---|---|\n| Strict readiness owner | `pnpm review:goals*`, closeout, and the local-vs-strict claim boundary | Per change |\n| Launch readiness owner | preflight, launch review, launch evidence, a11y, crawler, public trust, and smoke packet commands | Per launch |\n| Long-term evidence owner | public k6, telemetry, Era C exit gate, 30-day runway, and maintenance evidence | Weekly |\n| ActivityStreams adoption owner | external consumer, durable subscription guard, adoption, and partner handoff evidence | Weekly |\n| Managed pilot owner | outreach, buyer pack, activation, support, KPI, packaging, and paid-pilot proof | Weekly |\n| Continuity hardening owner | DR, pentest, disabled-system staging drill, and projection readiness evidence | Weekly |\n| AI eval owner | golden-question evals, AG2 worker evals, and AI baseline artifacts | Per change |\n| Worker operations owner | outbox, publication queue, projection drain, dead-letter, and alert commands | Weekly |\n| Product governance owner | privacy, product constraints, credibility, validation drift, docs stats, and conformance proof | Per change |\n\n## Change Rule\n\nWhen adding or changing any high-churn evidence command:\n\n1. Update `src/services/evidence-script-ownership.ts` with the package alias,\n   backing script, artifact path, required check, owner lane, and review cadence.\n2. Update the matching runbook or artifact contract doc when operator behavior\n   changes.\n3. Run\n   `node --import tsx --test tests/services/evidence-script-ownership.test.ts`.\n4. Preserve the strict-readiness distinction: local checks may prove the\n   machinery is healthy, but partner, customer, uptime, SLO, and paid-pilot\n   proof must remain real-world evidence until observed.\n\n## Escalation\n\nIf ownership is unclear, assign the command to the lane that consumes the\nartifact in `/readiness` or `pnpm review:goals`. If two lanes consume it, choose\nthe lane that can verify the artifact without enabling external side effects,\nthen document the dependent lane in the purpose text.\n\nNo command should be owned only by a README paragraph, CI workflow, or one-off\noperator memory. The registry is the durable handoff.\n\n## Namespace Grouping\n\nPackage-script prefixes are treated as operator-facing command groups. When\nadding a new `namespace:command` alias, keep it inside an existing namespace\nwhen possible. If a new namespace is necessary, add it to\n`PACKAGE_SCRIPT_NAMESPACE_CONTROLS` with:\n\n- a registered owner lane\n- the preferred entry point commands maintainers should try first\n- a pruning rule that explains when variants should be collapsed or removed\n\nCurrent operations-risk evidence measures 42 classified package-script\nnamespaces, with no unclassified namespaces and the largest namespace at 16\naliases.\n","sections":[{"level":2,"heading":"Owner Lanes","anchor":"owner-lanes"},{"level":2,"heading":"Change Rule","anchor":"change-rule"},{"level":2,"heading":"Escalation","anchor":"escalation"},{"level":2,"heading":"Namespace Grouping","anchor":"namespace-grouping"}],"html":"<h1 id=\"evidence-script-ownership\">Evidence Script Ownership</h1>\n<p>The readiness scripts are part of the product, not a parallel app. Every</p>\n<p>high-churn evidence command has one accountable owner lane, one artifact surface,</p>\n<p>and at least one package-script check that must stay valid when the script</p>\n<p>changes.</p>\n<p>The machine-readable source of truth is</p>\n<p>`src/services/evidence-script-ownership.ts`. The guard is</p>\n<p>`tests/services/evidence-script-ownership.test.ts`, which fails when a</p>\n<p>high-churn package command loses its owner, points at a missing script, or names</p>\n<p>a non-existent required check. It also fails when a colon-delimited</p>\n<p>`package.json` script namespace such as `launch:<em>`, `activity:</em>`, `pilot:*`, or</p>\n<p>`monitoring:*` lacks a namespace owner, preferred entry points, and pruning</p>\n<p>guidance.</p>\n<h2 id=\"owner-lanes\">Owner Lanes</h2>\n<p>| Owner lane | Scope | Default cadence |</p>\n<p>|---|---|---|</p>\n<p>| Strict readiness owner | `pnpm review:goals*`, closeout, and the local-vs-strict claim boundary | Per change |</p>\n<p>| Launch readiness owner | preflight, launch review, launch evidence, a11y, crawler, public trust, and smoke packet commands | Per launch |</p>\n<p>| Long-term evidence owner | public k6, telemetry, Era C exit gate, 30-day runway, and maintenance evidence | Weekly |</p>\n<p>| ActivityStreams adoption owner | external consumer, durable subscription guard, adoption, and partner handoff evidence | Weekly |</p>\n<p>| Managed pilot owner | outreach, buyer pack, activation, support, KPI, packaging, and paid-pilot proof | Weekly |</p>\n<p>| Continuity hardening owner | DR, pentest, disabled-system staging drill, and projection readiness evidence | Weekly |</p>\n<p>| AI eval owner | golden-question evals, AG2 worker evals, and AI baseline artifacts | Per change |</p>\n<p>| Worker operations owner | outbox, publication queue, projection drain, dead-letter, and alert commands | Weekly |</p>\n<p>| Product governance owner | privacy, product constraints, credibility, validation drift, docs stats, and conformance proof | Per change |</p>\n<h2 id=\"change-rule\">Change Rule</h2>\n<p>When adding or changing any high-churn evidence command:</p>\n<ol><li>Update `src/services/evidence-script-ownership.ts` with the package alias,</li></ol>\n<p>   backing script, artifact path, required check, owner lane, and review cadence.</p>\n<ol><li>Update the matching runbook or artifact contract doc when operator behavior</li></ol>\n<p>   changes.</p>\n<ol><li>Run</li></ol>\n<p>   `node --import tsx --test tests/services/evidence-script-ownership.test.ts`.</p>\n<ol><li>Preserve the strict-readiness distinction: local checks may prove the</li></ol>\n<p>   machinery is healthy, but partner, customer, uptime, SLO, and paid-pilot</p>\n<p>   proof must remain real-world evidence until observed.</p>\n<h2 id=\"escalation\">Escalation</h2>\n<p>If ownership is unclear, assign the command to the lane that consumes the</p>\n<p>artifact in `/readiness` or `pnpm review:goals`. If two lanes consume it, choose</p>\n<p>the lane that can verify the artifact without enabling external side effects,</p>\n<p>then document the dependent lane in the purpose text.</p>\n<p>No command should be owned only by a README paragraph, CI workflow, or one-off</p>\n<p>operator memory. The registry is the durable handoff.</p>\n<h2 id=\"namespace-grouping\">Namespace Grouping</h2>\n<p>Package-script prefixes are treated as operator-facing command groups. When</p>\n<p>adding a new `namespace:command` alias, keep it inside an existing namespace</p>\n<p>when possible. If a new namespace is necessary, add it to</p>\n<p>`PACKAGE_SCRIPT_NAMESPACE_CONTROLS` with:</p>\n<ul><li>a registered owner lane</li><li>the preferred entry point commands maintainers should try first</li><li>a pruning rule that explains when variants should be collapsed or removed</li></ul>\n<p>Current operations-risk evidence measures 42 classified package-script</p>\n<p>namespaces, with no unclassified namespaces and the largest namespace at 16</p>\n<p>aliases.</p>","updatedAt":"2018-10-20T01:46:40.000Z","checksum":"8432d0529cf4799d5b3aa481e85a63004723d51b66cd7162f80268f06fbbe045","checksumPrefix":"8432d0529cf4","anchorCount":4,"lineCount":69,"rawUrl":"/api/docs/content?path=ops%2Fevidence-script-ownership.md","htmlUrl":"/docs?doc=ops%2Fevidence-script-ownership.md","apiUrl":"/api/docs/content?path=ops%2Fevidence-script-ownership.md"}