Repository navigation
Enroll fixture clients through local operator consent - #6288
schickling-assistant wants to merge 10 commits into
Conversation
agent-identity: agent/dotfiles/fractal-product-lead agent-persona: generalist agent-supervisor: unavailable agent-tool: OMP agent-tool-version: 18.12.5 agent-runtime: OMP 18.12.5 agent-model: openai-codex/gpt-6.1-sol
agent-identity: agent/dotfiles/fractal-product-lead agent-persona: generalist agent-supervisor: unavailable agent-tool: OMP agent-tool-version: 18.12.5 agent-runtime: OMP 18.12.5 agent-model: openai-codex/gpt-6.1-sol
agent-identity: agent/dotfiles/fractal-product-lead agent-persona: generalist agent-supervisor: unavailable agent-tool: OMP agent-tool-version: 18.12.5 agent-runtime: OMP 18.12.5 agent-model: openai-codex/gpt-6.1-sol
agent-identity: agent/dotfiles/fractal-product-lead agent-persona: generalist agent-supervisor: unavailable agent-tool: OMP agent-tool-version: 18.12.5 agent-runtime: OMP 18.12.5 agent-model: openai-codex/gpt-6.1-sol
|
Parked: enrollment source is complete, but the shared canonical generated dependency remains blocked on admitted generation. Reissue: generated canonical commit is published and integrated local source verification can execute. Current signed enrollment head 1fc7ae8; no live effects. Release fragment validates with the repository validate() API (the script has no validate CLI subcommand). Posted on behalf of @schickling
|
|
Reissued: canonical generated dependency36592f7090 is published; integrating it append-only before source handoff. No test/build ticket is queued under the current coordination hold. Posted on behalf of @schickling
|
|
Parked: enrollment source is complete; dependent shared generated lifecycle output and admitted proof results remain pending. Reissue: corrected generated head is integrated and the sequential daemon proof ticket is authorized. No live enrollment or setup was performed. Posted on behalf of @schickling
|
Problem
Pairing alone must never grant automated control or message authority.
Goal
D-3 existing client-generated P-256 key enrollment and durable revocation, all three client kinds. A-2 refusal tests cover malformed/reused consent, key/scope/fixture mismatch and operator provenance.
Decisions
Unix enrollment requires kernel peer UID equal to daemon UID, local-only fixture principal, read.projections plus control.commands, no other write scope. Bind pairing/key, host, instance, kind, consentRef and packetDigest; never create client keys or principal signing grants. The mission caller FIRST verifies explicit person/schickling native ask approval matching packet digest and scope, retaining evidence. Fixture validates/records privileged operator attestation; never contacts main/imports personal principals. Signed exported consent is possible later hardening, not implemented.
Dependencies and held paths
Depends on #6274 and #6279; local-only prerequisite is explicitly merged. Own signed implementation ac7a599. Held crates/fractal-store/src/store.rs changes only canonicalize newly admitted trusted client-operation claims. No mission/mailbox path edits.
Verification
Tests added; NOT RUN pending admitted canonical generation and final integrated local pass. No live setup/pairing/enrollment/grant/daemon action; no CI dispatch or rerun.
Complexity
Reuse pairing and trusted operation claims. Server-established Unix provenance cannot come from headers.
Concerns
Consent outcome is externally verified by the mission gate, not queried by the fixture daemon.
Friction & bottlenecks
Canonical generation awaits shared build admission; canonical branch remains explicitly not consumer-ready.
Follow-ups
#6289 grants and final signed-result/receipt source complete daemon scope. Human setup/apply/enrollment gates stay pending.
References
See #6274, #6279 and stack #6290.
Posted on behalf of @schickling
agent_identitysessionagent_personaagent_supervisoragent_toolagent_tool_versionagent_runtimeagent_modelworktree