chore(deps): take the vta-sdk 0.34 line the VTA and VTC deploy - #286
Conversation
Refreshes the dependency graph onto what `verifiable-trust-infrastructure` main actually builds against, rather than onto what is newest on crates.io: vta-sdk 0.32.4 -> 0.34.0, trust-tasks-rs / -capability-client 0.17 -> 0.18.5, affinidi-tdk 0.10 -> 0.12, affinidi-messaging-sdk 0.21 -> 0.22, dtg-credentials 0.5 -> 0.6, and the two dev-dependencies that have to move with them — vta-service 0.23 -> 0.24 (MockVta) and affinidi-messaging-test-mediator 0.4 -> 0.5.2. Those are not independent choices. `TrustTask` crosses the vta-sdk boundary in both directions, `vti-common` re-exports `vta_sdk::acl` as its own public API, and the messaging stack carries trust-tasks types in *its* API — so a crate left a line behind is a second, semver-incompatible copy whose types do not unify. The graph now holds exactly one vta-sdk, one trust-tasks-rs, one affinidi-tdk and one affinidi-messaging-sdk across `normal,build,dev`. ## The one source change vta-sdk 0.34 gave `persona_attribute_list` an `include_sensitive` argument, and `pool::list` passes `include_values` through to it. That preserves this client's behaviour exactly, and it is deliberate rather than expedient: the identity pane has one escalation (`show_values`) and this control needs two. `show_values` both asks the agent for values and reveals masked ones whole, so passing `false` would not narrow the read — it would make every `sensitivity: high` attribute come back valueless and render as "(no value)" under a reveal, which is a wrong answer about what the holder holds and one glance from "nothing is stored". `masked_is_not_the_same_state_as_absent` is the test that names that hazard. What this does close is a documentation defect: `claim_types`'s module header stated as fact that the sensitivity half of the registry "does not exist" because the task took `include_values` and nothing finer. It exists now. The header says so, and says what a client needs before it can use it — the `s` reveal fetching that one value on its own. ## Deliberate holds - `dirs` stays at 6 against a published 7. vta-sdk and did-git-sign both declare `^6` and this is the only line that could split them; 7's sole breaking change is `preference_dir` on Windows, and we call `home_dir` and `config_dir`. - `rand` 0.8 and `x25519-dalek` 2 stay where their existing notes put them: pgp 0.20 is still the latest release and still declares both. ## did-git-sign, for the sixth cycle running The published 0.4.6 requires `vta-sdk ^0.27`, which against 0.34 does not merely split the graph — it fails to build. VGI cannot cut 0.4.7 while its `trql-client` git pin stands, so the `[patch.crates-io]` rev moves to the head of OpenVTC/verifiable-git-infrastructure#37 (VGI onto vta-sdk 0.34 / TDK 0.12, no source change, green). The three-deep unwind back to a published 0.4.7 is unchanged and now written out in the patch block. ## cargo-deny Adds RUSTSEC-2026-0173 (proc-macro-error2 unmaintained) to the ignore list — a build-time proc-macro reaching only the dev graph, via vta-service 0.24's new vti-rooms -> openmls -> hpke-rs -> libcrux -> hax-lib chain. Removes RUSTSEC-2025-0134, which no longer matches anything and which cargo-deny warns about for that reason. Gate: fmt, clippy `-D warnings`, `RUSTDOCFLAGS=-D warnings cargo doc`, `cargo deny check` (all four sections), `cargo test --workspace`, and `cargo test --workspace -- --include-ignored` so the MockVta e2es actually run against vta-service 0.24. Default and `--no-default-features` both check. Signed-off-by: Glenn Gore <glenn.g@affinidi.com>
… merged The rev named the PR branch head. It has merged, tree-identical, as `5111dc1` on VGI main, so the pin moves to that — a commit on `main` rather than one on a branch that can be deleted under it. Nothing else changes: still a `rev` and never a `branch`, still resolving `did-git-sign` 0.4.6 to a tree that builds on vta-sdk 0.34, and the graph still holds one `vta-sdk` and one `trust-tasks-rs` across normal,build,dev. What the merge does *not* discharge is the publish chain, and the manifest comments now say which half moved. 0.4.7 still cannot be released while VGI's own `trql-client` git pin stands, so all three unwind steps — trust-registry #128 publishing `trql-client` 0.15, VGI swapping its pin back to a version and tagging, this workspace deleting the patch block — remain open. Signed-off-by: Glenn Gore <glenn.g@affinidi.com>
|
VGI#37 has merged, so the merge-order note at the bottom of the description is settled: the Re-verified on the new rev: The merge discharges only the first obligation — VGI main builds on vta-sdk 0.34. It does not unblock the publish, because
|
…needs (#287) #286 took vta-sdk 0.34, which gave `persona_attribute_list` an `include_sensitive` argument — the read-path control `claim_types`'s module header had been recording as missing. `pool::list` passes `include_values` through to both arguments, so behaviour is unchanged and the distinction is not yet honoured. The reason that is not simply an oversight to fix with a `false` is worth having written down where the work is scheduled rather than only in a code comment: the pane has one escalation and the control needs two. `show_values` both asks the agent for values and reveals masked ones whole, so a listing that asked for values but not for sensitive ones would make a mobile or a card number come back valueless and render as "(no value)" under a reveal — indistinguishable from holding nothing, which is the confusion `masked_is_not_the_same_state_as_absent` exists to name. Kept out of #286 because a tracker change does not belong in a code diff. Signed-off-by: Glenn Gore <glenn.g@affinidi.com>
Refreshes the dependency graph onto what
verifiable-trust-infrastructuremain actually builds against, rather than onto what is newest on crates.io.vta-sdktrust-tasks-rs/-capability-client^0.18.3; 0.18.5 is VTI's pinaffinidi-tdkaffinidi-messaging-sdkdtg-credentialsvta-service(dev)affinidi-messaging-test-mediator(dev)^0.21/ TDK^0.11/ trust-tasks^0.17These are not independent choices.
TrustTaskcrosses the vta-sdk boundary in both directions,vti-commonre-exportsvta_sdk::aclas its own public API, and the messaging stack carries trust-tasks types in its API — so a crate left a line behind is a second, semver-incompatible copy whose types do not unify. The graph now holds exactly onevta-sdk, onetrust-tasks-rs, oneaffinidi-tdkand oneaffinidi-messaging-sdkacrossnormal,build,dev.The one source change
vta-sdk 0.34 gave
persona_attribute_listaninclude_sensitiveargument, andpool::listpassesinclude_valuesthrough to it. That preserves this client's behaviour exactly, and it is deliberate rather than expedient: the identity pane has one escalation (show_values) and this control needs two.show_valuesboth asks the agent for values and reveals masked ones whole, so passingfalsewould not narrow the read — it would make everysensitivity: highattribute come back valueless and render as(no value)under a reveal, which is a wrong answer about what the holder holds and one glance from "nothing is stored".masked_is_not_the_same_state_as_absentis the test that names that hazard.What this does close is a documentation defect.
claim_types's module header stated as fact that the sensitivity half of the registry "does not exist" because the task tookinclude_valuesand nothing finer. It exists now; the header says so, and says what a client needs before it can use it — thesreveal fetching that one value on its own.Deliberate holds
dirsstays at 6 against a published 7. vta-sdk and did-git-sign both declare^6and this is the only line that could split them; 7's sole breaking change ispreference_diron Windows, and we callhome_dirandconfig_dir.rand0.8 andx25519-dalek2 stay where their existing notes put them: pgp 0.20 is still the latest release and still declares both.did-git-sign, for the sixth cycle running
The published 0.4.6 requires
vta-sdk ^0.27, which against 0.34 does not merely split the graph — it fails to build. VGI cannot cut 0.4.7 while itstrql-clientgit pin stands, so the[patch.crates-io]rev moves to the head of OpenVTC/verifiable-git-infrastructure#37 (VGI onto vta-sdk 0.34 / TDK 0.12, no source change, green on its own pipeline). The three-deep unwind back to a published 0.4.7 is unchanged and now written out in the patch block.cargo-deny
Adds RUSTSEC-2026-0173 (
proc-macro-error2unmaintained) — a build-time proc-macro reaching only the dev graph, via vta-service 0.24's newvti-rooms -> openmls -> hpke-rs -> libcrux -> hax-libchain. Removes RUSTSEC-2025-0134, which no longer matches anything and which cargo-deny warns about for that reason.Gate
cargo fmt --all;cargo clippy --workspace --all-targets -- -D warnings;RUSTDOCFLAGS="-D warnings" cargo doc;cargo deny check(all four sections);cargo test --workspace; andcargo test --workspace -- --include-ignoredso the MockVta e2es actually run against vta-service 0.24. Default and--no-default-featuresboth check.Merge order: OpenVTC/verifiable-git-infrastructure#37 does not need to merge first — the patch pins its head by
rev— but it should merge, or this pin points at a branch that could be deleted.