docs: add core lifecycle implementation plan with 12 tasks

Detailed step-by-step plan covering ClosedState enum, close reason
tracking, ephemeral port, graceful shutdown, flush-before-close,
lame duck mode, PID/ports files, NKey stubs, signal handling, and
differences.md update.
This commit is contained in:
Joseph Doherty
2026-02-22 23:31:01 -05:00
parent c2dc503e2e
commit 149c852510
2 changed files with 1649 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,18 @@
{
"planPath": "docs/plans/2026-02-22-core-lifecycle-plan.md",
"tasks": [
{"id": 5, "subject": "Task 0: Create ClosedState enum", "status": "pending"},
{"id": 6, "subject": "Task 1: Add close reason tracking to NatsClient", "status": "pending", "blockedBy": [5]},
{"id": 7, "subject": "Task 2: Add NatsOptions for lifecycle features", "status": "pending"},
{"id": 8, "subject": "Task 3: Ephemeral port support", "status": "pending"},
{"id": 9, "subject": "Task 4: Graceful shutdown infrastructure", "status": "pending", "blockedBy": [5, 6, 7, 8]},
{"id": 10, "subject": "Task 5: Flush pending data before close", "status": "pending", "blockedBy": [9]},
{"id": 11, "subject": "Task 6: Lame duck mode", "status": "pending", "blockedBy": [9]},
{"id": 12, "subject": "Task 7: PID file and ports file", "status": "pending", "blockedBy": [9]},
{"id": 13, "subject": "Task 8: System account and NKey identity stubs", "status": "pending"},
{"id": 14, "subject": "Task 9: Signal handling and CLI stubs", "status": "pending", "blockedBy": [11]},
{"id": 15, "subject": "Task 10: Update differences.md", "status": "pending", "blockedBy": [14]},
{"id": 16, "subject": "Task 11: Final verification", "status": "pending", "blockedBy": [15]}
],
"lastUpdated": "2026-02-22T00:00:00Z"
}