Files
ObsidianDragon/tests/fixtures/hushchat/CAPTURE_MANIFEST.md
DanS 863d015628 feat(lite): lite wallet foundation (inherited working-tree state)
Preserve the previously-uncommitted lite wallet implementation and related dev WIP
under version control:
- src/wallet/ lite services: client bridge, bridge runtime, connection, lifecycle,
  sync, gateway, result parsers, state mapper, artifact contract/resolver, refresh
  services, UI adapters, wallet_backend/capabilities. (Includes two small M1 fixes:
  lifecycle walletReady now parses the response; default chain name -> "main".)
- src/chat/ chat protocol; tests/fixtures/ (lite + hushchat); tools/hushchat_fixture_check.cpp;
  scripts/build-lite-backend-artifact.sh.
- Pre-existing modified app_network/security/wizard, network_refresh_service, sidebar,
  mining_tab, bootstrap dialog, and version headers captured as-is.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 21:15:28 -05:00

1.9 KiB

HushChat Capture Manifest

The capture manifest is a redacted provenance file for a staged directory of real, disposable, non-sensitive SilentDragonXLite HushChat vectors. It does not replace fixture validation; it records that the staged directory was handled under the safety rules required before the Batch 11 strict replacement dry run.

Copy templates/capture-manifest.template.json into the staged fixture directory as capture-manifest.json, then change status to staged and each category status to ready. Keep the file limited to provenance, handling flags, category filenames, and the dry-run command.

Validate only the manifest metadata with:

./build/bin/HushChatFixtureCheck --validate-capture-manifest /path/to/staged/hushchat-fixtures

The validator accepts a directory containing capture-manifest.json or a direct manifest file path. It prints only a redacted report with schema status, category coverage, handling-flag counts, basenames, and error names.

The manifest must include:

  • schema dragonx.hushchat.capture-manifest.v1
  • status staged
  • a redacted manifest id
  • staged fixture directory name
  • dry-run command containing HushChatFixtureCheck --replacement-dry-run
  • provenance fields for source client, source client version or commit, capture date, network, and capture method
  • all required handling flags set to true
  • exactly one entry for each required fixture category

The manifest must not include passphrases, plaintext, memo contents, private keys, wallet files, ciphertext byte dumps, stored chat key fields, public-key fields, secretstream headers, derived keys, session keys, or any fixture object. The manifest validator rejects known prohibited field names, but it is still a metadata guard rather than a secret scanner.

After the manifest validates, run the strict replacement dry run against the same staged directory. Pending checked-in fixtures must not be replaced until both commands succeed.