Closes three of the five open Dependabot alerts, and sets up the config that should have surfaced them as PRs in the first place.
hono 4.13.3 → 4.13.7
Three medium advisories, all fixed in 4.13.5:
GHSA
Issue
Exposure here
gqvv-2mrq-wpjv
toSSG() writes files outside the output directory
None — toSSG is never called
crvj-82cr-hjcx
Query parser reads parameters after the URL fragment, causing cache-key and proxy interpretation differentials
Low — c.req.query() is read in imageproxy.ts, icsproxy.ts and app.ts, but safeFetch validates the value it actually fetches rather than a separate pre-check, so there is nothing to desync
g6gw-c38x-mqfc
Unbounded dot-notation nesting in parseBody() can exhaust memory
None — parseBody is never called
A patch release with no API change, so it is worth taking regardless of how little of it we are exposed to. The declared range moves from ^4.7.4 to ^4.13.7 as well, so the security floor is recorded in server/package.json and not only in the lockfile.
dependabot.yml
There was no config at all, which is why nothing opened a PR and the alerts sat on the dashboard until someone went looking. One npm entry at the root covers server and web, since they share a single lockfile as one workspace; github-actions and docker entries keep the pinned node:22-alpine base and the action versions moving between weekly releases.
Routine minor and patch updates group into one PR a week. Majors are left out of the group on purpose — they are migrations rather than bumps, and each should carry its own CI run.
Still open after this
Alerts 4 and 5, GHSA-82fw-gwwq-j7x9 — path traversal in @vitest/mocker. There is no fix in the 3.x line: patched versions are 4.1.11 and 5.0.0-rc.2 only, so clearing them is a major bump from 3.2.7 across 133 test files in web. Server tests use tsx --test and are unaffected. Dev-only exposure, no browser mode configured. Worth its own PR.
Verification
npm run typecheck, npm test (168 server tests plus the web suite) and npm run build all pass locally.
Closes three of the five open Dependabot alerts, and sets up the config that should have surfaced them as PRs in the first place.
## hono 4.13.3 → 4.13.7
Three medium advisories, all fixed in 4.13.5:
| GHSA | Issue | Exposure here |
|---|---|---|
| `gqvv-2mrq-wpjv` | `toSSG()` writes files outside the output directory | None — `toSSG` is never called |
| `crvj-82cr-hjcx` | Query parser reads parameters after the URL fragment, causing cache-key and proxy interpretation differentials | Low — `c.req.query()` is read in `imageproxy.ts`, `icsproxy.ts` and `app.ts`, but `safeFetch` validates the value it actually fetches rather than a separate pre-check, so there is nothing to desync |
| `g6gw-c38x-mqfc` | Unbounded dot-notation nesting in `parseBody()` can exhaust memory | None — `parseBody` is never called |
A patch release with no API change, so it is worth taking regardless of how little of it we are exposed to. The declared range moves from `^4.7.4` to `^4.13.7` as well, so the security floor is recorded in `server/package.json` and not only in the lockfile.
## dependabot.yml
There was no config at all, which is why nothing opened a PR and the alerts sat on the dashboard until someone went looking. One npm entry at the root covers server and web, since they share a single lockfile as one workspace; github-actions and docker entries keep the pinned `node:22-alpine` base and the action versions moving between weekly releases.
Routine minor and patch updates group into one PR a week. Majors are left out of the group on purpose — they are migrations rather than bumps, and each should carry its own CI run.
## Still open after this
Alerts 4 and 5, `GHSA-82fw-gwwq-j7x9` — path traversal in `@vitest/mocker`. There is no fix in the 3.x line: patched versions are 4.1.11 and 5.0.0-rc.2 only, so clearing them is a major bump from 3.2.7 across 133 test files in `web`. Server tests use `tsx --test` and are unaffected. Dev-only exposure, no browser mode configured. Worth its own PR.
## Verification
`npm run typecheck`, `npm test` (168 server tests plus the web suite) and `npm run build` all pass locally.
**Merged** 2026-09-10 as coffey-labs/ihasmail@9418d3f93589
<sub>Rebuilt from: git history, session transcript.</sub>
This repo is archived. You cannot comment on issues.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes three of the five open Dependabot alerts, and sets up the config that should have surfaced them as PRs in the first place.
hono 4.13.3 → 4.13.7
Three medium advisories, all fixed in 4.13.5:
gqvv-2mrq-wpjvtoSSG()writes files outside the output directorytoSSGis never calledcrvj-82cr-hjcxc.req.query()is read inimageproxy.ts,icsproxy.tsandapp.ts, butsafeFetchvalidates the value it actually fetches rather than a separate pre-check, so there is nothing to desyncg6gw-c38x-mqfcparseBody()can exhaust memoryparseBodyis never calledA patch release with no API change, so it is worth taking regardless of how little of it we are exposed to. The declared range moves from
^4.7.4to^4.13.7as well, so the security floor is recorded inserver/package.jsonand not only in the lockfile.dependabot.yml
There was no config at all, which is why nothing opened a PR and the alerts sat on the dashboard until someone went looking. One npm entry at the root covers server and web, since they share a single lockfile as one workspace; github-actions and docker entries keep the pinned
node:22-alpinebase and the action versions moving between weekly releases.Routine minor and patch updates group into one PR a week. Majors are left out of the group on purpose — they are migrations rather than bumps, and each should carry its own CI run.
Still open after this
Alerts 4 and 5,
GHSA-82fw-gwwq-j7x9— path traversal in@vitest/mocker. There is no fix in the 3.x line: patched versions are 4.1.11 and 5.0.0-rc.2 only, so clearing them is a major bump from 3.2.7 across 133 test files inweb. Server tests usetsx --testand are unaffected. Dev-only exposure, no browser mode configured. Worth its own PR.Verification
npm run typecheck,npm test(168 server tests plus the web suite) andnpm run buildall pass locally.Merged 2026-09-10 as coffey-labs/ihasmail@9418d3f935
Rebuilt from: git history, session transcript.