CodeVetter · Repo Unpack · Contributor handoff
honojs/hono
Tests and CI were inspected, not executed, and this brief is a bounded inventory rather than exhaustive coverage. Begin edits from the relevant runtime path and its colocated tests, preserving public typing and packaging contracts. Adapter changes require attention to both separate packages and deprecated compatibility surfaces. The original task authorizes read/search only; the commands described here are references for a later authorized implementation task.
- Read HonoBase, compose, Context and HonoRequest together for dispatch changes because they jointly own handler order, route indexes, response finalization and parsed input.
- Preserve both single-handler and composed dispatch semantics and HEAD-to-GET behavior; the Hono test suite distinguishes composed and uncomposed requests.
- Use the declared pnpm@12.6.0 package manager and existing scripts as the command reference; root test includes type checking, while runtime and adapter scripts have distinct scopes.
- For a later authorized verification, inspect the smallest colocated suite first, then use root test and the affected runtime/adapter script; declaration tests additionally exercise a temporary external consumer and rely on dist/types behavior. (inferred)
- Keep new public exports synchronized between package.json and jsr.json because the build plugin checks parity in both directions.
- Adapter work should begin with docs/MAINTAINING.md and the relevant package manifest/config; adapter versions and peer compatibility are independent of root Hono releases.
- Do not consume req.raw bodies casually when later middleware or forwarding needs reconstruction: cloneRawRequest throws when the body was consumed without a HonoRequest cache.
- Read SSG plugin order, route discovery and output containment before changing generation; custom plugins replace the default plugin list, and discovery invokes handlers.
- Follow the established formatter settings: two spaces, no semicolons, single quotes, LF and print width 100; lint requires top-level type import conventions.
- Treat observed assertions and CI steps as verification plans, not passing evidence: cache tests use mocked caches, Lambda tests use mocked awslambda, and CI definitions only specify what automation should run.
- Avoid release/build cleanup scripts during source-only investigation: root build invokes remove-dist, and maintainer adapter release instructions describe committing, tagging and pushing.