Loading
docs(npm): add npm-hosted plan Step 26 (wire route table to real handlers)
Amends the S11 npm-hosted plan to add the route-table wiring step that was never assigned after Step 8.
internal/format/npm/handler.gostill dispatches every format route to thenotImplemented501 placeholder, including the already-merged read handlers (tarball download, packument GET, dist-tags GET). No step was ever assignedhandler.goas(Modify).- New Step 26: refactor
NewHandlerinto an OCI-styleNewDispatchHandlerWith*constructor chain (an unwired route falls back to the interim 501), inject the real handlers inwire_npm.go(threading the sharedBlobStoreandcfg.Npm), and add per-action wiring tests plus a composition-root boot test. Mirrors OCI (S12) and Maven (S10), which inject handlers at the composition root; the seam follows OCI's chain per review. - Cross-format datastore alignment (converging the merged npm/Maven
stores onto OCI's explicit
qrm.DBprovider-closure per ADR-023) is out of scope here and tracked in #256. - Step 23 (conformance) re-pointed at Step 26; the DAG, Status table, and Testing Strategy are updated to match.
- Both #238 (closed) ride-alongs resolve out: the
repositories.soft_deleted_atgate on the async rebuild path already landed inNpmPackageByID, and the pool-relativerebuildMaxInFlightchange stays deferred to S27 per the existingTODO(s27-cache-rebuild).
Related to #238 (closed)
Edited by Dzmitry (Dima) Meshcharakou