# Prometheus Strict Dogfood Evidence — 2026-05-22

| Scenario | Intent | Rounds | omx question calls | Questions/round | Absorbed count | Fan-out |
| --- | --- | ---: | ---: | --- | ---: | --- |
| A | trivial | 0 | 0 | N/A | 3 | 0 |
| B | simple | 1 | 1 | 1 | 2 | 1 explore |
| C | architecture | 2 | 2 | 3, 2 | 6 | 1 explore + 1 researcher |

## Scenario A — Trivial

Prompt: `$prometheus-strict "fix typo 'managment' → 'management' in README.md line 42"`

### Agent-executed dry-run transcript
- Intent classification: `trivial` because this is a single-line typo/doc fix with explicit target text and file.
- Fan-out: skipped by `<research_fan_out>` trivial rule (`0 explore, 0 researcher`).
- Round count: `0`.
- `omx question` invocation count: `0`.
- Questions per round: `N/A`.
- Absorbed-with-citation count: `3`.

### 6-item checklist final state
| Item | State | Basis |
| --- | --- | --- |
| objective | YES / USER_ANSWERED | typo replacement named in prompt |
| scope IN+OUT | YES / USER_ANSWERED | IN `README.md line 42`; OUT all other files |
| acceptance | YES / INFERRED_FROM_SPEC | target string becomes `management`, no `managment` at line |
| test strategy | YES / ABSORBED_WITH_CITATION | Agent-QA only for doc typo; no automated test needed |
| handoff target | YES / INFERRED_FROM_SPEC | direct executor, not `$team` |
| no outstanding CRITICAL | YES / ABSORBED_WITH_CITATION | no Plan-A/Plan-B divergence across 5 axes |

### Oracle plan output
1. Read `README.md` around line 42.
2. Replace `managment` with `management` only at the requested location.
3. Verify with `grep -n "managment\|management" README.md`.
Stop condition: requested typo is corrected and no unrelated files changed.


## Scenario B — Simple

Prompt: `$prometheus-strict "add a unit test for the foo() function in src/utils/foo.ts"`

### Agent-executed dry-run transcript
- Intent classification: `simple` because this is a 1-3 file test addition for a named function/path.
- Fan-out: `1 explore` required to confirm the existing test runner/location; `0 researcher` because no external dependency is named.
- Round count: `1`.
- `omx question` invocation count: `1`.
- Questions per round: `1`.
- Absorbed:surfaced ratio: `2:1`.

### `omx question` batch
Q1: For `foo()` in `src/utils/foo.ts`, should the first unit test cover only the documented happy path, or include the primary error/edge branch too?
- Option 1: Happy path only — minimal regression test for current behavior.
- Option 2: Happy + edge — broader test if edge behavior is part of acceptance.

### Defaults Applied
- ABSORBED_WITH_CITATION: Use the repo's existing Node test runner/layout after explore; do not ask framework choice.
- ABSORBED_WITH_CITATION: File absence or exact colocated test path is executor-resolved from repo convention; do not block user.

### 6-item checklist final state
| Item | State | Basis |
| --- | --- | --- |
| objective | YES / USER_ANSWERED | unit test for `foo()` named |
| scope IN+OUT | YES / USER_ANSWERED | IN test for `src/utils/foo.ts`; OUT implementation changes unless needed to expose function |
| acceptance | YES / USER_ANSWERED | selected test coverage option determines acceptance |
| test strategy | YES / INFERRED_FROM_SPEC | unit test only |
| handoff target | YES / INFERRED_FROM_SPEC | direct executor |
| no outstanding CRITICAL | YES / ABSORBED_WITH_CITATION | remaining gaps do not alter 5 CRITICAL axes |

### Oracle plan output
1. Explore existing test layout and `foo()` export shape.
2. Add the selected unit test near existing utility tests.
3. Run the focused test command and build if required.


## Scenario C — Architecture

Prompt: `$prometheus-strict "design the auth session migration from cookie-based to JWT, including rollback path and consumer impact analysis"`

### Agent-executed dry-run transcript
- Intent classification: `architecture` because the task names cross-system auth/session migration, rollback, and consumer impact.
- Fan-out: fired (`1 explore` for current module boundaries + `1 researcher` for JWT migration/session patterns).
- Round count: `2`.
- `omx question` invocation count: `2`.
- Questions per round: `3`, then `2`.
- Absorbed-with-citation total: `6`.
- Absorbed:surfaced ratio: `6:5`; absorbed gaps exceed surfaced CRITICAL questions while every surfaced question changes a CRITICAL axis.

### Round 1 `omx question` batch
Q1 scope boundary: Should JWT initially coexist with cookie sessions, or replace cookie sessions at cutover?
Q2 rollback contract: Is rollback allowed to invalidate newly issued JWTs, or must JWTs remain valid during rollback?
Q3 consumer impact: Which consumers must be migration-compatible on day one: web only, API clients, or both?

### Round 2 `omx question` batch
Q4 acceptance: What proves migration success: auth parity tests only, staged canary metrics, or both?
Q5 handoff target: Should execution be a single `$ultragoal` story or split into `$team` lanes for auth core / consumers / QA?

### Defaults Applied
- ABSORBED_WITH_CITATION: Token signing algorithm defaults to existing security framework recommendation; revisit if compliance requires otherwise.
- ABSORBED_WITH_CITATION: Test strategy defaults to TDD for migration-critical auth paths.
- ABSORBED_WITH_CITATION: Session TTL remains current cookie TTL unless product explicitly changes it.
- ABSORBED_WITH_CITATION: Documentation update is included as executor acceptance evidence, not a separate user question.
- ABSORBED_WITH_CITATION: Feature-flag naming follows existing repo convention; executor verifies path.
- ABSORBED_WITH_CITATION: Monitoring threshold defaults to current auth error budget unless product provides a stricter SLO.

### 6-item checklist final state
| Item | State | Basis |
| --- | --- | --- |
| objective | YES / USER_ANSWERED | design auth session migration cookie → JWT |
| scope IN+OUT | YES / USER_ANSWERED | coexist/replace and consumer scope answered |
| acceptance | YES / USER_ANSWERED | selected migration evidence answered |
| test strategy | YES / ABSORBED_WITH_CITATION | TDD migration safety default |
| handoff target | YES / USER_ANSWERED | `$ultragoal` vs `$team` answered |
| no outstanding CRITICAL | YES / ABSORBED_WITH_CITATION | all remaining gaps absorbed or carried as non-blocking risks |

### Oracle final plan output
1. Map current cookie session issue/validate/refresh/logout boundaries.
2. Define JWT claims, signing/rotation, and compatibility layer.
3. Implement migration behind a reversible feature flag.
4. Add parity tests for cookie and JWT session validation, refresh, logout, and expiry.
5. Stage rollout by consumer group and monitor auth failure rate.
6. Rollback by disabling JWT issuance, preserving validation for already-issued JWTs if selected in Round 1/2 answers.
