Plan library-owned dispatch for host/token-daemon/ps/stop (6.1.1b) - #104
Draft
leynos wants to merge 1 commit into
Draft
Plan library-owned dispatch for host/token-daemon/ps/stop (6.1.1b)#104leynos wants to merge 1 commit into
leynos wants to merge 1 commit into
Conversation
Contributor
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
lodyai
Bot
force-pushed
the
6-1-1b-subcommand-dispatch
branch
from
June 2, 2026 13:28
38043d5 to
f3f7d33
Compare
Draft an ExecPlan for roadmap task 6.1.1b that extends the library-owned request boundary already in place for `run` and `exec` to the four remaining operator subcommands. The plan introduces `HostRequest`, `TokenDaemonRequest`, `ListContainersRequest`, and `StopRequest` under `podbot::api`; rewires the CLI dispatch in `src/main.rs` and `src/cli/mod.rs` to construct each request before calling the library; and enforces stdout purity for `podbot host` so the dispatch path never writes a banner before the future protocol-hosting orchestration arrives in step 6.5.1. The plan stops at dispatch hardening: actual orchestration for each subcommand stays scoped to its own roadmap step (6.3.1, 6.4.1, 6.5.1). It cites prior art from Jujutsu's library/UI split, the MCP stdio transport stdout-purity MUST, and Alexis Lozano's hexagonal Rust CLI example for the adapter pattern. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
lodyai
Bot
force-pushed
the
6-1-1b-subcommand-dispatch
branch
from
June 4, 2026 01:09
f3f7d33 to
3399dbf
Compare
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
docs/execplans/6-1-1b-subcommand-dispatch.md, an ExecPlanfor roadmap task 6.1.1b that extends the library-owned request
boundary already established for
runandexecto the remainingfour operator subcommands (
host,token-daemon,ps,stop).AGENTS.mdguidance from upstream(
memoryd@1-1-1-record-evidence-store-engine-and-migration-policy)so this branch picks up the observability, expanded testing-level,
and documentation-update expectations before implementation starts.
implementation begins.
What the plan covers
podbot::api:HostRequest,TokenDaemonRequest,ListContainersRequest, andStopRequest,each mirroring the
RunRequesttemplate (private fields, validatingconstructor, accessor methods).
src/main.rsandsrc/cli/mod.rs: everysubcommand parses through Clap, constructs the library-owned
request, and routes through the library API.
podbot hostemits zero bytes on stdout fromthe moment Clap finishes parsing through library return, with a
behavioural test that asserts the stdout-purity rule. Cited against
the MCP stdio transport MUST and the project's developers' guide.
validation, CodeRabbit) with explicit
Constraints,Tolerances,Risks,Progress,Surprises & Discoveries,Decision Log, andOutcomes & Retrospectivesections. The plan is scoped narrowly todispatch hardening; orchestration for each subcommand stays with
roadmap steps 6.3.1, 6.4.1, and 6.5.1.
Prior art cited in the plan
anything to stdout that is not a valid MCP message").
as a thin adapter over a library-owned
Requestvalue).Test plan
Plan-only PR. Validation performed locally on the draft:
make markdownlintpasses for the new ExecPlan and therefreshed
AGENTS.md.make nixiepasses (no Mermaid diagrams added).make check-fmt,make lint,and
make testwill be run after each implementation milestone, asrequired by the project's quality-gate policy.
coderabbit review --agentwill be run after each milestone.
Roadmap
This plan covers roadmap task 6.1.1b. Implement subcommand dispatch
for
run,host,token-daemon,ps,stop, andexec. Scopenarrows to the four still-pending subcommands;
runandexecarealready routed through library-owned request types. The plan does not
tick the parent 6.1.1 entry; it will tick only the four sub-checkboxes
on completion.
Issues referenced
host_agent_clistdout purity) is resolved by the plan'sStage C: the dead-coded helper is replaced with a tracing-based
diagnostic path, and the hard-coded
ConfigErrorshort-circuitgoes away.
References
https://lody.ai/leynos/sessions/61a6d267-5083-4142-bae9-472e66457fe7
🤖 Generated with Claude Code