Conversation
Contributor
Author
|
re-kick |
CONSUMER-IMPACT: Old daemons ignore the additive optional provenance block during manifest decode, so an absent or present block does not make HELLO incompatible. Rust path-dependency consumers that construct ModuleManifest by literal must update that source promise (16 explicit constructors in-tree add provenance: None; out-of-tree literals can fail E0063 after the protocol bump, or the insula-class E0560 when source and dependency move in the opposite order).
The manifest block introduced earlier in this branch named its commit field build_commit, while master already ships build_git_sha and build_lock_digest on server.describe, consumed by ck's dashboard and its build-skew detector. Two names for one fact inside a single response is a reader trap, and renaming the shipped field would have broken an older ck against a newer daemon by making the skew check fail open. Align the unreleased name onto the shipped vocabulary instead. CONSUMER-IMPACT: Renames ManifestProvenance.build_commit to build_git_sha in subc-protocol. The field is unreleased -- it was introduced earlier in this same branch and has never appeared in a published crate -- so no out-of-tree consumer can have decoded or constructed it under the old name, and there is no deprecation window to honour. Net effect against master is unchanged from the introducing commit: one additive optional block whose fields old daemons ignore during manifest decode, with Rust literal constructors of ModuleManifest still needing the source update that commit described. Wire field names on server.describe and the daemon provenance record are untouched by this commit and remain byte-identical to master.
The sweep enumerated ManifestProvenance's fields by hand, so a field added later would escape it silently. Destructuring makes that a compile error (E0027) at the sweep instead.
CONSUMER-IMPACT: Manifests carrying non-printable or over-long provenance values are now refused where they were previously accepted; this changes behavior for any module already sending such values.
CONSUMER-IMPACT: Manifest provenance values that are empty are now rejected during HELLO decoding; modules previously sending empty declarations must omit the field or provide a non-empty value.
The CK_BUILD_REV rename replaced names that already ship on master (build.rs emission, server.describe build fields, the ck skew check) — subconscious's own provenance skew detector. Reverting per the #58 ruling keeps the rename from silently retargeting it. The two names now mark two different provenance sources rather than one name meaning either: SUBC_BUILD_* is this repo's build.rs git probe, while CK_BUILD_REV is injected as a process env by release scripts in other fleet repos. Blast radius is four in-crate sites; cargo:rustc-env never escapes the crate build, so no consumer sees the change. CONSUMER-IMPACT: none — reverts to the names already shipped on master.
…pelling The provenance human-output test pinned linux_proc_sha256, so it failed honestly on macOS (which reports macos_spawn_inode) and on Windows (which has no probe and correctly reports unavailable). The cfg split now lands on capability rather than spelling: probe-capable platforms assert a match plus membership in the closed RunningImageEvidence set, and platforms without a probe assert the unavailable verdict positively rather than skipping. CONSUMER-IMPACT: none — test-only.
Collaborator
|
Source branch is now This twin is still at Expected matrix behavior after re-kick:
Local Linux: 754 passed, 0 failed, 1 ignored; clippy/fmt clean. macOS and Windows are intentionally not claimed until this twin executes the new head. |
Contributor
Author
|
Stale twin from the r1 review round — #59 merged long since. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CI twin of #59. Not for merge.
Need help on this PR? Tag
@codesmithwith what you need. Autofix is disabled.