feat: phase 8 serviceadapter crd rollout (32/33 tasks)
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
# 8.9 — `X-Service: memory` adapter, extended resources (BLOCKED)
|
||||
|
||||
Phase: 8 — ServiceAdapter CRD rollout
|
||||
Stage: BLOCKED — do not start until the upstream note below is resolved
|
||||
Depends on: 8.8 (core `memory` adapter live)
|
||||
|
||||
Design contract: `~/workplace/Poimen/memory/DESIGN.md` "Distributed API Layer"
|
||||
section. Covers `GET /memory/projects/{id}/notes`, `POST /memory/context`, and the
|
||||
optional `POST /memory/nodes/by-git`/`by-commit`/`by-author` git-aware lookups.
|
||||
|
||||
**Upstream status, checked against that repo's own task board, not assumed:**
|
||||
- `notes` is listed in the M3.5 task table but **not** in the confirmed-tested set
|
||||
(`query`, `projects`, `projects/{id}/status`, `ingest`, `skills`, `skills/{name}`)
|
||||
- `context` depends on M3.7.7 (signature extraction) and M3.7.8 (symptom vector) —
|
||||
neither is built per that repo's phase ordering
|
||||
- git-aware lookups (M3.5.9) are explicitly marked optional in that repo's own board
|
||||
|
||||
**Before writing any CR entry here: re-check `~/workplace/Poimen/memory/memory-tasks/INDEX.md`
|
||||
for current status of M3.5.6, M3.7.*, and M3.5.9.** If they are still not shipped,
|
||||
stop and report that instead of building a gateway route with nothing live to call —
|
||||
per this repo's own zero-context-agent rule, a route to a 404 is not verifiable and
|
||||
this task cannot be completed honestly.
|
||||
|
||||
- [ ] Confirm `notes`, `context`, and `nodes/by-*` are live upstream (curl the
|
||||
Service directly from inside the cluster, not through the gateway, to check)
|
||||
- [ ] `responseSchema` for `context` is defined **from the real response**, not from
|
||||
`DESIGN.md`'s prose description (that doc itself says the exact bundle shape
|
||||
isn't pinned down — "the bundle is a composition" with no worked JSON example)
|
||||
- [ ] Extend `k8s/serviceadapter-memory.yaml` (from 8.8) with these three resources,
|
||||
same `memory:read` capability as `query`/`skill`/`project`
|
||||
- [ ] git-aware resources only added if M3.5.9 is confirmed shipped — otherwise
|
||||
ticket this as follow-up and leave this task's remaining boxes unchecked
|
||||
|
||||
## Verify
|
||||
|
||||
```bash
|
||||
# from inside the cluster, upstream directly — confirms it exists before routing to it
|
||||
kubectl -n poimen exec deploy/poimen-memory -- curl -s localhost:8080/memory/context \
|
||||
-X POST -d '{"tool":"kubectl"}'
|
||||
# expected: 200 with a real body, not 404 — if 404, stop, this task is blocked
|
||||
|
||||
curl -s -H 'Authorization: Bearer <jwt-with-memory:read>' \
|
||||
https://api.riotpiao.com/ -H 'X-Service: memory' -H 'X-Resource: notes' \
|
||||
-G --data-urlencode 'project=poimen'
|
||||
# expected: 200, array of L1/L2 note objects
|
||||
|
||||
curl -s -X POST -H 'Authorization: Bearer <jwt-with-memory:read>' \
|
||||
https://api.riotpiao.com/ -H 'X-Service: memory' -H 'X-Resource: context' \
|
||||
-d '{"tool":"kubectl"}'
|
||||
# expected: 200, bundled context response
|
||||
```
|
||||
Reference in New Issue
Block a user