From 6b5c70dd19acfe170dbe93abd0bfec141004ba5e Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Wed, 8 Jul 2026 15:37:41 -0400 Subject: [PATCH] docs(archreview): reconcile master tracker + tasks.json with P0 completion (10 tasks done) and SBR follow-up --- archreview/plans/00-MASTER-TRACKER.md | 12 +++++++----- .../PLAN-01-cluster-host-failover.md.tasks.json | 6 +++--- ...-02-communication-store-and-forward.md.tasks.json | 4 ++-- ...N-05-templates-deployment-transport.md.tasks.json | 2 +- .../PLAN-07-ui-management-security.md.tasks.json | 6 +++--- .../plans/PLAN-08-conventions-tests.md.tasks.json | 2 +- 6 files changed, 17 insertions(+), 15 deletions(-) diff --git a/archreview/plans/00-MASTER-TRACKER.md b/archreview/plans/00-MASTER-TRACKER.md index 22e126f5..0d507060 100644 --- a/archreview/plans/00-MASTER-TRACKER.md +++ b/archreview/plans/00-MASTER-TRACKER.md @@ -10,17 +10,19 @@ Every plan follows the TDD bite-sized-task format and ships a co-located `.tasks | Plan | Domain | Tasks | Done | Status | Findings coverage | |------|--------|------:|-----:|--------|-------------------| -| [PLAN-01](PLAN-01-cluster-host-failover.md) | Cluster, Host & Failover | 23 | 0 | โฌœ Not started | 28 findings: 20 fixed, 3 โ†’ other plans, 3 accepted, 2 roadmap-deferred | -| [PLAN-02](PLAN-02-communication-store-and-forward.md) | Communication & S&F | 24 | 0 | โฌœ Not started | 28 findings: 25 fixed, 1 โ†’ plan 01, 1 deferred (serializer swap), 1 won't-fix | +| [PLAN-01](PLAN-01-cluster-host-failover.md) | Cluster, Host & Failover | 23 | 3 | ๐ŸŸจ In progress (P0: T1, T3, T4) | 28 findings: 20 fixed, 3 โ†’ other plans, 3 accepted, 2 roadmap-deferred | +| [PLAN-02](PLAN-02-communication-store-and-forward.md) | Communication & S&F | 24 | 2 | ๐ŸŸจ In progress (P0: T1, T2) | 28 findings: 25 fixed, 1 โ†’ plan 01, 1 deferred (serializer swap), 1 won't-fix | | [PLAN-03](PLAN-03-site-runtime-dcl.md) | Site Runtime & DCL | 26 | 0 | โฌœ Not started | 28 actionable: 25 fixed, 3 deferred with rationale | | [PLAN-04](PLAN-04-data-audit-backbone.md) | Data & Audit Backbone | 26 | 0 | โฌœ Not started | 27 items: 22 fixed, 4 deferred, 1 won't-fix (incl. NodeB reconcile from report 08) | -| [PLAN-05](PLAN-05-templates-deployment-transport.md) | Templates, Deployment & Transport | 25 | 0 | โฌœ Not started | 33 line-items: 27 fixed, 6 deferred with rationale | +| [PLAN-05](PLAN-05-templates-deployment-transport.md) | Templates, Deployment & Transport | 25 | 1 | ๐ŸŸจ In progress (P0: T1) | 33 line-items: 27 fixed, 6 deferred with rationale | | [PLAN-06](PLAN-06-edge-integrations.md) | Edge Integrations | 24 | 0 | โฌœ Not started | 24 findings: 21 fixed, 3 deferred/won't-fix | -| [PLAN-07](PLAN-07-ui-management-security.md) | UI, Management & Security | 33 | 0 | โฌœ Not started | 24 items: 20 fixed, 3 partial (deferrals documented), 1 won't-fix | -| [PLAN-08](PLAN-08-conventions-tests.md) | Conventions & Tests | 11 | 0 | โฌœ Not started | 13 covered, 4 owned by other plans, ~20 triaged into deferred-work register | +| [PLAN-07](PLAN-07-ui-management-security.md) | UI, Management & Security | 33 | 3 | ๐ŸŸจ In progress (P0: T1, T2, T3) | 24 items: 20 fixed, 3 partial (deferrals documented), 1 won't-fix | +| [PLAN-08](PLAN-08-conventions-tests.md) | Conventions & Tests | 11 | 1 | ๐ŸŸจ In progress (P0: T1) | 13 covered, 4 owned by other plans, ~20 triaged into deferred-work register | Status values: โฌœ Not started ยท ๐ŸŸจ In progress ยท โœ… Complete ยท โธ Blocked +**Progress:** P0 (Wave 0) complete โ€” **10 of 192 tasks done** (2026-07-08): PLAN-01 T1/T3/T4, PLAN-02 T1/T2, PLAN-05 T1, PLAN-07 T1/T2/T3, PLAN-08 T1. Merged to `main` (`3f8e18c6`). One follow-up surfaced during execution โ€” see the [active-node-crash SBR gap](#follow-up-discovered-during-p0-execution-2026-07-08) in the deferred registry. + ## P0 โ€” Do These First (regardless of plan order) **โœ… All six delivered 2026-07-08** on branch `archreview-p0` (worktree). TDD throughout; full solution builds clean; touched suites green (Host, Communication 244, Security 163, Transport 127+63, IntegrationTests cluster rig). One finding surfaced โ€” see the active-node-crash SBR gap in the deferred registry below. diff --git a/archreview/plans/PLAN-01-cluster-host-failover.md.tasks.json b/archreview/plans/PLAN-01-cluster-host-failover.md.tasks.json index f218f584..ecc86d82 100644 --- a/archreview/plans/PLAN-01-cluster-host-failover.md.tasks.json +++ b/archreview/plans/PLAN-01-cluster-host-failover.md.tasks.json @@ -1,10 +1,10 @@ { "planPath": "archreview/plans/PLAN-01-cluster-host-failover.md", "tasks": [ - { "id": 1, "subject": "Task 1: Enable the SBR downing provider in BuildHocon", "status": "pending", "blockedBy": [] }, + { "id": 1, "subject": "Task 1: Enable the SBR downing provider in BuildHocon", "status": "completed", "blockedBy": [] }, { "id": 2, "subject": "Task 2: Raise the cluster-leave CoordinatedShutdown phase timeout above the drain budget", "status": "pending", "blockedBy": [1] }, - { "id": 3, "subject": "Task 3: Two-node in-process cluster fixture (the reusable failover rig)", "status": "pending", "blockedBy": [1] }, - { "id": 4, "subject": "Task 4: SBR behavioral proof โ€” kill the oldest node, assert downing + singleton migration", "status": "pending", "blockedBy": [3] }, + { "id": 3, "subject": "Task 3: Two-node in-process cluster fixture (the reusable failover rig)", "status": "completed", "blockedBy": [1] }, + { "id": 4, "subject": "Task 4: SBR behavioral proof โ€” DELIVERED as younger-node-crash (SBR downs it, oldest keeps singleton); the planned oldest-crash 'singleton migration' is impossible under 2-node keep-oldest โ€” see master-tracker follow-up", "status": "completed", "blockedBy": [3] }, { "id": 5, "subject": "Task 5: ClusterActivityEvaluator โ€” single oldest-member \"active node\" definition", "status": "pending", "blockedBy": [] }, { "id": 6, "subject": "Task 6: Rewire ActiveNodeGate, AkkaClusterNodeProvider and Primary labels onto the evaluator", "status": "pending", "blockedBy": [5] }, { "id": 7, "subject": "Task 7: Oldest-based /health/active check + require DB reachability for Active", "status": "pending", "blockedBy": [5] }, diff --git a/archreview/plans/PLAN-02-communication-store-and-forward.md.tasks.json b/archreview/plans/PLAN-02-communication-store-and-forward.md.tasks.json index 3b46c719..837a8bbd 100644 --- a/archreview/plans/PLAN-02-communication-store-and-forward.md.tasks.json +++ b/archreview/plans/PLAN-02-communication-store-and-forward.md.tasks.json @@ -1,8 +1,8 @@ { "planPath": "archreview/plans/PLAN-02-communication-store-and-forward.md", "tasks": [ - { "id": 1, "subject": "Task 1: Generation-suffixed, sanitized ClusterClient actor names", "status": "pending", "blockedBy": [] }, - { "id": 2, "subject": "Task 2: Guard client creation in the refresh loop + real-factory address-edit lifecycle test", "status": "pending", "blockedBy": [1] }, + { "id": 1, "subject": "Task 1: Generation-suffixed, sanitized ClusterClient actor names", "status": "completed", "blockedBy": [] }, + { "id": 2, "subject": "Task 2: Guard client creation in the refresh loop + real-factory address-edit lifecycle test", "status": "completed", "blockedBy": [1] }, { "id": 3, "subject": "Task 3: Active-node delivery gate on the S&F retry sweep", "status": "pending", "blockedBy": [] }, { "id": 4, "subject": "Task 4: Wire the delivery gate in the Host + align the S&F design doc", "status": "pending", "blockedBy": [3] }, { "id": 5, "subject": "Task 5: Key the gRPC client cache by (site, endpoint)", "status": "pending", "blockedBy": [] }, diff --git a/archreview/plans/PLAN-05-templates-deployment-transport.md.tasks.json b/archreview/plans/PLAN-05-templates-deployment-transport.md.tasks.json index d34bc328..e9132f60 100644 --- a/archreview/plans/PLAN-05-templates-deployment-transport.md.tasks.json +++ b/archreview/plans/PLAN-05-templates-deployment-transport.md.tasks.json @@ -1,7 +1,7 @@ { "planPath": "archreview/plans/PLAN-05-templates-deployment-transport.md", "tasks": [ - { "id": 1, "subject": "Task 1: Wire template inheritance edges in the import apply path", "status": "pending", "blockedBy": [] }, + { "id": 1, "subject": "Task 1: Wire template inheritance edges in the import apply path", "status": "completed", "blockedBy": [] }, { "id": 2, "subject": "Task 2: Import-time acyclicity check over the merged template graph", "status": "pending", "blockedBy": [1] }, { "id": 3, "subject": "Task 3: Carry MinTimeBetweenRuns/ExecutionTimeoutSeconds through import", "status": "pending", "blockedBy": [2] }, { "id": 4, "subject": "Task 4: Add LockedInDerived to template child DTOs and apply paths", "status": "pending", "blockedBy": [3] }, diff --git a/archreview/plans/PLAN-07-ui-management-security.md.tasks.json b/archreview/plans/PLAN-07-ui-management-security.md.tasks.json index 1df0971b..bf9f637a 100644 --- a/archreview/plans/PLAN-07-ui-management-security.md.tasks.json +++ b/archreview/plans/PLAN-07-ui-management-security.md.tasks.json @@ -1,9 +1,9 @@ { "planPath": "archreview/plans/PLAN-07-ui-management-security.md", "tasks": [ - { "id": 1, "subject": "Task 1: DisableLoginGuard โ€” refuse the flag outside Development", "status": "pending", "blockedBy": [] }, - { "id": 2, "subject": "Task 2: Wire the guard at the Host composition root + doc", "status": "pending", "blockedBy": [1] }, - { "id": 3, "subject": "Task 3: Scrub deploy/wonder-app-vd03 โ€” remove DisableLogin: true", "status": "pending", "blockedBy": [] }, + { "id": 1, "subject": "Task 1: DisableLoginGuard โ€” refuse the flag outside Development", "status": "completed", "blockedBy": [] }, + { "id": 2, "subject": "Task 2: Wire the guard at the Host composition root + doc", "status": "completed", "blockedBy": [1] }, + { "id": 3, "subject": "Task 3: Scrub deploy/wonder-app-vd03 โ€” remove DisableLogin: true (on-disk only; deploy/ is gitignored)", "status": "completed", "blockedBy": [] }, { "id": 4, "subject": "Task 4: ArtifactDeploymentService.DeployToSiteAsync", "status": "pending", "blockedBy": [] }, { "id": 5, "subject": "Task 5: HandleDeployArtifacts honors SiteId + site-scope enforcement + docs", "status": "pending", "blockedBy": [4] }, { "id": 6, "subject": "Task 6: ConfigSecretScrubber โ€” JSON secret elision + sentinel merge", "status": "pending", "blockedBy": [] }, diff --git a/archreview/plans/PLAN-08-conventions-tests.md.tasks.json b/archreview/plans/PLAN-08-conventions-tests.md.tasks.json index 78b9e9e2..887c8e1c 100644 --- a/archreview/plans/PLAN-08-conventions-tests.md.tasks.json +++ b/archreview/plans/PLAN-08-conventions-tests.md.tasks.json @@ -4,7 +4,7 @@ { "id": 1, "subject": "Task 1: Add CLI.Tests to the slnx and retire the gotcha documentation", - "status": "pending", + "status": "completed", "blockedBy": [] }, {