Repository navigation
Results say what their run was against - #83
Merged
Merged
Conversation
A test's fingerprint says the test hasn't changed, and nothing about the program, so a pass saved for one build read as evidence about the next. - Provenance: an application revision, a data mode and a fixture name, each given by the caller or unknown. Nothing is collected from the environment. - RunOptions::provenance and expectation-run --app-revision, --data-mode and --fixture keep it with the run, as provenance lines after the run's line in the results. Older files have none and still load, as unknown. - A merged report keeps each result's own run, and each test's page says what its result was run against. - Acceptance::with_expected and expectation docs --expect-app-revision, --expect-data-mode and --expect-fixture say what the manual is for: each page then says matching, something else, or unknown, and the test report counts them. No verdict changes because of it. Closes #79 Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
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.
Closes #79.
A test's fingerprint says the test hasn't changed, and nothing about the program, so a pass saved for one build could be read as evidence about the next.
What changes
Provenance: an application revision, a data mode and a fixture name. Each is given by the caller or is unknown. Nothing is collected from the environment.RunOptions::provenance, orexpectation-run --app-revision REV --data-mode MODE --fixture NAME. The results file gets aprovenanceline per part after therunline. Older files have none and still load, as unknown. Run ids, timestamps, fingerprints and stale handling are untouched.Acceptance::with_expected, orexpectation docs --expect-app-revision REV --expect-data-mode MODE --expect-fixture NAME. Each test page then says matching, something else, or unknown, and the test report's first page counts them. No verdict changes, and nothing is hidden.expectation-run --docswrites its manual for what it was run against.Tests
crates/harness/tests/provenance.rs: save/load round trip, partial and absent provenance, legacy files, an unknown future part, a manual merged from two builds, and the matching / unknown / nothing-expected pages.crates/remote/tests/provenance.rs: the realexpectation-runandexpectation docsbinaries with the new flags.cargo test --workspaceandcargo clippy --workspace --all-targets -- -D warningspass locally.Not in this PR: merging still picks a result by status rank, not by whether it matches the expected provenance.
🤖 Generated with Claude Code