Repository navigation
Conversation
Assisted-by: Codex:gpt-5.6
Authenticate Liaison text, voice, and control requests through Keystone. Pass session tokens through hands-free and voice capture flows, apply Keystone voice policy, and start Keystone through rbnx boot. Assisted-by: Codex:gpt-5.6
Provide a standalone policy core before connecting Sentinel to Executor and Atlas. Add typed rule validation, priority-based capability-call decisions, and rule management contracts. Assisted-by: Codex:gpt-5.6
Sentinel needs authenticated identity and trusted robot state at the Executor boundary before a provider receives a call. Propagate validated Keystone sessions through Liaison and Pilot. Load persistent rules, collect trusted state, enforce decisions before dispatch, expose rule management capabilities, and add the Webots policy example. Assisted-by: Codex:gpt-5.6
Bind Keystone to loopback by default, keep Sentinel management loopback-only, and preflight both Executor listen addresses before spawn. Require a Keystone session for Execute and plan-control RPCs when Liaison enables Keystone, and move Sentinel seed initialization out of config resolution.
PKTH-Jx
requested review from
1mujue,
HustWolfzzb,
KouweiLee,
enkerewpo and
kaileliu
as code owners
October 25, 2026 16:52
Assisted-by: Codex:GPT-6-Sol
Pilot now validates Keystone sessions before planning and forwards the credential through plan, steer, and cancellation requests so Executor can enforce its own policy. Liaison, Pilot, and Executor now resolve require_keystone independently from CLI, environment, or manifest settings with the same precedence. Liaison's Keystone endpoint is now only a connection fallback.
PKTH-Jx
force-pushed
the
feat/keystone-sentinel
branch
from
October 25, 2026 17:05
bddf3b4 to
601c69c
Compare
This was referenced Oct 27, 2026
This branch has not been deployed
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
This branch adds Keystone-backed identity and Sentinel capability-call policy to the Liaison → Pilot → Executor path. Liaison, Pilot, and Executor can each enforce authentication independently, while
rbnxsupports Keystone boot, login, saved sessions, and authenticated chat and task submission.This work builds on the initial Keystone and Sentinel implementations from #205 and #175.
What changed
SubmitTaskrequests and forward the credential through plans, steering, cancellation, and plan-control calls. Executor revalidates it before execution and clears credentials from public Plan events.require_keystonesettings for Liaison, Pilot, and Executor, withCLI > environment > manifest > YAML/defaultprecedence. All default tofalse.ListRulesandReplaceRulescontracts, restricted to Keystone administrators.Compatibility
require_keystoneis a new per-component option and defaults to false. Each component resolves it independently using CLI > environment > manifest > YAML/default. Keystone gRPC has no TLS, so remote deployments require a trusted network or encrypted tunnelValidation
rbnxconfiguration tests passed.bash scripts/test_sentinel_keystone.shpassed.