Skip to content

feat(openshell-core): add MCP route observation state - #3207

Open
shiju-nv wants to merge 1 commit into
NVIDIA:mainfrom
shiju-nv:feat/mcp-route-readiness-core
Open

feat(openshell-core): add MCP route observation state#3207
shiju-nv wants to merge 1 commit into
NVIDIA:mainfrom
shiju-nv:feat/mcp-route-readiness-core

Conversation

@shiju-nv

@shiju-nv shiju-nv commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Summary

Add the OpenShell-owned primitives for representing MCP route identity, observation outcomes, and epoch-aware readiness state. This establishes a redacted state-machine boundary that later gateway and runtime PRs can consume without coupling lifecycle readiness to route evidence.

Related Issue

Related to #3205

This is the first PR in a three-PR stack. It establishes the core layer but does not complete the public gateway or runtime behavior, so the final runtime PR uses Closes #3205 after the dependencies land.

Changes

  • Derive opaque SHA-256 route subjects from normalized host, canonical path, and the sorted, deduplicated effective port set.
  • Define typed redacted outcomes for reachable, policy-denied, credential, TLS, transport, upstream-rejection, and unobserved states.
  • Add a bounded, non-blocking observation channel and an epoch-aware tracker that coalesces observations without affecting sandbox lifecycle phase.
  • Cover canonicalization, deduplication, multi-port identity, epoch reset, timestamp, and bounded-channel behavior with unit tests.
  • Update both standalone example lockfiles so their openshell-core dependency graphs include the new hashing and TLS dependencies and mise run pre-commit leaves the worktree clean.

Testing

  • mise run pre-commit passes
  • Unit tests added/updated
  • E2E tests added/updated (not applicable to this core-only state-machine boundary)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • Architecture docs updated (not applicable to this internal primitive boundary; public semantics are documented in the dependent gateway PR)

Signed-off-by: Shiju <shiju@nvidia.com>
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