Skip to content

fix: interoperate with bounded age GREASE stanzas - #474

Closed
fujibee wants to merge 3 commits into
dogfood/retention-resyncfrom
dogfood/age-v1-grease
Closed

fix: interoperate with bounded age GREASE stanzas#474
fujibee wants to merge 3 commits into
dogfood/retention-resyncfrom
dogfood/age-v1-grease

Conversation

@fujibee

@fujibee fujibee commented Jul 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • revise the unpublished age-v1 profile to follow age unknown-stanza/GREASE interoperability
  • preserve exact X25519 manifest-count enforcement and native-identity-only decryption
  • bound header parsing to 256 X25519 / 512 total stanzas, 64 KiB header bytes, and 4096-byte lines
  • add a real Rust age crate 0.12.1 GREASE fixture plus adversarial parser tests

Validation

  • node --test tests/sync_cipher.test.mjs (8/8)
  • bats tests/test_sync_cipher.bats (3/3)
  • node docs/spec/vectors/verify-age-v1-vectors.mjs (19 vectors)
  • node --test tests/remote_sync_engine.test.mjs (21/21)
  • diff/syntax checks clean

Draft/unmerged dogfood stack. Merge remains koit-gated.

@fujibee

fujibee commented Jul 27, 2026

Copy link
Copy Markdown
Owner Author

Closing as fully absorbed, not abandoned. All four files this draft carries (docs/spec/age-v1-profile.md, docs/spec/vectors/age-v1-rust-grease.json, scripts/internal/sync-cipher.mjs, tests/sync_cipher.test.mjs) are already on the integration/remote branch with identical blob hashes as of head 189e551, so nothing remains here to merge.

The GREASE-tolerance change itself (accept bounded grease stanzas, reject active non-X25519 namespaces before the grease check) went through review and travels with the integration/remote train; it will reach main when that train lands as a whole.

Closing so the open-PR list reflects work that is actually pending.

@fujibee fujibee closed this Jul 27, 2026
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