2.2 KiB
2.2 KiB
id, title, status, wave, depends_on, plan, spec, adr
| id | title | status | wave | depends_on | plan | spec | adr |
|---|---|---|---|---|---|---|---|
| 01-proto-contract | Host data proto contract + regenerated stubs | done | 1 | plan.md | ../../../specs/plugins/requirements/plugins.md | ../../../decisions/0043-plugin-host-data-api.md |
Task 01: Host data proto contract + regenerated stubs
Fold the Host data RPCs and DTOs from docs/plans/plugins/HOST-DATA-API.proto
into the frozen plugin proto and regenerate Go stubs. This is the contract every
later task compiles against.
Scope
- Read RPCs:
ListTasks,GetTask,ListWorkspaces,ListWorkflows,ListWorkflowSteps,ListAgentProfiles,ListRepositories,ListSessions,ListSessionCodeStats. - Implemented write RPCs:
CreateTask,UpdateTask, andSendMessage. - DTOs +
Page/PageInfo/filter messages from the draft. - Decide placement: add RPCs to the existing
service Host(recommended — reuses the single broker connection and the capability interceptor) rather than a newservice HostData. Record the choice in a proto comment. - Verify DTO fields against the real shapes in
apps/backend/pkg/api/v1/{task,workflow,agent,workspace}.go; keep RFC3339 string timestamps andoptionalnullables per ADR 0043.
Acceptance
apps/backend/proto/kandev/plugin/v1/plugin.protocontains the read + write write RPCs and DTOs; existingHost/PluginRPCs are unchanged.make -C apps/backend protoregeneratesplugin.pb.go/plugin_grpc.pb.gowith no manual edits, and the tree builds.
Verification
make -C apps/backend protocd apps/backend && go build ./...
Files likely touched
apps/backend/proto/kandev/plugin/v1/plugin.protoapps/backend/proto/kandev/plugin/v1/plugin.pb.go(generated)apps/backend/proto/kandev/plugin/v1/plugin_grpc.pb.go(generated)
Inputs
- Spec: "Host data API" section, capability table.
- Draft:
docs/plans/plugins/HOST-DATA-API.proto. - DTO shapes:
apps/backend/pkg/api/v1/{task,workflow,agent,workspace}.go. - ADR 0043 (DTO discipline, conventions).
Dependencies
None.
Output contract
Summary of RPC placement decision, files changed (incl. regenerated stubs),
make proto + build result, any DTO field deviations from the draft, and status
update here + in plan.md.