# Acceptance Criteria Failure Evidence

Date: 2026-05-17
Task: AC-FAILURE-EVIDENCE-20260517

Scope: failure evidence only. This report does not remediate the failures.

## Current Test Failure

Command:

```sh
node --test test/docs-adoption.test.js
```

Result:

- 2 passing
- 1 failing

Failing test:

- `test/docs-adoption.test.js:51`
- Test name: `first-run onboarding defines visible value before production governance`

Expected:

- `README.md`
- `docs/adoption-guide.md`
- `docs/core-command-surface.md`
- `site/src/App.jsx`

must each match:

```text
/First visible value/i
```

Observed:

- `README.md` contains `First Visible Value`.
- `docs/adoption-guide.md` contains `First visible value`.
- `docs/core-command-surface.md` contains `first visible value`.
- `site/src/App.jsx` does not contain that literal text anymore.
- The site content now comes from generated data:
  - `site/src/generated-site-content.js` contains `First visible value in minutes`.
  - `docs/site-manifest.json` contains `First Visible Value`.

Probable cause:

- The site was changed from hardcoded page copy to generated content, but the test still validates literal copy inside `site/src/App.jsx`.

Impact:

- `npm test` fails.
- `orchestra release check --json` fails its `tests` check.
- The release readiness subcheck still passes, but the full release check does not.

## Historical AC Traceability Failure

Source report:

- `docs/reports/ac-history-dry-run-20260517.md`

Dry-run result:

- Historical completed tasks evaluated: 77
- Acceptance criteria evaluated: 324
- Cumple: 8
- No cumple: 316

Coverage status breakdown:

- `covered`: 8
- `planned`: 267
- `gap`: 20
- `skipped`: 29

Interpretation:

- Most historical acceptance criteria are not currently machine-verifiable through linked evidence.
- This does not prove every behavior is absent.
- It does prove the repository cannot currently demonstrate AC compliance for most historical work using the current evidence model.

## Explicit Gap Examples

The dry-run identified these explicit `gap` criteria among others:

- `WEB-E2E`: npm script runs locally.
- `SETUP-TASK-CONTRACT`: contract includes backlog story, AC, DoR, DoD, dependencies, risks, and acceptance status.
- `PORTABILITY`: validate workflow runs without Unix shell assumptions and CI covers cross-platform smoke paths.
- `QA-RELEASE`: release check reports uncovered AC, blocker reviews, active locks, and missing rollback/smoke evidence.
- `UPGRADE-DOGFOOD`: upgrade workflow can run a post-install smoke check.
- `OO-210`: redo/sign-off workflow mode observation contract.
- `OO-211`: deployment risk challenge and release readiness surfacing.
- `OO-225`: default initialization creates focused playbooks for active roles/phases.
- `GH-237`: runtime adapter setup examples and documented permission/configuration model.
- `GH-298`: dashboard partial API failure handling and E2E proof.
- `GH-295`: release check discrepancy and historical uncovered AC scoping.

## Reproducible Commands

```sh
node --test test/docs-adoption.test.js
npm test
node ./bin/orchestra.js release check --json
node ./bin/orchestra.js qa coverage --task WEB-E2E --json
```

## Recommended Remediation Order

1. Fix the current `docs-adoption` test drift caused by generated site content.
2. Re-run `npm test` and `orchestra release check --json`.
3. Convert the 20 explicit `gap` criteria into remediation tasks or accepted-risk records.
4. Backfill linked evidence for historical criteria that are already implemented but only show as `planned` or `skipped`.
