Skip to content

chore(deps)(deps): bump form-data from 4.0.5 to 4.0.6 in /server - #25

Open
dependabot[bot] wants to merge 233 commits into
Masterfrom
dependabot/npm_and_yarn/server/form-data-4.0.6
Open

chore(deps)(deps): bump form-data from 4.0.5 to 4.0.6 in /server#25
dependabot[bot] wants to merge 233 commits into
Masterfrom
dependabot/npm_and_yarn/server/form-data-4.0.6

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 21, 2026

Copy link
Copy Markdown
Contributor

Bumps form-data from 4.0.5 to 4.0.6.

Changelog

Sourced from form-data's changelog.

v4.0.6 - 2026-06-12

Commits

  • [Fix] escape CR, LF, and " in field names and filenames 8dff42c
  • [Dev Deps] update @ljharb/eslint-config, auto-changelog, tape f31d21e
  • [Deps] update hasown, mime-types 92ae0eb
  • [Dev Deps] update js-randomness-predictor 67b0f65
Commits
  • 64190db v4.0.6
  • 92ae0eb [Deps] update hasown, mime-types
  • f31d21e [Dev Deps] update @ljharb/eslint-config, auto-changelog, tape
  • 8dff42c [Fix] escape CR, LF, and " in field names and filenames
  • 67b0f65 [Dev Deps] update js-randomness-predictor
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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.

dependabot Bot and others added 30 commits May 18, 2026 16:12
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.24.2 to 0.28.0.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md)
- [Commits](evanw/esbuild@v0.24.2...v0.28.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…esbuild-0.28.0

chore(deps)(deps-dev): bump esbuild from 0.24.2 to 0.28.0 in /server
Auto-built by .github/workflows/build.yml from src/.
- Add badges: License, Build status, CodeQL status, GitHub stars
- Drop the duplicate architecture diagram (was two near-identical copies);
  keep the one that mentions CDP, and correct the storage label from
  "SQLite" to "file-based, <project>/.continuum/"
- Update the Memory model section: the architecture moved to file-based
  storage in .continuum/ a few versions back; the README still claimed
  one-SQLite-file-per-project
- Drop dead env vars (SUPER_TESTER_MEMORY_BACKEND, SUPER_TESTER_DB_PATH)
  and replace with the actual override (SUPER_TESTER_DATA_DIR)
- Add Contributing + License footer linking to LICENSE, SECURITY.md,
  issues, discussions

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds the v1 design for browser_upload_stage and browser_upload_file —
two new browser MCP tools that bypass the native OS file picker via a
strategy chain (direct setFileInputFiles → file-chooser intercept →
drag-drop synthesis → paste synthesis) backed by content-addressed
storage under .continuum/uploads/. Includes smart-wait, path
allowlist, error taxonomy, and a five-fixture integration test plan.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
25-task TDD plan implementing the spec in
docs/superpowers/specs/2026-05-19-browser-file-upload-design.md.
Builds server-side uploads.js (stage, dedup, GC, undici URL fetch),
extension/upload.js (4 strategies, smart wait, frame traversal),
five fixture pages, and end-to-end integration runner.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds extension/upload.js as a statically-imported ES module (manifest already
has "type": "module"). The module exposes handleUploadFile(params, clientId)
which background.js calls from a new "upload_file" case in dispatch().

Helpers needed by upload.js (cdp, ensureAttached, getSession, targetTab) are
mirrored onto globalThis from background.js to avoid a circular import. The
strategy chain itself is stubbed in this commit — real strategies land in
Tasks 14-17, smart wait in Task 18.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…earch)

Adds resolveTargetNode + frame walking + auto-detect-from-anchor to upload.js.
In this codebase `ref` is already a CSS selector (mochi snapshots emit
selectors as the "ref" field), so target.ref routes through DOM.querySelector
identically to target.selector — there is no separate ref->nodeId table to
consult, and the plan's globalThis.refToNodeId hook is intentionally absent.

autoDetectFromAnchor uses Runtime.callFunctionOn on the anchor's JS object to
find a nearby <input type=file>: descendants first, then up to 5 following
siblings, then ancestors' descendants up to 3 levels. If none match, the
anchor itself is returned as a trigger element so the intercept strategy can
click it later.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…/input events

Replaces the runStrategy stub with a dispatch table (direct/intercept/drop/
paste) and implements strategyDirect: resolve target -> describe node ->
verify it's <input type=file> -> DOM.setFileInputFiles -> dispatch
change/input events via Runtime.callFunctionOn.

Note: DOM.describeNode returns attributes as a flat [name, value, name,
value, ...] array, not a map — iterating pairwise.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…rDialog + handleFileChooser

Adds strategyIntercept and a transient CDP-event-listener fanout in
background.js's chrome.debugger.onEvent handler. The fanout reads
globalThis.__mochiCdpListeners — a Map upload.js populates per-call and
cleans up in a finally block — so listeners never leak past their request.

