rdmbair15m5-changelog-20260923-0850-tyrell-boot-resume-engine-and-mcp-delivery
rdmbair15m5-changelog-20260923-0850-tyrell-boot-resume-engine-and-mcp-delivery
Complete delivery of native TyrellCore Boot Resume Engine,
tyrell resume CLI subcommands (status,
evaluate, boot), and
boot_resume_status MCP tool resolving FEAT-20260831-14
under EPIC-20260831-01.
Scope
- Hosts:
rdmbair15m5(execution host),rdmsm4x(canonical hub) - Repositories:
apps/Tyrell,issues
Summary of Changes
TyrellCore Resume Engine (
Sources/TyrellCore/Resume/- commit7b0e6a0):- Implemented
BootDetector: reads Darwinkern.boottimesysctl epoch and manages atomic state persistence in~/Library/Application Support/Tyrell/boot_receipt.json. - Implemented
BootModels:BootRecord,ResumeCandidate,Eligibility,PruneReason,IdentityCollision,BootDigest. - Implemented
PinnedSessionReader: ingests legacyPINNED-SESSION-*files and modernpins.d/*.pinwith vendor classification (.claude,.agy,.codex,.cursor) and link-pointer dereferencing. - Implemented
BootResumeEngine: joins candidates across pins, session records, and ticket leases; prunes missing transcripts, active live sessions (<300s mtime), and closed/resolved tickets; flags FR-6 identity collisions; ranks tickets (blocked before in-progress); and enforces FR-5 admission cap (top N admitted, remainder withheld). - Added unit test suite
BootResumeEngineTests: 8 test cases covering all edge cases.
- Implemented
Tyrell CLI Integration (
Sources/tyrell/Tyrell.swift- commit37161ac):- Added
tyrell resume [status|evaluate|boot]subcommand supporting--cap N,--json, and--execute. - Implemented formatted ANSI table renderer
printBootResumeDigestpartitioned into Admitted (green), Withheld (yellow), Pruned (dim), and Collisions (red). - Registered
resumecommand in standard help output.
- Added
Tyrell MCP Integration (
Sources/tyrell-mcp/MCPMain.swift- commit37161ac):- Registered
boot_resume_statusnative MCP tool intoolList. - Implemented JSON-RPC tool handler returning structured
BootStatusPayload(bootRecord+digest).
- Registered
Ticket Resolution & Verification (
issues- commitfc1dae6):- Updated and verified
FEAT-20260831-14in/Users/richh/dev/issues/resolved/. - Reindexed ticket store SQLite database and regenerated dashboard.
- Updated and verified
Exact Files Touched
apps/Tyrell/Sources/TyrellCore/Resume/BootDetector.swift(new)apps/Tyrell/Sources/TyrellCore/Resume/BootModels.swift(new)apps/Tyrell/Sources/TyrellCore/Resume/BootResumeEngine.swift(new)apps/Tyrell/Sources/TyrellCore/Resume/PinnedSessionReader.swift(new)apps/Tyrell/Tests/TyrellCoreTests/BootResumeEngineTests.swift(new)apps/Tyrell/Sources/tyrell/Tyrell.swift(modified)apps/Tyrell/Sources/tyrell-mcp/MCPMain.swift(modified)issues/resolved/FEAT-20260831-14-boot-resume-engine-detect-reboot-join-se.md(modified)
Verification Evidence
swift test --filter BootResumeEngineTests: 8/8 tests passed in 0.009s across all 6 test targets.- Live CLI invocation
.build/debug/tyrell resume status:- Verified
NEW BOOTdetection on hostrdmbair15m5(epoch1790088680). - Ran
.build/debug/tyrell resume boot: Verified atomic persistence ofboot_receipt.json. - Re-ran
.build/debug/tyrell resume status: Verified status transition toSETTLED. - Verified JSON formatting via
.build/debug/tyrell resume status --json.
- Verified
- Live MCP invocation
.build/debug/tyrell-mcp:- Called
boot_resume_statusvia stdio JSON-RPC; returned"isError": falsewith validbootRecordanddigestpayload. - Verified
tools/listenumeratesboot_resume_status.
- Called
- Commits pushed:
apps/Tyrell:37161aconorigin/main(git.ecs0.net), mirrored tobackup/main(GitHub) and pulled tordmsm4x.issues:fc1dae6onfleet/main(git.ecs0.net) andbackup/main(GitHub).
How to Undo
- Roll back
apps/Tyrellcommit viagit revert 37161ac. - Remove
~/Library/Application Support/Tyrell/boot_receipt.json.