Inconsistent per-domain RPC coverage — context.* and task.* creation methods missing, contact.* works #24
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
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_osis#24
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Problem
While exercising hero_os UI create flows on a fresh local install (contexts, tasks, contacts), the backend returns
RPC error [-32601]: Method not foundfor some domains but not others. This blocks core UX paths: users cannot create contexts or tasks at all.Evidence from local repro
context.registerMethod not foundtask.create(or similar)Failed to create task: RPC error [-32601]: Method not foundcontact.createBuild:
make installdevon each crate, started viahero_proc(hero_osis, hero_router, hero_os). Tested via hero_browser_mcp headed Chrome againsthttp://127.0.0.1:9988/hero_os/ui/.Related existing issues
Ask
Track the missing RPC surface per domain in one place. A mapping of "what the UI calls" → "what hero_osis exposes" would let us fix these together rather than chasing one
-32601at a time. Confirmed gaps on this build:context.register/context.create/context.list/context.deletetask.create,task.list,task.update,task.deleteRoot cause pinned.
The hero_rpc generator (
crates/generator/src/rust/rust_osis.rs:736-768) emits a fixed naming scheme for every OSIS-backed type:Verified on
developmentinhero_osis/crates/hero_osis_server/src/identity/server/osis_server_generated.rs:1928-1941:Base and projects domains match the same pattern. None of
context.register,context.create, ortask.createare registered anywhere — they return-32601because the server never matched them.Mapping
contact.createcontact.setcontext.registercontext.settask.createtask.setOne thing to double-check in the repro
The issue says
contact.createsucceeds and returns SID 0001 — but per the mapping above, it should return-32601just like the others. Likely explanations:contact.setunder the hood (thehero_osis_uidashboard does this atstatic/js/dashboard.js:1085:rpc(t.name.toLowerCase() + '.set', {data: payload})).hero_osUI has a special-cased contact path that the other two flows don't share.Can you confirm by checking the DevTools network tab for the actual method name the Contacts form sends?
Recommended fixes
Short-term (unblock UX): Update
hero_osUI callers for Contexts and Tasks to use.setwith fresh SIDs (same patternhero_osis_uialready uses). Local, low risk.Long-term: Add REST-style alias support in the hero_rpc generator so
.create/.update/.registerwork as aliases for.set. Filed as hero_rpc issue — will link here once open.Long-term fix tracked at lhumina_code/hero_rpc#25 (generator: emit REST-style aliases).