Skip to content

build(deps): bump zod from 4.3.6 to 4.4.3 in /frontend - #8

Closed
dependabot[bot] wants to merge 14 commits into
mainfrom
dependabot/npm_and_yarn/frontend/zod-4.4.3
Closed

dependabot[bot] wants to merge 14 commits into
mainfrom
dependabot/npm_and_yarn/frontend/zod-4.4.3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 10, 2026

Copy link
Copy Markdown

Bumps zod from 4.3.6 to 4.4.3.

Release notes

Sourced from zod's releases.

v4.4.3

Commits:

  • 4c2fa95ce3f3390fbc522324e406b4e9e89b88f9 docs: use Zernio primary wordmark for gold sponsor logo
  • 2aeec83eb135e3a83756e973ef44845fc5a455d2 docs: prune lapsed gold sponsors and rebalance logo sizing
  • 7391be88ac1ee5cd02057f5ccc012a1f5df4efd0 docs: prune lapsed silver/bronze sponsors and add active ones
  • 2c703322a21b4e2b12f33f49ea8430c451a68b4f docs: normalize bronze sponsor logos to github avatar pattern
  • 9195250cab0e7950efe39c3926d6c203b4b0a170 docs: remove Mintlify from bronze sponsors (churned)
  • b8dffe9e62f17e6571e6249d05cc5102b54d94e4 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)
  • 1cab69383fcdeae2a366d5e2a2fc4d8fc765d168 fix(v4): restore catch handling for absent object keys (#5937) (#5939)
  • c2be4f819064eed62c7c350a2d399b5faecd15f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent keys (#5941)
  • f3c9ec03ba7a28ae72d25cc295f38674bee0f559 4.4.3
  • 1fb56a5c18c27102dbc92260a4007c7732a0ccca docs: document release procedure in AGENTS.md

v4.4.2

Commits:

  • 0c62df0ea19fd05abdf90473e9eef7eea530fab2 Clean up docs navigation and stale labels (#5901)
  • 20cc794895cc8604fe0c87d83a5d1c3f89fad0ac chore: add security policy and refresh tooling deps
  • 6fbe07b0177efdd1bf1c0b05160e70d7a0702337 fix(docs): heading anchor links now include the hash so it doesnt scoll all the way up, follows navbar logic (#5791)
  • 4bbed1b1c73eca4ce9e59b1189ed236aa6c8b5bd Tighten discriminated union option typing
  • bbac3e567e7fccfaaf7cdc97f1ce30c295e2c908 Update PR guidance for agents
  • cf0dc942a32805c292fff59ade20a7ace980735a Merge remote-tracking branch 'origin/main' into fix-discriminated-union-key-constraint
  • 292c894a5fd2aa42e527900b83d8d7a3009a709c docs: add Zernio gold sponsor
  • 1fc9f311c28dcf80d0bb5a36b177086cbc3d8eca docs: document codec inversion
  • 1373c85da9aeff704a9762d27bc58699618aefb7 docs: remove AI disclosure guidance
  • e20d02b473c08e3a4e557bc610b1b5fac079b649 chore: ignore triage notes
  • e58ea4d91b1dfe8194b73508203213cbc7e9c936 docs: test Zod Mini tab code heights
  • 905761a5d127e8d5dd2ebb3bc88c75cb0b8149ff docs: document preprocess input type narrowing
  • bf64bac850d4dee2b7dde7e64909d5d796d32043 chore: tighten test guidance in AGENTS.md
  • 8ec4e73f4c4693b6361ad591be40fb41eb8a9f95 chore: update play.ts scratch
  • 02c2baf7d0d615872fa4528a8020603b71211702 Make z.preprocess defer optionality to inner schema (#5929)
  • 88015df8e25c44fb5385eb3ef28935119cd5edea fix(docs): drop deprecated baseUrl from tsconfig
  • c59d4474e3b4cad1b323462186cf607178ce8267 4.4.2

v4.4.1

Commits:

  • 481f7be4238c83ed58183f921b2646f340a91c6a ci: gate release publishing on full test workflow
  • 95ccab423aec720b2523c3a64cdc7e3204537cc7 test(v3): restore optional undefined expectations
  • cede2c63739a5823d6aa5093d291e9a111da943d fix(v4): reject tuple holes before required defaults (#5900)
  • edd0bf0f5ada4a8dc581c259407d7bbad0a71ea7 release: 4.4.1
  • 180d83d1dbe6a59260710cc8637a3dea2281ee56 docs: remove Jazz featured sponsor

v4.4.0

4.4.0

This is a minor release with a wide set of correctness and soundness fixes. Some fixes intentionally make Zod stricter, so code that depended on previously accepted invalid or ambiguous inputs may need small updates.

Potentially breaking bug fixes

... (truncated)

Commits
  • 1fb56a5 docs: document release procedure in AGENTS.md
  • f3c9ec0 4.4.3
  • c2be4f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent...
  • 1cab693 fix(v4): restore catch handling for absent object keys (#5937) (#5939)
  • b8dffe9 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)
  • 9195250 docs: remove Mintlify from bronze sponsors (churned)
  • 2c70332 docs: normalize bronze sponsor logos to github avatar pattern
  • 7391be8 docs: prune lapsed silver/bronze sponsors and add active ones
  • 2aeec83 docs: prune lapsed gold sponsors and rebalance logo sizing
  • 4c2fa95 docs: use Zernio primary wordmark for gold sponsor logo
  • Additional commits viewable in compare view
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for zod since your current version.


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)

Olwtelet and others added 14 commits August 9, 2026 08:46
Node 26 ships an inert built-in localStorage that stays unusable unless the
process is started with --localstorage-file. That global shadows the
implementation jsdom would otherwise install, so localStorage and
window.localStorage both resolved to undefined and every spec touching Web
Storage failed with "Cannot read properties of undefined".

Install a spec-shaped in-memory Storage from the vitest setup file, and only
when the runtime does not already provide a working one, so an environment
that supplies its own is left untouched.

Recovers i18nProvider and layerPreferences coverage.
Align every first-party identifier with the Argus product name across the
runtime, deployment and tooling surfaces:

- environment variables SHADOWBROKER_* -> ARGUS_* (35 variables)
- desktop bridge globals __ARGUS_DESKTOP__ / __ARGUS_LOCAL_CONTROL__ and the
  matching runtime types
- container images ghcr.io/olwtelet/argus-{backend,frontend}, compose service
  and container names, and the Docker-bridge trusted-host defaults that are
  keyed to those container names
- Tauri productName, bundle identifier com.olwtelet.argus, crate name
- Python project metadata, desktop shell package name, release artifacts
- outbound User-Agent product tokens
- repository and release URLs, CODEOWNERS, authorship metadata

Wire-format and cryptographic constants are deliberately left untouched
because they are an interoperability contract with existing peers rather
than branding: the mesh NETWORK_ID, NODE_ID_PREFIX, the gate-envelope and
DM-alias HKDF salts, the RNS destination app name, the signed-context
protocol tag and the DM invite message type. Renaming any of them would
silently stop signature verification against peers already on the network.

The Tauri bundle identifier change moves the operating system's per-app
storage, autostart registration and single-instance lock to a new location.
Replace the cyan/neon HUD treatment with an operations-station look: deep
black and graphite surfaces, off-white text, thin borders, no glow, no
simulated elevation. Depth comes from contrast and structural division.

The interface uses Tailwind cyan-* utilities as its default chrome in roughly
1600 places. Rather than rewriting 73 components, the cyan ramp is redefined
once in the theme layer as a neutral graphite scale, so the whole surface
retones from a single point of control and no functional component is touched
to change it.

The SMPTE colours become a signalling system rather than decoration: a
seven-bar identity strip, short tick markers for panel labels, and the feed
and severity states. Everything else stays neutral.

Removed along with the neon treatment:
- the Matrix HUD colour mode and the ~150 lines of !important overrides that
  implemented it, plus its toggle, which would otherwise have become dead
- CRT scanline, flicker animation and RGB fringe on the terminal container
- text glow, glowing borders, and the pulsing critical-alert shadow

Border width and style still carry alert severity independently of hue, so
the non-chromatic differentiation for colour-blind operators is preserved.
Map and data-provider attribution is restyled to match the new chrome and
explicitly kept visible, since it is a licence obligation.
Brazilian Portuguese becomes the product language and the default locale.
The interface no longer follows navigator.language: Argus opens in pt-BR and
only changes on an explicit operator choice.

The i18n architecture is kept. Every string still resolves through a key, so
copy stays centralized, components carry no loose text, and adding a language
later touches no component. The picker is hidden while a single locale is
registered instead of being deleted, so the mechanism stays exercised.

The translation is written as Brazilian Portuguese rather than transposed
word for word from the previous copy: operational software register, short
technical labels, and terms an operator would actually use.

The locale preference key moves to argus_locale. It holds a discardable UI
preference and has no other reader, so it is changed cleanly rather than
migrated.

Also lifts the settings subtitle out of hardcoded English into the catalogue.
The product rename reached thirteen string literals that are not names but
cryptographic domain-separation inputs: the AES-GCM additional authenticated
data and key-derivation info strings for the sealed local store, the MLS
welcome HKDF info, the reputation voter-blinding HMAC domain, and the RNS
cover-auth info.

Renaming them re-derives every key and invalidates every AAD, so previously
sealed data no longer authenticates. This surfaced as 14 collection errors,
all of them "Failed to decrypt domain JSON sealed_private_outbox.json" with
an InvalidTag underneath, and it would have destroyed an operator's sealed
private outbox, gate personas and wormhole storage on upgrade.

Restore the original literals. They are opaque bytes that are never shown to
anyone, so they carry no branding value, and they belong with the wire
constants already excluded from the rename.
Rewrite the README as product documentation: what Argus is, architecture,
requirements, install, configuration, running, Docker, desktop, security,
development, tests and data attribution. Every command and path in it was
checked against the repository rather than carried over.

Translate the operator-facing output of the startup, shutdown, mesh node and
compose scripts. These print to a terminal that may not render accents, so the
copy is written to read correctly in plain ASCII instead of relying on them.

Point CODEOWNERS at the current maintainer and drop the /helm/ rule, which
guarded a path that does not exist in this repository.

The README no longer claims a licence the repository does not carry: there is
no LICENSE file, while DATA-ATTRIBUTION.md states AGPL-3.0. Naming a licence
is the owner's call, so the section points at the data attribution and leaves
the code licence to be settled deliberately.
The dashboard title was spelled out one letter at a time and split across a
JSX span, so it read as markup rather than as a word and every textual sweep
walked straight past it. Replace it with the brand string from the catalogue,
add the SMPTE identity strip, and drop the glow class that no longer exists.

test_sha256_file writes a known payload and asserts a known digest. The rename
changed the payload bytes but not the expected digest, so the test failed
against a hash of the old string. Update the expected value to the digest of
the payload the test now writes, which keeps the check pinned to a constant
rather than recomputing it from the same input it verifies.
The policy was written when the catalogue was authored in English and other
languages were checked against it. Portuguese is now the source language, so
the section described a comparison that no longer exists and would have sent a
translator to a file that is not there.

The neutrality requirement is unchanged, including the rejection table: it is
the substantive part of the policy and it applies symmetrically regardless of
which language the catalogue is authored in.
Also documents where the interface tone is actually controlled — the cyan ramp
redefined in globals.css — and the rule that operator-facing text belongs in
the catalogue rather than in components.
The initial commit was assembled without several directories, so the tree
referenced modules that were never in it. 57 internal frontend modules, the
privacy-core crate and the OpenClaw skill package were all imported but
absent, which is why the frontend could not build and 59 test files failed
to load.

Restore them from the project source, and apply the same Argus rename to the
restored files so they match the tree they are joining: environment variables,
desktop bridge globals, container and repository URLs, and the OpenClaw skill
package path. The rename skips the wire and at-rest cryptographic constants
here exactly as it does elsewhere.

Also restores LICENSE (AGPL-3.0, which DATA-ATTRIBUTION.md already referenced
but which was not in the tree) and the Helm chart, and puts the /helm/ rule
back in CODEOWNERS now that the path exists.

The AIS upstream health wiring came with a test but not with the code it
covers: the aishub_fallback fetcher was already present while the settings
registry, health probe and onboarding form were a version behind. Complete
that wiring rather than drop the test.

One test asserted on English button copy and now matches the Portuguese the
interface renders.

frontend: 84/84 files, 768/768 tests, build succeeds
backend:  241 failed / 2421 passed, against 245 / 2415 before — no regressions
The catalogue was already Portuguese, but most components carried their text
inline rather than through it, so the interface read as a mix of two
languages. Translate the remaining operator-facing copy: panels, modals,
the Infonet terminal, settings, onboarding, map popups, and the button,
tooltip and placeholder text throughout.

Proper nouns and established technical terms stay in English, because
translating them would make the interface harder to use, not easier:
Wormhole, Infonet, Mesh, Meshtastic, Dead Drop, DM, Shodan, Polymarket,
Kalshi, OpenClaw, Tor, SAR, AOI, ADS-B, OSINT, SIGINT, and the identifiers
that name real fields such as node_id, gate_id and release_description.

Replacement was confined to JSX text nodes and the four attributes that
render text, so no identifier, key or other string literal was touched.

Ten test assertions matched on the English copy and now match the Portuguese
the interface renders. One translation carried a double quote into a
placeholder attribute and broke the parse; it uses typographic quotes now.

frontend: 84/84 files, 768/768 tests, build succeeds, lint clean
backend: untouched
The first pass matched prose, so it required an English function word to fire
and walked straight past short chrome labels. That left the parts of the
interface a user actually looks at first still in English: DATA LAYERS, TIME
MACHINE, RECORDED LAYERS, GLOBAL THREAT INTERCEPT, PLAYBACK, the feed counters,
and the status words on panels and popups.

Translate those, plus the AI assistant's opening message and example queries,
which were whole English blocks held in template literals.

Proper nouns and established technical terms stay in English, and so does the
reference data they sit next to: airline and aircraft names, ICAO codes, crypto
tickers, and acronyms like CVE, MMSI, NDVI and SGP4.

Replacement stayed confined to JSX text and the attributes that render text, so
values used as enum keys were left alone. One label needed care: the contact
trust state is both displayed and compared by string, so its display text and
both comparisons were renamed together rather than only where it renders.

The pending-contact sentence used to begin with the same words as the badge
above it, which made the badge unmatchable by exact text; it is reworded.

frontend: 84/84 files, 768/768 tests, build succeeds, lint clean
backend: untouched
Bumps [zod](https://github.com/colinhacks/zod) from 4.3.6 to 4.4.3.
- [Release notes](https://github.com/colinhacks/zod/releases)
- [Commits](colinhacks/zod@v4.3.6...v4.4.3)

---
updated-dependencies:
- dependency-name: zod
  dependency-version: 4.4.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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 Aug 10, 2026
@Olwtelet Olwtelet closed this Aug 10, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 10, 2026

Copy link
Copy Markdown
Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/frontend/zod-4.4.3 branch August 10, 2026 19:50
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.

1 participant