Skip to content

CI twin for PR #26 - #27

Closed
ualtinok wants to merge 1 commit into
masterfrom
ci/pr26-census
Closed

ualtinok wants to merge 1 commit into
masterfrom
ci/pr26-census

Conversation

@ualtinok

@ualtinok ualtinok commented Aug 16, 2026 •

Copy link
Copy Markdown
Contributor

Fork PRs skip the Rust matrix; twin for iceteaSA's #26 at 8a4d21c.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith with what you need. Autofix is disabled.


Summary by cubic

Adds a control‑plane census supervisor.routes to enumerate live route consumers per module, including during drains. Previously routes were not observable; now the daemon reports consumer identity, route age, and draining state without querying modules.

  • subc-control (0.1.2): adds ops::SUPERVISOR_ROUTES, ClientControlRequest::SupervisorRoutes, and ClientControlResponse::SupervisorRoutes. Consumers are reported as reserved { module_id } or direct { connection_id }, with age_ms and draining.
  • Forwarding: retains principal and bound_at in RouteBinding; introduces endpoint_routes and route_census that snapshot under a single read lock and preserve draining status.
  • subc-core (0.3.2): wires handle_supervisor_routes to the forwarding census; updates bench harness to use Principal::Direct; expands thin-core op catalog.
  • CLI: adds ck routes [<module-id>] with table or --json output.
  • Tests/goldens: new and updated fixtures for the op and catalog; ensure control‑plane‑only behavior (not exposed via MCP or agent tools).

Written for commit 8a4d21c. Summary will update on new commits.

Review in cubic

…re a restart

Retain the attested principal and bind Instant on every RouteBinding so the census can distinguish reserved consumers from direct connections and report route age.\n\nDraining bindings stay visible with their draining state. supervisor.routes remains control-plane-only and is not exposed through the MCP facade or any agent-tool surface.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 14 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="crates/subc-core/src/control.rs">

<violation number="1" location="crates/subc-core/src/control.rs:67">
P2: This advertises `supervisor.routes` to every module even though modules cannot invoke it. A module that follows the `HELLO_ACK.subc_ops` allowlist can attempt the operation and receive `unsupported_control_frame`; keep this client-only operation in client discovery while excluding it from the module capability list.</violation>
</file>

You're on the cubic free plan with 6 free PR reviews remaining this month. Upgrade for unlimited reviews.

Re-trigger cubic

ops::SUPERVISOR_HEALTH_PROBE,
ops::SUPERVISOR_HEALTH,
ops::SUPERVISOR_STDERR_TAIL,
ops::SUPERVISOR_ROUTES,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This advertises supervisor.routes to every module even though modules cannot invoke it. A module that follows the HELLO_ACK.subc_ops allowlist can attempt the operation and receive unsupported_control_frame; keep this client-only operation in client discovery while excluding it from the module capability list.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At crates/subc-core/src/control.rs, line 67:

<comment>This advertises `supervisor.routes` to every module even though modules cannot invoke it. A module that follows the `HELLO_ACK.subc_ops` allowlist can attempt the operation and receive `unsupported_control_frame`; keep this client-only operation in client discovery while excluding it from the module capability list.</comment>

<file context>
@@ -64,6 +64,7 @@ const SUBC_CONTROL_OPS: &[&str] = &[
     ops::SUPERVISOR_HEALTH_PROBE,
     ops::SUPERVISOR_HEALTH,
     ops::SUPERVISOR_STDERR_TAIL,
+    ops::SUPERVISOR_ROUTES,
 ];
 
</file context>

@ualtinok ualtinok closed this Aug 16, 2026
@ualtinok
ualtinok deleted the ci/pr26-census branch August 16, 2026 15:36
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.

2 participants