Skip to content

chore(deps-dev): bump follow-redirects from 1.15.11 to 1.16.0#3

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/follow-redirects-1.16.0
Open

chore(deps-dev): bump follow-redirects from 1.15.11 to 1.16.0#3
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/follow-redirects-1.16.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Apr 15, 2026

Copy link
Copy Markdown

Bumps follow-redirects from 1.15.11 to 1.16.0.

Commits
  • 0c23a22 Release version 1.16.0 of the npm package.
  • 844c4d3 Add sensitiveHeaders option.
  • 5e8b8d0 ci: add Node.js 24.x to the CI matrix
  • 7953e22 ci: upgrade GitHub Actions to use setup-node@v6 and checkout@v6
  • 86dc1f8 Sanitizing input.
  • See full diff in compare view

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.11 to 1.16.0.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](follow-redirects/follow-redirects@v1.15.11...v1.16.0)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-version: 1.16.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Apr 15, 2026
jeswr added a commit that referenced this pull request Jun 21, 2026
…-inject, cache best-effort, byte purge, HEAD body

roborev (codex) found 5 real issues unit tests missed on feat/phase-1-shared-replica.
All fixed, with adversarial tests.

High #1 — global-fetch over-divert broke non-pod web traffic. The inject diverted
EVERY cross-origin http(s) fetch into the gated path, so an app's calls to third-party
APIs/CDNs were DENIED (403) as unauthenticated. Decision (option b — keep the inject
DUMB, the SW the boundary): the inject routes everything but marks the request
`autoDivert: true`; the SW NATIVE-PASSES-THROUGH (plain unauthenticated fetch, no token,
no replica) for any non-ALLOW gate decision instead of a 403, so normal web traffic is
never broken and access can never widen (a native fetch carries no credential). The
credential/replica path is taken ONLY on an explicit gate ALLOW (known pod origin from a
granted requesting origin). An explicit window.solid.fetch (autoDivert false) keeps the
403. Applied at every SW exit: gate deny, forbidden/opaque origin, and no-session.

Medium #2 — double injection. inject.js was BOTH manifest-declared and dynamically
registered → could run twice and throw on the configurable:false defineProperty. Removed
the manifest MAIN-world declaration (dynamic registerContentScripts is now the single
path) AND added a `window.__solidInjected`/`'solid' in window` idempotency guard so a
double-run is an inert no-op regardless.

Medium #3 — a non-cacheable 2xx (206 / Vary:*) broke the request when cache.put
rejected. Caching is now best-effort: cache.put + metadata write are wrapped in try/catch,
the live response is cloned up-front and returned regardless of persist failure.

Medium #4 (privacy) — the null-WebID logout purge cleared metadata but left CacheStorage
bytes. Added cache-key enumeration (ReplicaByteCache.keys(), defaulting to cache.keys());
the null purge now deletes all replica byte entries, so bytes + metadata + nonces are all
gone on an unknown-prior logout/reset.

Low #5 — HEAD returned a body (the cached GET body on a 304, or a pod's stray HEAD body).
A HEAD response is now body-stripped on every served path (304 cache hit, live egress) in
the replica and in the SW relay.

Tests: +23 cases across replica/SW + a new test/inject.test.ts (8 cases, fresh-JSDOM-per-
test, no new dep — local test/jsdom.d.ts ambient). Gate green: lint + typecheck + 262
tests + build.

Model: claude-opus-4-8
Provenance: Opus 4.8 (Fable unavailable) — re-review/upgrade candidate
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants