Ensure agent-compose catalogue manifest exists before host convergence #711

Closed
opened 2026-08-01 00:02:18 +00:00 by coilyco-ops · 2 comments
Owner

Reproduction

Running rendered the managed agent-compose YAML, then failed when tried to read the configured skill catalogue manifest at .

Observed failure

Expected

The agent-compose Ansible role either ensures the configured manifest exists before invoking Agent Compose, or omits the setting until the AOS catalogue producer has materialized it. A clean host convergence must not fail on an absent optional catalogue handoff.

Boundary

This is independent of the new Ops role-provider declaration. The declaration rendered correctly in Ansible check mode before the pre-existing manifest read failed.

Acceptance

  • A local agent-compose-only Ansible apply converges from a clean eligible host state.
  • The configured catalogue manifest follows one explicit producer/consumer contract.
  • Missing producer state produces a clear preflight outcome or is safely omitted.
  • Role-scoped providers remain compatible with the repaired convergence path.
## Reproduction Running rendered the managed agent-compose YAML, then failed when tried to read the configured skill catalogue manifest at . ## Observed failure ## Expected The agent-compose Ansible role either ensures the configured manifest exists before invoking Agent Compose, or omits the setting until the AOS catalogue producer has materialized it. A clean host convergence must not fail on an absent optional catalogue handoff. ## Boundary This is independent of the new Ops role-provider declaration. The declaration rendered correctly in Ansible check mode before the pre-existing manifest read failed. ## Acceptance * A local agent-compose-only Ansible apply converges from a clean eligible host state. * The configured catalogue manifest follows one explicit producer/consumer contract. * Missing producer state produces a clear preflight outcome or is safely omitted. * Role-scoped providers remain compatible with the repaired convergence path.
Author
Owner

Correction: the reproduction command is ward exec ansible-sync -- apply tags=agent-compose local. The managed YAML rendered, then agent-compose compose failed while reading the configured skill catalogue manifest at ~/.config/aos/catalogues.json. The observed error was: agent-compose: read skill catalogue manifest ~/.config/aos/catalogues.json: no such file or directory.

Correction: the reproduction command is ward exec ansible-sync -- apply tags=agent-compose local. The managed YAML rendered, then agent-compose compose failed while reading the configured skill catalogue manifest at ~/.config/aos/catalogues.json. The observed error was: agent-compose: read skill catalogue manifest ~/.config/aos/catalogues.json: no such file or directory.
Author
Owner

Resolved on main by the Agent Compose ordering repair. ansible/playbooks/sync.yml now tags aos-native with agent-compose and runs it before the agent-compose role, so AOS materializes ~/.config/aos/catalogues.json before Agent Compose reads the configured manifest.\n\nValidation from clean current main:\n\n* ward exec ansible-sync-test - 13 passed\n* ward exec ansible-lint - production profile passed, 0 failures and 0 warnings\n\nEarlier scoped host evidence also confirmed the rendered configuration and AOS manifest before provider projection. Closing as fixed.

Resolved on `main` by the Agent Compose ordering repair. `ansible/playbooks/sync.yml` now tags `aos-native` with `agent-compose` and runs it before the `agent-compose` role, so AOS materializes `~/.config/aos/catalogues.json` before Agent Compose reads the configured manifest.\n\nValidation from clean current main:\n\n* `ward exec ansible-sync-test` - 13 passed\n* `ward exec ansible-lint` - production profile passed, 0 failures and 0 warnings\n\nEarlier scoped host evidence also confirmed the rendered configuration and AOS manifest before provider projection. Closing as fixed.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/infrastructure#711
No description provided.