Intercept flow: enable Page.setInterceptFileChooserDialog -> register
chooser-listener -> Input.dispatchMouseEvent at the trigger's center
(real synthetic click required for the chooser to dispatch) -> on
Page.fileChooserOpened call Page.handleFileChooser with our file paths ->
wait up to 3s for the event -> always tear down the listener + disable
intercept in finally.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds strategyDrop: requires fileBytes from the server (base64 + mime + name
per file), then inside the page builds File objects from those bytes, stuffs
them into a DataTransfer, dispatches dragenter -> dragover -> drop on the
resolved target, and waits 500ms for a MutationObserver to observe at least
one mutation as proof the page reacted.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds strategyPaste: like 'drop' but dispatches a ClipboardEvent('paste')
carrying a DataTransfer. The target is the resolved element when it's
content-editable or a text input; otherwise the call falls back to
document.activeElement (some chat composers swallow paste only on the
focused inner editor). Mutation observation as the success signal.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…istener)

Replaces the smartWait stub with a real implementation that polls three
parallel signals until one wins or the timeout expires:

1. network-2xx — a transient CDP listener watches Network.responseReceived
   for 2xx responses whose URL matches an upload-ish pattern (configurable
   via waitFor.networkPattern; default /upload|media|attach|photo/i).
2. preview-img — an in-page MutationObserver installed via Runtime.evaluate
   watches for any element matching waitFor.previewSelector (default:
   blob:/data: image+video sources).
3. successSelector — if provided, polled every 250ms via DOM.querySelector.

Returns { signal, durationMs, ... } on success, { signal: null, reason:
'timeout', evidence } on timeout. Cleans up the network listener entry and
the in-page observer in a finally block so neither leaks across waits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…n-depth)

The scaffold in commit 354b7b9 already landed the basic .continuum/uploads/
substring check inside handleUploadFile. This commit completes Task 21 by
hardening isPathAllowed against path-traversal: any '..' segment in the
incoming path is rejected outright, even if the surrounding prefix would
otherwise match. The server normalises paths before sending, so a '..'
reaching the extension is suspicious enough to refuse.

Documents the SUPER_TESTER_UPLOAD_ALLOW_PATHS extension point that lets the
server widen the allowlist on a per-request basis without rebuilding the
extension.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…on yet)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…jsonl

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
DevZonayed and others added 24 commits June 10, 2026 02:37
Add T63 regression tests for telemetry gate anti-nag suppression: assert
that undecided telemetry config + source=resume (and =compact) does not
emit the '[continuum:telemetry] This repo hasn't decided' ASK string,
locking down the same source-aware anti-nag contract as comms gate T58.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ompact compaction counter (Task 17)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…eview-auto/flush/reset-id/purge); show===emit redact

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…/mochi:insights; register all three commands

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… bucketing, whitelist serializer)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… iid-drop + erasure

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add missing KEEP-path edge test for §13.4 iid-drop contract: assert that a
recent event (ts within dedupWindowDays) retains its iid while a 30-day-old
event in the same sweep has its iid stripped.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add corrupt-line resilience test to _store.test.mjs, covering the
deliberate try/catch fault-tolerance in readAllEvents and eraseIid
against blank + truncated/corrupt JSONL lines (mirrors run-telemetry-log.mjs test #3 pattern).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Fall back to current-day bucket (Date.now()) instead of epoch 0 when
ts is absent or non-numeric in appendEvents. This prevents distillation
records (which carry no ts field) from landing in 1970-01-01.jsonl where
they would be immediately deleted by the first sweepRetention call.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ry + improvement backlog

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…/global token buckets

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ped, all §13.8 views)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…-limit), dashboard, summary, erasure, health

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Wrap the http.createServer async handler body in a top-level try/catch so
FS errors (ENOSPC, EACCES, ENOTDIR) from appendEvents, eraseIid, readAllEvents,
aggregate, and renderDashboard are caught and returned as HTTP 500 responses
instead of escaping as unhandled rejections that terminate the process.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…README; full node --test suite green

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…st in build.yml

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… (Task 31)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…e dashboard login

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…he production endpoint

The hook subprocesses (session_end flush) can't have their fetch mocked, so with the
real write-key baked in, the harness was POSTing session_close to the live ingest.
emit now honors MOCHI_INGEST_URL; run-telemetry.sh points it at a dead local no-op.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…cy critique + self-hosted dashboard

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…mochi-plugin

# Conflicts:
#	.claude-plugin/plugin.json
#	CHANGELOG.md
#	server/package.json
@dependabot @github

dependabot Bot commented on behalf of github Jun 21, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: area/server, dependencies. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@DevZonayed
DevZonayed force-pushed the dependabot/npm_and_yarn/server/form-data-4.0.6 branch from b92167a to 194db5d Compare July 17, 2026 10:36
@DevZonayed
DevZonayed force-pushed the dependabot/npm_and_yarn/server/form-data-4.0.6 branch 3 times, most recently from 8df1a52 to f351f7e Compare August 8, 2026 04:59
@DevZonayed
DevZonayed force-pushed the dependabot/npm_and_yarn/server/form-data-4.0.6 branch from f351f7e to cdc1bf6 Compare August 17, 2026 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant