WIP: B1 stopgap — satisfy herolib_derive one-input/no-dot enforcement #133
No reviewers
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_proc!133
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "stopgap/openrpc-enforcement-b1"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
⚠️ Not mergeable yet — opened for review + CI visibility
Makes hero_proc comply with the new
herolib_deriveone-input/no-dot enforcement (hero_lib96611dd1). CI will be red: the full--workspacebuild cannot pass until hero_lib migrates its own flathero_proc_sdkconsumers. Full analysis + the 3 paths forward + the hero_lib hand-off are inDEVELOPMENT_BLOCKER.mdin this PR.What's in here
service.get→service_get); SSE event names (log.line/log.done) stay dotted as the rule allows.input: <Method>Argsstruct.inputunwrap for the 47 (handlers unchanged).96611dd1; local[patch]dropped; git self-dep patched.Honest blast radius
Protocol-breaking: 102 wire renames + 47 input-shape changes. Native callers of the 47 go flat → nested (
ServiceKillInput { input: ServiceKillArgs { … } }). Every downstream consumer (browser, slides, router, WASM app, admin JS) must update.Why CI is red (the blocker)
hero_proc_admin → hero_admin_lib → hero_lifecycle[webserver-heroproc] → hero_lib/src/webserver/heroproc.rs(plustools/,ai/) still call the flat SDK — 8 sites across 3 hero_lib crates. One SDK can't be both flat and nested. Builds green with--exclude hero_proc_admin. Fix = the hero_lib hand-off (DEVELOPMENT_BLOCKER.md§6), or pick path B2 / A (§4).Reviewers
@kristof @casper — please weigh in on B1 vs B2 vs A (
DEVELOPMENT_BLOCKER.md§4). Recommendation there is A, given hero_lib needs a 3-crate change either way. Do not merge — red CI is expected until hero_lib lands the matching change.The 47 wrapped methods now take <Method>Input { input: <Method>Args }. Update every native-typed construction across the SDK (factory/builders/demo/ lifecycle), CLI, TUI, examples, admin, and the test crate to the nested shape, and de-dot method-name string literals in the WASM app and admin JS. Regenerate the inspection copy of the SDK client. B1 stopgap, blocked on hero_lib heroproc.rs migration — see DEVELOPMENT_BLOCKER.md.Pull request closed