ansible port: deptree role (catalog flight-deck->bridge edge check) #211

Open
opened 2026-06-04 07:49:37 +00:00 by coilysiren · 0 comments
Owner

Part of the up-to-date.py -> ansible port. Serial chain step 3 of 4. Prereq: #210 (reconcile role) merged first.

Context

  • See #209 for converger layout and the library/ module pattern.
  • Legacy source: agentic-os-kai/scripts/up-to-date.py, the deptree step (step 8). Reads agentic-os-kai/data/catalog-graph.json dependsOn edges + data/repo-split-decisions.yaml bucket mapping. Read-only.

Task

Add a deptree role (+ library/catalog_deptree.py if cleaner) that:

  • Walks the catalog-graph dependsOn edges, maps each endpoint to its bridge / flight-deck bucket, and FAILs on any flight-deck -> bridge edge (the cross-org rule: flight-deck must not depend on the private command-center brain).
  • Read-only; resolve data files relative to a configurable path (the agentic-os-kai checkout) so it works wherever that lives.
  • Note in output if the json is stale (suggest rebuilding via coily exec build-catalog-graph).
    Wire into freshen.yml with tag deptree, after reconcile.

Acceptance

  • coily exec ansible-freshen (check) runs deptree clean on a valid graph; --tags deptree scopes it. Fails loudly on a synthetic flight-deck->bridge edge.
  • pre-commit passes (strict pylint). docs updated. Commit closes this issue.
Part of the up-to-date.py -> ansible port. **Serial chain step 3 of 4.** Prereq: #210 (reconcile role) merged first. ## Context - See #209 for converger layout and the `library/` module pattern. - Legacy source: `agentic-os-kai/scripts/up-to-date.py`, the **deptree step (step 8)**. Reads `agentic-os-kai/data/catalog-graph.json` dependsOn edges + `data/repo-split-decisions.yaml` bucket mapping. Read-only. ## Task Add a `deptree` role (+ `library/catalog_deptree.py` if cleaner) that: - Walks the catalog-graph dependsOn edges, maps each endpoint to its bridge / flight-deck bucket, and FAILs on any `flight-deck -> bridge` edge (the cross-org rule: flight-deck must not depend on the private command-center brain). - Read-only; resolve data files relative to a configurable path (the agentic-os-kai checkout) so it works wherever that lives. - Note in output if the json is stale (suggest rebuilding via `coily exec build-catalog-graph`). Wire into `freshen.yml` with tag `deptree`, after `reconcile`. ## Acceptance - `coily exec ansible-freshen` (check) runs deptree clean on a valid graph; `--tags deptree` scopes it. Fails loudly on a synthetic flight-deck->bridge edge. - pre-commit passes (strict pylint). docs updated. Commit closes this issue.
coilysiren added
P3
and removed
P2
labels 2026-06-17 08:40:00 +00:00
Sign in to join this conversation.
No description provided.