Skip to content

refactor(core): centralize verified run catalog#52

Merged
ElbertePlinio merged 1 commit into
mainfrom
refactor/verified-run-catalog
Jul 19, 2026
Merged

refactor(core): centralize verified run catalog#52
ElbertePlinio merged 1 commit into
mainfrom
refactor/verified-run-catalog

Conversation

@ElbertePlinio

Copy link
Copy Markdown
Member

Summary

  • add one verified core run catalog for ordered root discovery, duplicate precedence, corrupt-entry handling, and directory/manifest identity binding
  • centralize verified root-file reads with symlink, inode, and directory-swap protection
  • migrate core listRuns, evidence retention, CLI artifacts, MCP artifact tools, and MCP resources to catalog entries
  • keep the current project-local root only; Store run artifacts outside project repositories by default #34 storage modes and migration are intentionally out of scope

Decisions

  • manifest runId mismatches fail closed and the entry is omitted
  • the first valid duplicate in root-precedence order wins
  • equal timestamps use locale-independent run-ID ordering
  • genuine missing optional journals remain empty; unsafe or unreadable journals fail closed

Validation

  • bun run test packages/core/test/run-catalog.test.ts packages/core/test/run.test.ts packages/core/test/evidence.test.ts (93 passed)
  • bun run test packages/mcp-server/test/resources.test.ts packages/mcp-server/test/tools.test.ts (58 passed)
  • bun run test packages/cli/test/commands.test.ts (43 passed)
  • bun run typecheck
  • bun run build
  • serious-backend local review plus targeted fix verification: clean

Refs #44 (CAND-3)

@ElbertePlinio
ElbertePlinio merged commit 7f089c6 into main Jul 19, 2026
1 check passed
@ElbertePlinio
ElbertePlinio deleted the refactor/verified-run-catalog branch July 19, 2026 21:35
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.

1 participant