Add Rust toolchain to dev-base for Rust workspace CI #382

Closed
opened 2026-07-09 18:58:19 +00:00 by coilyco-ops · 3 comments
Member

factory-game-v3 has now landed its first Rust workspace and updated its active gate to run cargo test --workspace. Its Forgejo CI is pinned to the aos dev-base image (forgejo.coilysiren.me/coilyco-flight-deck/agentic-os:v0.227.0). That image has enough baseline tooling for pre-commit and the prior dotnet issue, but it does not provide cargo/Rust, so downstream Rust repos fail CI even when their workspace is valid.

Please update the agentic-os dev-base image so engineers and Forgejo CI have a Rust toolchain available by default.

Context:

  • coilyco-gaming/factory-game-v3 now has Cargo.toml plus crates/factory_sim, crates/factory_content, and crates/factory_cli.
  • scripts/test-gate.sh in that repo now runs pre-commit and then cargo test --workspace.
  • CI currently uses forgejo.coilysiren.me/coilyco-flight-deck/agentic-os:v0.227.0.
  • The first Rust slice landed on factory-game-v3 main, but CI cannot go green until the image supplies Rust.

Acceptance criteria:

  • The dev-base/container image built by agentic-os includes a working Rust toolchain with cargo and rustc on PATH for CI and engineer containers.
  • The image continues to include the existing baseline tools used by aos-fold repos, including pre-commit and dotnet.
  • The repo validation for agentic-os passes.
  • The change lands on main so the image publish workflow can produce a new tag.
  • Note the resulting image tag or release version in the issue outcome so downstream repos can bump from v0.227.0.

Out of scope:

  • Do not change factory-game-v3 in this issue. A downstream bump can happen after the new aos image is published.
  • Do not add Bevy or game-specific dependencies to dev-base. This is just the Rust compiler/toolchain layer.
`factory-game-v3` has now landed its first Rust workspace and updated its active gate to run `cargo test --workspace`. Its Forgejo CI is pinned to the aos dev-base image (`forgejo.coilysiren.me/coilyco-flight-deck/agentic-os:v0.227.0`). That image has enough baseline tooling for pre-commit and the prior dotnet issue, but it does not provide `cargo`/Rust, so downstream Rust repos fail CI even when their workspace is valid. Please update the agentic-os dev-base image so engineers and Forgejo CI have a Rust toolchain available by default. Context: * `coilyco-gaming/factory-game-v3` now has `Cargo.toml` plus `crates/factory_sim`, `crates/factory_content`, and `crates/factory_cli`. * `scripts/test-gate.sh` in that repo now runs pre-commit and then `cargo test --workspace`. * CI currently uses `forgejo.coilysiren.me/coilyco-flight-deck/agentic-os:v0.227.0`. * The first Rust slice landed on `factory-game-v3` main, but CI cannot go green until the image supplies Rust. Acceptance criteria: * The dev-base/container image built by agentic-os includes a working Rust toolchain with `cargo` and `rustc` on PATH for CI and engineer containers. * The image continues to include the existing baseline tools used by aos-fold repos, including pre-commit and dotnet. * The repo validation for agentic-os passes. * The change lands on `main` so the image publish workflow can produce a new tag. * Note the resulting image tag or release version in the issue outcome so downstream repos can bump from `v0.227.0`. Out of scope: * Do not change `factory-game-v3` in this issue. A downstream bump can happen after the new aos image is published. * Do not add Bevy or game-specific dependencies to dev-base. This is just the Rust compiler/toolchain layer.
Author
Member

WARD-RESERVATION: held 🔒

reservation details

Holder: container engineer-codex-agentic-os-382 on host kais-macbook-pro-2.local.

Reserved by ward agent --harness codex (reserved 2026-07-09T18:58:24Z). Concurrent ward agent runs are blocked until it finishes or the reservation goes stale (1h TTL). --force overrides.

Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).

run seed context — what this run is carrying (ward#609)
  • Resolved: coilyco-flight-deck/agentic-os#382 · branch issue-382 · harness codex · workflow direct-to-main
  • Run: engineer-codex-agentic-os-382 · ward v0.493.0 · dispatched 2026-07-09T18:58:24Z
  • Comment thread: 0 included in the pre-flight read, 0 stripped (ward's own automated comments).

Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.493.0).

— Codex, via ward agent

<!-- ward-agent-reservation --> WARD-RESERVATION: held 🔒 <details><summary>reservation details</summary> Holder: container `engineer-codex-agentic-os-382` on host `kais-macbook-pro-2.local`. Reserved by `ward agent --harness codex` (reserved 2026-07-09T18:58:24Z). Concurrent `ward agent` runs are blocked until it finishes or the reservation goes stale (1h TTL). `--force` overrides. **Do not comment on or edit this issue to steer the run while it is reserved.** The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a **new issue, dispatched fresh**. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494). <details><summary>run seed context — what this run is carrying (ward#609)</summary> - **Resolved:** `coilyco-flight-deck/agentic-os#382` · branch `issue-382` · harness `codex` · workflow `direct-to-main` - **Run:** `engineer-codex-agentic-os-382` · ward `v0.493.0` · dispatched `2026-07-09T18:58:24Z` - **Comment thread:** 0 included in the pre-flight read, 0 stripped (ward's own automated comments). Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.493.0). </details> </details> <!-- ward-agent-signature --> — Codex, via `ward agent`
Author
Member
details

workflow: direct-to-main; review summary: skipped (review gate skipped by ~/.ward/config.yaml default)
retrospective: rustup wiring was straightforward; the only trap was making CARGO_HOME and RUSTUP_HOME writable so cargo can fetch crates in-container.
confidence: high
surprises: none
follow-ups: downstream repos can bump to v0.230.0

<details><summary>details</summary> workflow: direct-to-main; review summary: skipped (review gate skipped by ~/.ward/config.yaml default) retrospective: rustup wiring was straightforward; the only trap was making CARGO_HOME and RUSTUP_HOME writable so cargo can fetch crates in-container. confidence: high surprises: none follow-ups: downstream repos can bump to v0.230.0 </details>
Author
Member

WARD-OUTCOME: done

details

workflow: direct-to-main; review summary: skipped (review gate skipped by ~/.ward/config.yaml default)
retrospective: rustup landed cleanly once CARGO_HOME and RUSTUP_HOME were writable for cargo fetches.
confidence: high
surprises: the Forgejo wrapper returned non-zero after posting the first comment on the closed issue.
follow-ups: downstream repos can bump to v0.230.0.

WARD-OUTCOME: done ✅ <details><summary>details</summary> workflow: direct-to-main; review summary: skipped (review gate skipped by ~/.ward/config.yaml default) retrospective: rustup landed cleanly once CARGO_HOME and RUSTUP_HOME were writable for cargo fetches. confidence: high surprises: the Forgejo wrapper returned non-zero after posting the first comment on the closed issue. follow-ups: downstream repos can bump to v0.230.0. </details>
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/agentic-os#382
No description provided.