Repository navigation
slice-5b: egressMode enum replaces learnEgress bool - #297
Merged
Merged
Conversation
Replaces ClawSandbox.spec.networkPolicy.learnEgress: bool with egressMode: Strict | Learn across controller, router, CLI, Headlamp, helm CRD, and docs. Default = Learn. The Approval variant is deferred to Slice 5c (no consumer yet per principles §5). No back-compat shim: repo has no live deployments yet, so the legacy field was removed cleanly. Slice 5b DoD #3 closed. - controller/src/crd.rs: new EgressMode enum with #[derive(Default)] and #[default] on Learn. Replaces NetworkPolicyConfig.learn_egress. - controller/src/reconciler/mod.rs: emits EGRESS_MODE=strict|learn (no back-compat EGRESS_LEARN_MODE). - inference-router/src/routes/mod.rs: consumes EGRESS_MODE, defaults to Learn when unset. - inference-router/src/spawn/mod.rs: sub-agent reader/producer migrated. Internal SpawnRequest.learn_egress retained (not wire). - deploy/helm/azureclaw/templates/crd.yaml: learnEgress removed from schema; egressMode enum-validated. - cli/src/commands/{add,policy,handoff,handoff/helpers,up/sandbox_bringup, dev/local-k8s,operator/actions}.ts: every CR producer/reader migrated. - tools/headlamp-plugin/src/index.tsx: all 4 egress readers consume egressMode directly. - docs/use-cases.md, docs/egress-proxy.md: samples updated. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Slice 5b —
egressModeenum (DoD #3)Replaces
ClawSandbox.spec.networkPolicy.learnEgress: boolwithegressMode: Strict | Learnenum. Default =Learn. TheApprovalvariant is deferred to Slice 5c (no consumer yet per principles §5).
No back-compat shim — the repo has no live deployments yet, so
the legacy field was removed cleanly rather than deprecated.
Changes
EgressModeenum with#[derive(Default)]and#[default]onLearn. ReplacesNetworkPolicyConfig.learn_egress.EGRESS_MODE=strict|learn.No back-compat
EGRESS_LEARN_MODE.EGRESS_MODE,defaults to Learn when unset.
migrated. Internal
SpawnRequest.learn_egressretained (not wire).learnEgressremovedfrom schema.
consume
egressModedirectly.Verification
cargo build --workspace✅cargo clippy --workspace --all-targets -- -D warnings✅cargo test -p azureclaw-controller --bin azureclaw-controller✅ 562 passedcargo test -p azureclaw-inference-router --lib✅ 849 passedcd cli && npm run typecheck✅cd cli && npm test✅ 692 passed | 2 skippedcd tools/headlamp-plugin && npm run build✅Closes Slice 5 DoD #3.