docs(VeraCrypt): add TODO.md and surface the open defect in crossrepostatus - #30
Merged
Merged
Conversation
crossrepostatus.md listed VeraCrypt but carried no status, so an open, deliberately unfixed defect (the RNG check-then-lock race) was invisible to anyone reading only the index. VeraCrypt/TODO.md is kept in the workspace rather than in the repo, because the fork is used to prepare upstream PRs and these items must not reach upstream. The reason is stated in both files. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P5zDjB2RVZPB7rGAgHBsEn
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 the gap left by #29:
crossrepostatus.mdlisted VeraCrypt as a tracked repo butcarried no status for it, so an open, deliberately unfixed defect was invisible to
anyone reading only the index.
The problem
After #29 the reproduced RNG check-then-lock race was documented in
VeraCrypt/concurrency-findings.md— analysis, standalone reproducer, and a three-stepfix. But the index said only "build and coverage tooling, submitted PRs, local-only
findings". Nothing indicated that one of those findings is a live defect with a designed
but unapplied fix.
The new two-tier structure says single-repo open work belongs in each repo's own
TODO.md— and VeraCrypt had none.What changed
VeraCrypt/TODO.md(new)Groups the open items by what is actually blocking them, which is the useful axis here:
VolumeCreatorthreadVolumeLayoutheader, deadValidateParameters,if_debugin ReleaseKeyfile.cppat 47 %,VolumeHeader.cppdecrypt loopAddToPoolguard is covered but not assertedTwo entries are deliberately phrased as do not do this, because both look like easy wins
and both are traps:
EncryptionMode::ValidateParameterssits at 38.71 % and cannot be raised honestly —calling it from a test paints the line green while the real point (production never
validates these parameters) stays untouched.
ValidateState()is compiled out of Release. Testing it needs aDEBUG=1build andproves nothing about the shipped binary.
Why the file is not in the VeraCrypt repo
The other tracked repos keep
TODO.mdin the repo itself. VeraCrypt cannot: the fork isused to prepare upstream pull requests, and these items are a local record that must not
reach upstream. A
TODO.mdinside the working copy would sooner or later be swept into abranch. The reason is stated in both
crossrepostatus.mdand the file itself, so thedeviation from the convention does not read as an oversight.
crossrepostatus.mdVeraCrypt/TODO.mdadded to the single-repo-open-work list, with the note abovereproduced defect that is deliberately unfixed and unreported
VeraCrypt/README.mdTODO.mdadded to the contents table as the start here entry.Verification
All relative links and both section anchors (
#suggested-fix,#weaknesses-that-remain) resolve against the files onmain.Scope
Documentation only. Branched off current
main(dbe536d), no production code, no changesto any sibling repo. Nothing here is reported upstream.
Assembled with the support of Anthropic Claude Opus.