Skip to content

deps: resolve direct Dependabot upgrades with compatibility proof - #118

Merged
betterthanclay merged 2 commits into
mainfrom
ns-85c2501c-e798-4cac-a6bb-7c527b6276a0
Sep 24, 2026
Merged

betterthanclay merged 2 commits into
mainfrom
ns-85c2501c-e798-4cac-a6bb-7c527b6276a0

Conversation

@betterthanclay

Copy link
Copy Markdown
Contributor

Summary

Resolve the direct Dependabot upgrades for argon2 0.6.0, tree-sitter 0.27.0, and tabled 0.22.0, including tree-sitter-language 0.1.8, on current main.

Supersedes source PRs #81, #98, #101, and #102 after this aggregate merges. Keep those bot PRs open until then.

Compatibility proof

  • Pinned a v0.13.0 Argon2id derived-key vector and old ciphertext. The upgraded build derives identical bytes and opens that ciphertext with the original passphrase.
  • The Rust, JavaScript/TypeScript, Python, and PHP graph fixture suite passed before and after the upgrade, including representative facts and parse diagnostics.
  • Pinned exact v0.13.0 plain table bytes, including padding and line breaks.
  • Evidence log records the lockfile/transitive delta and validation.

Validation

  • Focused secrets, codegraph, and UI tests: 178 passed.
  • Full workspace: 3,922 passed across 97 test suites, 0 failed. The test command completed; a shell wrapper then failed on zsh's reserved status variable after logging the result.
  • cargo deny check: passed (advisories, bans, licenses, sources).
  • cargo fmt --all -- --check: passed.
  • cargo clippy --all-targets --locked -- -D warnings: passed.
  • effigy qa:docs: passed on the rebased head.
  • git diff --check origin/main...HEAD: passed.

Queue owns independent exact-head review, hosted CI, merge, and the four bot-PR dispositions.

@betterthanclay

Copy link
Copy Markdown
Contributor Author

Independent exact-head review of PR #118 for g10.015 at 2b3bbb1 (merge-base 1b09755 = current origin/main; working tree clean; two commits: e52a9f5 deps + 2b3bbb1 evidence log). Verdict: ready to merge.

Scope and diff

Independent compatibility verification

Reviewer-built A/B harness in a scratch crate outside the workspace, pinning both old and new versions side by side:

  • argon2 0.5.3 and argon2 0.6.0 both derive exactly 9ae366cc91b47ba2598b19140035cde0e86a49dc719811965943b16eb2c8598d from the documented inputs (Argon2id v0x13, m=19456 KiB, t=2, p=1, 32-byte 0x2a salt, passphrase "correct horse battery staple"). This independently confirms the pinned vector genuinely originates from the 0.5.3-era baseline and that 0.6.0 is byte-compatible — vault compatibility is proven, not just asserted.
  • Recomputed the 80-byte XChaCha20Poly1305 ciphertext from the derived key plus a 24-byte 0x07 nonce over the payload JSON {"records":{"database_url":{"value":"postgres://secret-value"}}}; it matches the test's pinned old-ciphertext vector byte-for-byte, confirming vector provenance and deterministic-compatible encryption. AEAD round trip of the pinned bytes also verified.
  • tabled 0.21.0 and 0.22.0 both render exactly "Name Value \nalpha 1 \nbeta two " for the test fixture (Builder + Style::blank + Padding::new(0,2,0,0)) — plain table bytes preserved across the upgrade.
  • Graph behavior: the existing Rust, JavaScript/TypeScript, Python, and PHP language indexer fixtures (13 tests) plus mixed-repository and graph JSON tests pass on the upgraded base against unchanged checked-in expectations.

Validation re-run by reviewer on the exact head

  • cargo test -p effigy-secrets -p effigy-codegraph -p effigy-ui --locked: 178 passed, 0 failed (156 + 15 + 7).
  • cargo test --workspace --locked: 3,922 passed, 0 failed across 97 suites — matches the evidence log exactly.
  • cargo deny check: advisories ok, bans ok, licenses ok, sources ok.
  • cargo fmt --all -- --check: pass. cargo clippy --all-targets --locked -- -D warnings: pass.
  • effigy qa:docs: pass. git diff --check: pass.
  • Hosted CI on the PR head: all 7 checks green (Lint & format, Released Surface Baseline, Supply-chain cargo-deny, Test macos-latest, Test ubuntu-latest, Validate JSON contracts, Validate docs links).

Minor, non-blocking notes

  • The evidence log's lockfile sentence cites digest and tempfile edge changes but omits the argon2→cpufeatures 0.3.0 edge; both cpufeatures versions remain in the lock, so "no unrelated package version changed" stays accurate. Cosmetic only; no change requested.
  • The worker-transparently-disclosed zsh status wrapper failure did not affect results; this reviewer's direct cargo test --workspace --locked run completed with 0 failures.

Acceptance oracle

Satisfied on every row: vault compatibility (fixed derived-key and ciphertext vectors), graph behavior (fixture parity), table behavior (exact bytes), targeted supply chain (exact manifest/lock diff + cargo deny + tests + CI), honest PR disposition (all four bots open pending this merge). Recommend merge; after merge, Queue closes #81, #98, #101, and #102 as superseded with the #118 merge link.

@betterthanclay
betterthanclay merged commit 2fadd13 into main Sep 24, 2026
7 checks passed
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