Repository navigation
Conversation
Bind runtime metadata to registered handlers while preserving authentication wrappers. Refs Gentleman-Programming#1350
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Fleet review (deepseek)Adds a Go-owned Pi HTTP runtime contract: a typed route registry (registerRuntimeRoutes) that re-binds the same 27 routes with the same auth policy, a read-only GET /runtime-contract that projects a stable contract (contract_id/revision/status/digest/operations/supporting_routes) plus the dynamic instance_id, and docs. I verified the relocation is faithful: the 27 registry entries match the 27 removed bindings one-for-one, DELETE /observations/{id} is still the only one behind requireAuth, no route is registered twice (Go 1.22 mux would panic), and session-owned 401s come from the existing Handler() middleware. The digest is computed over the marshaled contract with digest omitted, which is deterministic for these types. One robustness nit in the new file. Suggestion (1)
Verdict: clean |
Fleet review (qwen)Expose exact HTTP runtime contract: registers 27 HTTP routes from typed metadata, adds runtime_contract.go and tests. Feature PR with pending CI. Documentation updates included. Clean endpoint-only seed draft as specified. Suggestion (1)
Verdict: clean |
🔗 Linked Issue
Closes #1350
🏷️ PR Type
type:bug— Bug fixtype:feature— New featuretype:question— Question requiring tracked worktype:docs— Documentation onlytype:refactor— Code refactoring (no behavior change)type:chore— Maintenance, dependencies, toolingtype:breaking-change— Breaking change📝 Summary
📂 Changes
internal/server/runtime_contract.gointernal/server/server.gointernal/server/runtime_contract_test.godocs/RUNTIME-CONTRACT.md,DOCS.md🧪 Test Plan
go test ./internal/server -run '^TestRuntimeContract' -count=1— 3 tests PASS, exit 0.go test ./internal/server -count=1— authorized fresh 60-second-cap run PASS (22.811 s); the earlier 20-second timeout remains failed history.🤖 Automated Checks
After pushing/opening the PR, GitHub CI runs the broad unit/E2E/lint and applicable platform checks. These automated statuses remain pending until the actual checks run; do not claim a pass from local evidence. Windows checks run for PRs but not merge groups, and are not among the six required contexts. Lint and Check PR Has No Transient Artifacts also run for PRs but are not required contexts; Lint also runs on pushes to main. All required checks must pass before merge:
Closes #N/Fixes #N/Resolves #Nstatus:approvedlabelgo test ./...passesgo test -tags e2e ./internal/server/...passesnpm testpasses inplugin/pi✅ Contributor Checklist
type:*label to this PRCo-Authored-Bytrailers in commits💬 Notes for Reviewers
No merge or issue closure is authorized. The tracker must remain draft/incomplete until the complete feature is integrated and separately authorized. Child PRs target their immediate parent, not main. These branches retain the reviewed pinned base; current-main compatibility, full Go/E2E/lint/platform CI and live Pi SDK qualification are not claimed. Native assessment offered no new review (
reviewDue:false); each unit instead has the required independent verification. The prior whole-candidate native acknowledgement is not approval of these intermediate slices. Historical setup/timeouts remain failed evidence, not retroactive passes.This seed implements only the Go endpoint. The generation command and Pi qualification documented here belong to the following children and are absent from this seed; do not treat final-integration documentation as current seed feature proof.
Chain Context
mainsize:exceptionaccepted for this cut3d94ad24, then immediate-parent work-unit commitChain Overview
Scope
Autonomy
Cross-repository publication boundary
The draft Go tracker targets
Gentleman-Programming/engram:mainfromdnlrsls/engram:feat/issue-1350-runtime-contract. Generator and Pi PRs live indnlrsls/engramand target their exact immediate-parent feature branches, not the fork's oldermain. All three exact commits retain the reviewed pinned base; neither repository'smainis changed. The accepted review budgets are 436 / 412 / 817 lines, including generated output.The canonical approved issue is #1350. Fork children use a fully qualified closing reference so they do not accidentally refer to a different fork issue. The inspected legacy metadata workflow only parses bare
Closes #Nand looks up issues in the PR destination repository; cross-repository approval validation is therefore not established and may fail. No fake local issue, workflow weakening, settings change, merge or issue closure is authorized. CI results remain pending until observed.All three PR cross-links above use their actual repository-qualified URLs. Future child integration or growth of the upstream tracker remains a separate decision; this does not authorize a new 1,665-line publication exception.