Skip to content

fix(caps): declare IO.Mut in Health and Metrics; 0.2.7 - #10

Merged
Ch4s3 merged 1 commit into
mainfrom
claude/cap-ceiling-health-metrics
Aug 13, 2026
Merged

Ch4s3 merged 1 commit into
mainfrom
claude/cap-ceiling-health-metrics

Conversation

@Ch4s3

@Ch4s3 Ch4s3 commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

0.2.6 fixed the capability ceiling for PubSub, IslandAssets, IslandSocket and RateLimit, but missed two modules that store state in Vault the same way:

module `Bastion.Health` uses `IO.Mut` but does not declare `needs IO.Mut`
module `Bastion.Metrics` uses `IO.Mut` but does not declare `needs IO.Mut`

So building anything downstream against the published 0.2.6 on a current march still fails. forge build exposes no --no-cap-strict escape (the compiler suggests the flag, forge doesn't forward it), so this is a hard block on release builds, not a warning.

Found while building forgepm's production binary against published 0.2.6 — it was masked before because the previous production build used a locally-patched bastion tree.

Verified: with these two lines added, forgepm's forge build --release completes and these were the only remaining violations.

Needs a publish of 0.2.7 to be useful downstream.

0.2.6 declared IO.Mut in PubSub, IslandAssets, IslandSocket and RateLimit
but missed Bastion.Health and Bastion.Metrics, which store their state in
Vault the same way. Building forgepm against the published 0.2.6 on a
current march therefore still fails:

  module `Bastion.Health` uses `IO.Mut` but does not declare `needs IO.Mut`
  module `Bastion.Metrics` uses `IO.Mut` but does not declare `needs IO.Mut`

forge exposes no --no-cap-strict escape, so this blocks any downstream
release build outright rather than merely warning.

Verified by building forgepm's release binary against a patched copy: the
two violations are the only ones remaining, and the build completes.
@Ch4s3
Ch4s3 force-pushed the claude/cap-ceiling-health-metrics branch from 478c804 to 5b5625f Compare August 13, 2026 00:40
@Ch4s3
Ch4s3 merged commit 0d23a77 into main Aug 13, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant