From 8406349a27fda6863440fdea1b8465b1c18b23a9 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Fri, 12 Jun 2026 07:55:54 -0400 Subject: [PATCH] =?UTF-8?q?chore(plan):=20mark=20alias-tag=20tasks=20T0?= =?UTF-8?q?=E2=80=93T10=20complete?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/2026-06-11-alias-tag.md.tasks.json | 140 ++++++++++++++++-- 1 file changed, 127 insertions(+), 13 deletions(-) diff --git a/docs/plans/2026-06-11-alias-tag.md.tasks.json b/docs/plans/2026-06-11-alias-tag.md.tasks.json index 23f14ae4..89e3cd44 100644 --- a/docs/plans/2026-06-11-alias-tag.md.tasks.json +++ b/docs/plans/2026-06-11-alias-tag.md.tasks.json @@ -4,20 +4,134 @@ "branch": "feat/uns-alias-tag", "baseBranch": "master", "baseSha": "305023aa", - "status": "pending", + "status": "in_progress", "note": "Galaxy alias tag: an equipment-scoped Tag bound to GalaxyMxGateway surfacing a Galaxy attribute under a UNS name via direct subscription, replacing relay VirtualTags. Approach A reuses the Tag entity; NO entity/EF migration. Same-file contention: Phase7Composer.cs+DeploymentArtifact.cs in T2 only; EquipmentScriptPaths.cs in T1 only; DraftValidator.cs+Tag.cs in T3 only; IUnsTreeService.cs+UnsTreeService.cs serialize T4->T5->T7; EquipmentPage.razor serializes T6->T8. T1/T2/T3 parallel after T0. BuildAliasTag (T5) reused by the converter (T7). EquipmentTagRow gains DEFAULTED IsAlias/Source so existing constructions compile.", "tasks": [ - { "id": 285, "planTask": 0, "subject": "T0: Create feature branch", "classification": "trivial", "status": "pending", "blockedBy": [] }, - { "id": 286, "planTask": 1, "subject": "T1: Commons TryParseRelayBody + tests", "classification": "small", "status": "pending", "blockedBy": [285], "parallelizableWith": [287, 288] }, - { "id": 287, "planTask": 2, "subject": "T2: Broaden equipment-tag filter (composer + artifact)", "classification": "high-risk", "status": "pending", "blockedBy": [285], "parallelizableWith": [286, 288] }, - { "id": 288, "planTask": 3, "subject": "T3: DraftValidator alias-reference check + Tag doc", "classification": "standard", "status": "pending", "blockedBy": [285], "parallelizableWith": [286, 287] }, - { "id": 289, "planTask": 4, "subject": "T4: Service read-side (DTO, gateway lookup, Source)", "classification": "standard", "status": "pending", "blockedBy": [285] }, - { "id": 290, "planTask": 5, "subject": "T5: Service write-side (Create/Update alias + guard)", "classification": "standard", "status": "pending", "blockedBy": [289] }, - { "id": 291, "planTask": 6, "subject": "T6: AliasTagModal + Tags-tab Add-alias wiring", "classification": "standard", "status": "pending", "blockedBy": [290] }, - { "id": 292, "planTask": 7, "subject": "T7: Converter service method + DTOs + tests", "classification": "high-risk", "status": "pending", "blockedBy": [286, 290] }, - { "id": 293, "planTask": 8, "subject": "T8: Converter UI (per-equipment + fleet-wide)", "classification": "standard", "status": "pending", "blockedBy": [291, 292] }, - { "id": 294, "planTask": 9, "subject": "T9: Docs (Uns.md, CLAUDE.md)", "classification": "small", "status": "pending", "blockedBy": [] }, - { "id": 295, "planTask": 10, "subject": "T10: Full-suite gate + live /run + finish", "classification": "verification", "status": "pending", "blockedBy": [287, 288, 291, 292, 293, 294] } + { + "id": 285, + "planTask": 0, + "subject": "T0: Create feature branch", + "classification": "trivial", + "status": "completed", + "blockedBy": [] + }, + { + "id": 286, + "planTask": 1, + "subject": "T1: Commons TryParseRelayBody + tests", + "classification": "small", + "status": "completed", + "blockedBy": [ + 285 + ], + "parallelizableWith": [ + 287, + 288 + ] + }, + { + "id": 287, + "planTask": 2, + "subject": "T2: Broaden equipment-tag filter (composer + artifact)", + "classification": "high-risk", + "status": "completed", + "blockedBy": [ + 285 + ], + "parallelizableWith": [ + 286, + 288 + ] + }, + { + "id": 288, + "planTask": 3, + "subject": "T3: DraftValidator alias-reference check + Tag doc", + "classification": "standard", + "status": "completed", + "blockedBy": [ + 285 + ], + "parallelizableWith": [ + 286, + 287 + ] + }, + { + "id": 289, + "planTask": 4, + "subject": "T4: Service read-side (DTO, gateway lookup, Source)", + "classification": "standard", + "status": "completed", + "blockedBy": [ + 285 + ] + }, + { + "id": 290, + "planTask": 5, + "subject": "T5: Service write-side (Create/Update alias + guard)", + "classification": "standard", + "status": "completed", + "blockedBy": [ + 289 + ] + }, + { + "id": 291, + "planTask": 6, + "subject": "T6: AliasTagModal + Tags-tab Add-alias wiring", + "classification": "standard", + "status": "completed", + "blockedBy": [ + 290 + ] + }, + { + "id": 292, + "planTask": 7, + "subject": "T7: Converter service method + DTOs + tests", + "classification": "high-risk", + "status": "completed", + "blockedBy": [ + 286, + 290 + ] + }, + { + "id": 293, + "planTask": 8, + "subject": "T8: Converter UI (per-equipment + fleet-wide)", + "classification": "standard", + "status": "completed", + "blockedBy": [ + 291, + 292 + ] + }, + { + "id": 294, + "planTask": 9, + "subject": "T9: Docs (Uns.md, CLAUDE.md)", + "classification": "small", + "status": "completed", + "blockedBy": [] + }, + { + "id": 295, + "planTask": 10, + "subject": "T10: Full-suite gate + live /run + finish", + "classification": "verification", + "status": "in_progress", + "blockedBy": [ + 287, + 288, + 291, + 292, + 293, + 294 + ] + } ], "lastUpdated": "2026-06-11" -} +} \ No newline at end of file