From af2d419bf6bd6f5c5046b647e47a15e708385254 Mon Sep 17 00:00:00 2001 From: tegwick Date: Thu, 12 Mar 2026 03:37:32 +0100 Subject: [PATCH] chore: mark BRIDGE-WP-0001 and BRIDGE-WP-0002 workplans as completed All 39 tasks marked done; both workstreams updated to completed status in the State Hub and workplan files. Co-Authored-By: Claude Sonnet 4.6 --- .../BRIDGE-WP-0001-initial-implementation.md | 50 +++++++++---------- .../BRIDGE-WP-0002-opscatalog-extension.md | 36 ++++++------- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/workplans/BRIDGE-WP-0001-initial-implementation.md b/workplans/BRIDGE-WP-0001-initial-implementation.md index e03de7a..902581c 100644 --- a/workplans/BRIDGE-WP-0001-initial-implementation.md +++ b/workplans/BRIDGE-WP-0001-initial-implementation.md @@ -4,12 +4,12 @@ type: workplan title: "OpsBridge Initial Implementation" domain: custodian repo: ops-bridge -status: active +status: completed owner: Bernd topic_slug: custodian state_hub_workstream_id: 79112cff-9c0a-42ad-aa3d-916013001aee created: "2026-03-11" -updated: "2026-03-11" +updated: "2026-03-12" --- # BRIDGE-WP-0001 — OpsBridge Initial Implementation @@ -100,7 +100,7 @@ actors: ```task id: BRIDGE-WP-0001-T01 state_hub_task_id: 76c9ee58-10bf-4060-87bb-b73fa8cf25ea -status: todo +status: done priority: high ``` @@ -111,7 +111,7 @@ Set up `[project]`, `[project.scripts]` (entry point `bridge = bridge.cli:app`), ```task id: BRIDGE-WP-0001-T02 state_hub_task_id: b2be974c-6173-457d-9276-080ac551c105 -status: todo +status: done priority: high ``` @@ -122,7 +122,7 @@ Create `src/bridge/__init__.py` and empty module stubs: `cli.py`, `config.py`, ` ```task id: BRIDGE-WP-0001-T03 state_hub_task_id: 82f70483-91ae-4545-88af-44fe693ecb79 -status: todo +status: done priority: medium ``` @@ -139,7 +139,7 @@ Verify `uv tool install -e .` produces a working `bridge --help`. ```task id: BRIDGE-WP-0001-T04 state_hub_task_id: 495e4257-40ad-4a1b-8a71-3a311476d41e -status: todo +status: done priority: high ``` @@ -150,7 +150,7 @@ Define `TunnelConfig`, `ReconnectPolicy`, `HealthCheckConfig`, `ActorInfo` as da ```task id: BRIDGE-WP-0001-T05 state_hub_task_id: b6782df4-e692-49e1-b3a3-d65d07826907 -status: todo +status: done priority: high ``` @@ -161,7 +161,7 @@ Load `~/.config/bridge/tunnels.yaml`, validate required fields, raise clear erro ```task id: BRIDGE-WP-0001-T06 state_hub_task_id: 341c866f-8f4b-4165-9fa5-f10fe37c9252 -status: todo +status: done priority: medium ``` @@ -178,7 +178,7 @@ Test: valid config, missing required field, unknown tunnel name. ```task id: BRIDGE-WP-0001-T07 state_hub_task_id: ae5e2566-a4b1-426f-9c32-4a2c025f2927 -status: todo +status: done priority: high ``` @@ -189,7 +189,7 @@ Read/write PID file and state file under `~/.local/state/bridge/`. Check if PID ```task id: BRIDGE-WP-0001-T08 state_hub_task_id: 456a3cb5-50fa-4fed-9283-57e2d1c6fbb9 -status: todo +status: done priority: medium ``` @@ -200,7 +200,7 @@ States: `STOPPED`, `STARTING`, `CONNECTED`, `DEGRADED`, `RECONNECTING`, `FAILED` ```task id: BRIDGE-WP-0001-T09 state_hub_task_id: 0accc0b7-d013-43ad-a810-3269e64fb096 -status: todo +status: done priority: medium ``` @@ -217,7 +217,7 @@ Test: write/read state round-trip, stale PID detection without error. ```task id: BRIDGE-WP-0001-T10 state_hub_task_id: d0341e90-b48d-48ab-9e6d-82f4c365afec -status: todo +status: done priority: high ``` @@ -228,7 +228,7 @@ SSH command: `ssh -N -R {remote_port}:127.0.0.1:{local_port} -i {key} -o ServerA ```task id: BRIDGE-WP-0001-T11 state_hub_task_id: f5c91eff-fca3-4f66-b073-276a733b5a27 -status: todo +status: done priority: high ``` @@ -239,7 +239,7 @@ Exponential backoff between `backoff_initial` and `backoff_max`. Respect `max_at ```task id: BRIDGE-WP-0001-T12 state_hub_task_id: 3f4df535-0d6a-49e8-9d3a-c3926d7f230c -status: todo +status: done priority: medium ``` @@ -256,7 +256,7 @@ Catch SIGTERM/SIGINT, kill SSH subprocess, write `STOPPED` state. ```task id: BRIDGE-WP-0001-T13 state_hub_task_id: 5aaa0e35-f32a-4c68-8707-1a1e037b76f4 -status: todo +status: done priority: medium ``` @@ -267,7 +267,7 @@ Async HTTP GET via `httpx` to configured health URL. Run health check loop insid ```task id: BRIDGE-WP-0001-T14 state_hub_task_id: 599d4e28-88c8-4c2a-80ac-ca57824af467 -status: todo +status: done priority: low ``` @@ -284,7 +284,7 @@ Persist timestamp, status, HTTP code or error for display in `bridge status`. ```task id: BRIDGE-WP-0001-T15 state_hub_task_id: 2f124b16-f1e7-4e9f-ad23-9f08543db3b7 -status: todo +status: done priority: medium ``` @@ -303,7 +303,7 @@ Status table columns: `TUNNEL`, `STATE`, `ACTOR`, `HOST`, `UPTIME`, `HEALTH`. Ex ```task id: BRIDGE-WP-0001-T16 state_hub_task_id: 2c22b8fe-8a35-4887-89b2-f8fb7f43e0b6 -status: todo +status: done priority: high ``` @@ -314,7 +314,7 @@ Start named tunnel or all tunnels if name omitted. ```task id: BRIDGE-WP-0001-T17 state_hub_task_id: 768e1a8b-fdf7-4718-b00e-bc2401f57657 -status: todo +status: done priority: high ``` @@ -325,7 +325,7 @@ Stop named tunnel or all tunnels if name omitted. ```task id: BRIDGE-WP-0001-T18 state_hub_task_id: 8fd6486d-af4f-4295-a57a-a5fabbf25681 -status: todo +status: done priority: medium ``` @@ -336,7 +336,7 @@ Down then up for named tunnel or all. ```task id: BRIDGE-WP-0001-T19 state_hub_task_id: 28f3f392-9e94-43e7-811a-fa036f588e10 -status: todo +status: done priority: high ``` @@ -347,7 +347,7 @@ Table output with `--json` flag for automation. ```task id: BRIDGE-WP-0001-T20 state_hub_task_id: 43582657-b1b9-4113-88e1-2109b30f3732 -status: todo +status: done priority: medium ``` @@ -364,7 +364,7 @@ Tail log file. Defaults to last 50 lines. `--follow` for live tail. `--lines N` ```task id: BRIDGE-WP-0001-T21 state_hub_task_id: 5e3c7ac6-03fd-45e9-af64-11bde1d03ab8 -status: todo +status: done priority: medium ``` @@ -375,7 +375,7 @@ Test fixture with minimal `tunnels.yaml` pointing to localhost. Test full `up ```task id: BRIDGE-WP-0001-T22 state_hub_task_id: 8b6ac68e-d0ab-4826-8df5-ebdf30a1e23e -status: todo +status: done priority: medium ``` @@ -386,7 +386,7 @@ Test reconnect loop with a subprocess that exits immediately. ```task id: BRIDGE-WP-0001-T23 state_hub_task_id: c472bb1a-2fe2-4a88-aa6b-e18f732a3fde -status: todo +status: done priority: medium ``` diff --git a/workplans/BRIDGE-WP-0002-opscatalog-extension.md b/workplans/BRIDGE-WP-0002-opscatalog-extension.md index c0f9a67..8dfbb21 100644 --- a/workplans/BRIDGE-WP-0002-opscatalog-extension.md +++ b/workplans/BRIDGE-WP-0002-opscatalog-extension.md @@ -4,12 +4,12 @@ type: workplan title: "OpsCatalog Extension" domain: custodian repo: ops-bridge -status: active +status: completed owner: Bernd topic_slug: custodian state_hub_workstream_id: f38bfcdb-f115-4431-88b5-ce906a24199c created: "2026-03-11" -updated: "2026-03-11" +updated: "2026-03-12" --- # BRIDGE-WP-0002 — OpsCatalog Extension @@ -146,7 +146,7 @@ description: Automated remediation agent ```task id: BRIDGE-WP-0002-T01 state_hub_task_id: 21b90574-a27c-467c-8e9d-d4029a659171 -status: todo +status: done priority: high ``` @@ -166,7 +166,7 @@ directory tree; unknown `type:` values are skipped with a warning. ```task id: BRIDGE-WP-0002-T02 state_hub_task_id: 782b5b4d-1f3f-4e5d-ad46-dc57b345bda3 -status: todo +status: done priority: high ``` @@ -178,7 +178,7 @@ field. Build in-memory index: domains, targets, bridges, actors. ```task id: BRIDGE-WP-0002-T03 state_hub_task_id: 41fed4f8-7818-4ca1-bb48-6ac1089220e8 -status: todo +status: done priority: medium ``` @@ -197,7 +197,7 @@ when the catalog contains invalid entries. ```task id: BRIDGE-WP-0002-T04 state_hub_task_id: 32946d15-5516-4599-8f27-8c653dec6786 -status: todo +status: done priority: medium ``` @@ -210,7 +210,7 @@ exist; target's `reachable_via` bridge IDs must exist; bridge's `target` and ```task id: BRIDGE-WP-0002-T05 state_hub_task_id: 6061a6eb-9966-4be9-aa5e-ea7edf7fd085 -status: todo +status: done priority: medium ``` @@ -229,7 +229,7 @@ the catalog when no inline entry exists in `tunnels.yaml`. ```task id: BRIDGE-WP-0002-T06 state_hub_task_id: a92d97c8-4eec-4dd5-9b90-d9c1cba813ac -status: todo +status: done priority: high ``` @@ -243,7 +243,7 @@ has the name. ```task id: BRIDGE-WP-0002-T07 state_hub_task_id: 23799377-64f2-4c13-aa72-364770d80f91 -status: todo +status: done priority: high ``` @@ -256,7 +256,7 @@ catalog-unaware. ```task id: BRIDGE-WP-0002-T08 state_hub_task_id: d2313182-975f-409f-9d4f-ebabf66b44df -status: todo +status: done priority: medium ``` @@ -275,7 +275,7 @@ bridges provide access to each target. ```task id: BRIDGE-WP-0002-T09 state_hub_task_id: f9e508db-a19f-42be-9437-b4bdeb00a534 -status: todo +status: done priority: medium ``` @@ -288,7 +288,7 @@ Table columns: `DOMAIN`, `TARGET`, `KIND`, `BRIDGES`. `--domain ` filter. ```task id: BRIDGE-WP-0002-T10 state_hub_task_id: e288a1d3-d676-404a-a3eb-25dbb241502d -status: todo +status: done priority: low ``` @@ -306,7 +306,7 @@ bridges, and any operations notes from `docs/*.md` files in the domain directory ```task id: BRIDGE-WP-0002-T11 state_hub_task_id: 73899b70-b0ac-4f48-b362-cc2455a66f41 -status: todo +status: done priority: medium ``` @@ -317,7 +317,7 @@ List all domains and a count of targets and bridges per domain. ```task id: BRIDGE-WP-0002-T12 state_hub_task_id: e091daa2-7c20-4169-b634-1fcc469513ea -status: todo +status: done priority: medium ``` @@ -329,7 +329,7 @@ found. Useful in CI pipelines for the catalog repo. ```task id: BRIDGE-WP-0002-T13 state_hub_task_id: 9f5f4f30-bfe6-40fd-b178-2fbb396816ee -status: todo +status: done priority: low ``` @@ -346,7 +346,7 @@ Print full resolved bridge metadata including target and domain context. ```task id: BRIDGE-WP-0002-T14 state_hub_task_id: 5ccb2b4b-7ea5-4c38-8246-d59b8f7d4419 -status: todo +status: done priority: medium ``` @@ -358,7 +358,7 @@ Test `bridge up ` resolves and starts tunnel. ```task id: BRIDGE-WP-0002-T15 state_hub_task_id: 72c9f686-c474-46c4-a759-bfd47e2d4211 -status: todo +status: done priority: medium ``` @@ -369,7 +369,7 @@ Test `bridge targets` output matches catalog fixture. Test `--json` flag. ```task id: BRIDGE-WP-0002-T16 state_hub_task_id: 83c0734e-0dc2-49ce-8b6a-a4d5e26ff33a -status: todo +status: done priority: medium ```