Commit dd2184a
feat(service-storage): mountStorageRoutes — one host door for kernels with no
* wip(storage): mountStorageRoutes host door (#15169)
* wip(storage): fixture reads answer empty for undeclared tables (#15169)
* test(storage): pin the host door's engine double to ObjectQL's write dispatch (#15169)
The `mountStorageRoutes` fixture engine answered `delete` / `update` /
`findOne` more loosely than `ObjectQL` does, which is how a dead route
ships with its suite green (#4434 / #5619). Route the three verbs through
the producer's own predicates (`assertEngineDeleteDispatch`,
`assertEngineUpdateDispatch`, `assertEngineFindOnePredicate`) and register
the three (file, verb) pairs in the gate's ledger via its `--write`.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012zTkyNHJ7TkuN2oXtP5x37
* refactor(storage): the two gate builders stay module-private (#15169)
`buildAuthSessionResolver` and `buildFileReadAuthorizer` were given an
`export` keyword by the composition refactor and nothing imports them:
measured as import EDGES (an `import`/`export … from` clause naming the
symbol, multi-line aware), both are 0, against firing positive controls
`findFileHolder` 4, `mountStorageRoutes` 2, `StorageServicePlugin` 15.
`buildFileReadAuthorizer` IS the ADR-0104 D3 download-authorization gate,
so the keyword is not free: dropping it makes "a consumer gets no handle
on the gate" hold at the module level too, not only because `index.ts`
declines to re-export and the package's `exports` map publishes `"."`
alone. `composeStorageRoutes` and `toGateRegistry` keep their exports —
`mount-storage-routes.ts` imports them, and they hand back a report of
booleans, never a gate.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012zTkyNHJ7TkuN2oXtP5x37
* ci(route-envelope): declare mount-storage-routes.ts (#15169)
`mount-storage-routes.ts` matches the `*-routes.ts` discovery convention, so
`check:route-envelope` found it and refused it as NOT DECLARED — undeclared is
an error, never a default. It writes no response body of its own: it binds the
three package-internal seams and hands the surface to `registerStorageRoutes`,
so every `/api/v1/storage/*` body is still written by `storage-routes.ts`
through the shared sendOk/sendError pair. Declared `{ responses: 0, ok: 0,
err: 0 }` with a note in the neighbours' shape. No ratchet, no vendorWire, no
other entry touched.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TezFG8ZMrNH6n5VTNpPpdH
---------
Co-authored-by: Claude <noreply@anthropic.com>http-server service (#16741)1 parent 68f8f77 commit dd2184a
8 files changed
Lines changed: 927 additions & 30 deletions
File tree
- .changeset
- packages/services/service-storage
- src
- scripts
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
88 | 88 | | |
89 | 89 | | |
90 | 90 | | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
91 | 119 | | |
92 | 120 | | |
93 | 121 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
23 | 36 | | |
24 | 37 | | |
25 | 38 | | |
| |||
33 | 46 | | |
34 | 47 | | |
35 | 48 | | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
36 | 53 | | |
37 | 54 | | |
38 | 55 | | |
| |||
0 commit comments