Skip to content

feat(demo): add scenario fixture for demo command (#202) - #225

Merged
MongLong0214 merged 1 commit into
devfrom
feat-issue-202
Jul 30, 2026
Merged

feat(demo): add scenario fixture for demo command (#202)#225
MongLong0214 merged 1 commit into
devfrom
feat-issue-202

Conversation

@MongLong0214

Copy link
Copy Markdown
Owner

Summary

T-1010 (#202) — Demo scenario fixture.

Adds src/demo/fixture.ts: pure static data module exporting:

  • predecessorCommitMessage — a schema-valid commit message (will be computed as superseded)
  • successorCommitMessage — carries Supersedes: r-demo01 (will be computed as active)
  • proposalText — re-proposes the reversed approach (used by T-1011)
  • targetPath, expectedActiveRecordId, expectedSupersededRecordId

Lifecycle is computed by foldLifecycle, never authored in the fixture.

What was tested

  • RED: module resolution failure confirmed before implementation
  • GREEN: 6 tests pass in test/demo-fixture.test.ts
  • Mutation oracles: removing Supersedes trailer → test fails; removing Record-Id → test fails; changing prose body → test still passes
  • Full suite: 46 files, 1506 passed, 1 skipped (no regression)
  • Both typechecks pass (tsconfig.json and bench/tsconfig.json)
  • dist/ rebuilt and committed

Closes #202

Define the static data module for the demo command: one predecessor decision
(will be computed as superseded once the successor lands in history), one
successor that retires it via Supersedes trailer (computed as active), and a
proposal text that re-proposes the reversed approach.

The fixture exports raw commit-message strings and identifiers only. Lifecycle
is never stated — it is computed by foldLifecycle from the Supersedes trailer
across chronologically ordered records (binding constraint from audit).

Closes #202

Limit: fixture validation requires git in PATH for parseCommitMessage
Blast: local
Undo: easy
Certainty: firm
Record-Id: r-t1010demo
Provenance: authored
CommitLore-Version: 2.0.0
@github-actions

Copy link
Copy Markdown

CommitLore — record lint

Trailers: clean — 1 commit in origin/docs-gate2-amendments..9820c212fea456574912820cd4ec9bb957d48ce4
Active constraints: 1 limits · 0 ruled-out · 0 warnings — from 1 record over 5 changed paths

Limits (1)

  • r-t1010demo 9820c21 — fixture validation requires git in PATH for parseCommitMessage

git log --follow accepts exactly one pathspec, so renames are not followed for 5 paths; query one path at a time to follow its rename chain

Trailer violations fail this check. Active constraints are informational — they are what the repository already decided, not a verdict on this PR.

@MongLong0214
MongLong0214 changed the base branch from docs-gate2-amendments to dev July 30, 2026 08:52
@MongLong0214
MongLong0214 merged commit d9707f8 into dev Jul 30, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

T-1010 · Demo scenario fixture

1 participant