Repository navigation
Slice 3b.1: ClawMemory operator UX (inspect CLI + Headlamp panel) - #268
Merged
Pal Lakatos-Toth (pallakatos) merged 1 commit intoMay 13, 2026
Merged
Conversation
Operator-facing surface for the §3 echo loop closed in Slice 3a. * `azureclaw inspect <sandbox>`: `POLICY_KIND_LABEL` now maps the wire kind `Memory` (emitted by inference-router's `PolicyKind::Memory::as_str()`) to the user-facing display label `ClawMemory`. The previous mapping used the stale planning name `MemoryStore`, which never matched anything the router actually emits — ClawMemory entries fell through to the raw wire kind. Test in `inspect.test.ts` now asserts the post-Slice-3a wire kinds and the `Memory → ClawMemory` display. * Headlamp `RouterPolicyStatusPanel` now renders for `clawmemories` (in addition to `toolpolicies` and `inferencepolicies`). Uses the same `compiledDigest` / `loadedDigest` fields the Slice 3a controller writes. No new API traffic, no admin-token plumbing — pure read of fields already served by the kube-apiserver. Both producers (controller status + Headlamp + kubectl) and the data-plane view (CLI inspect via router /internal/policy-status) now agree on the user-facing CRD name. cli typecheck + 14 inspect tests + lint clean (warnings pre-existing). Headlamp `headlamp-plugin build` clean. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pal Lakatos-Toth (pallakatos)
deleted the
slice-3b-1-clawmemory-inspect-headlamp
branch
May 13, 2026 14:11
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.
Summary
First operator-facing slice on top of the Slice 3a echo loop. Two thin surfaces, both pure consumers of fields the controller already writes:
azureclaw inspect <sandbox>—POLICY_KIND_LABELnow maps the wire kindMemory(per Slice 3aPolicyKind::Memory::as_str()) to the user-facing display labelClawMemory. The pre-existing mapping used the stale planning nameMemoryStore, which never matched anything the router actually emitted, so ClawMemory entries fell through to the raw wire kind in the tree. The test now asserts the post-Slice-3a wire kinds.Headlamp
RouterPolicyStatusPanel— extends fromtoolpolicies+inferencepoliciesto also includeclawmemories. Reads thecompiledDigest+loadedDigestfields stamped in Slice 3a + theReadycondition's reason. Zero new API traffic.Verification
cli/: 14 inspect tests pass,tsc --noEmitclean,oxlintclean (warnings pre-existing).tools/headlamp-plugin/:headlamp-plugin buildclean (19 kB main.js).Out of scope (still deferred to Slice 3b/3c)
Foundry Memory Store auto-provision, AuthMisconfigured 403, no-inherit on sub-agent spawn, signed bundleRef, MCP foundry.memory.* rewire.
Co-authored-by: Copilot