You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

9.1 KiB

status last-verified owner source
current 2026-10-21 active-agent current task evidence

Active context

Current focus

State at 2026-10-22: 5.0.0-rc9 is published, the last prerelease before the stable 5.0.0 (Decision 27). The maintainer merged #131 (823c814, 08:13Z; its tree is byte-identical to the validated head 696ac38) and the Memory Bank #132 (f2bcd9d, 10:15Z), and pushed the lightweight tag 5.0.0-rc9 at 823c814 at about 08:37Z. The CI run 39749188259 of the tag passed (Build and test, then Release without an approval step) and the GitHub prerelease appeared at 08:51:19Z. Test-PublishedRelease.ps1 printed PUBLISHED_IDENTITY_VERIFIED at 10:54Z and again inside the chain at 11:02Z (the Gallery's SHA-512 matches the nupkg, the 11 module files are identical in the nupkg and the zip, the manifest says 5.0.0-rc9); the pathological-input, ToString, and valid-shape probes give the results of the validated build on the published bytes. The lab acceptance of the published bytes runs since 11:00:36Z in one detached chain (Chain-Published.ps1 -Version 5.0.0-rc9 -Tag rc9, evidence files\rc9\rc9-published in the session folder, expected end about 12:10Z, heartbeat every 10 minutes). rc8 (tag c719197) was accepted on 2026-10-20 (record Tests/Lab/Acceptance-2026-10-20-published-rc8.md, #128).

rc9 contains (36 commits over d0cb57c, head 696ac38): the five piped parameters of Add- and Remove-NTFSAccess and -NTFSAudit are object, converted in the cmdlet (ParameterConversion), so a typo for Deny no longer creates an Allow entry; a list for -AccessType and -AppliesTo is rejected; the -SecurityDescriptor sets report a failing descriptor and go on; the 17 owner-restore handlers pass on what a later command raises; Get-ChildItem2 -Filter has one matcher with the Windows PowerShell 5.1 rules; the library fixes 3.1 to 3.3 and 3.10; Get-NTFSOrphanedAccess writes an error; -SecurityDescriptor of Set-NTFSSecurityDescriptor at position 1; tests that bind four parameters by property name; label rc9.

Validation of 696ac38: the full suite in the four CI configurations, 2,162 cases each, 0 failed (rc8: 1,615; skipped 27, 359, 58, and 390, so every new case runs where it can); the pages and the help file are a fixpoint (0 drift, 0 broken links; the help file is identical after a second generation); PSScriptAnalyzer reports nothing in the 11 changed scripts; the public surface differs from rc8 by 16 object properties, 5 completer classes, 1 protected method, and 1 parameter position, and equals the candidate of round 1; a matrix of valid shapes of the five parameters, run on the published rc8 and on this build in both editions, differs in exactly the 9 list rows of Add-NTFSAccess. Two review rounds (Decision 27, "Built in rc9"): round 1 on the first integration found a Blocker (the last-dot rule of the filter) and two Major findings; round 2 on the final tree and five checks of its fixes found only Minor findings and Nits (wrong statements in the pages, completers that were not culture invariant, the list for -AccessType and -AppliesTo, ways around that rejection, a collection that holds itself, a message formatter that threw, an enumerator that fails in Dispose); all are fixed with a test that is red without the fix, or decided, and both reviewers closed their last findings with "no finding" on 696ac38. A collection that holds itself still ends the host through the three flags parameters, as in rc8 (known limit). A blank, $null, or DBNull value of the other parameter group is AmbiguousParameterSet (documented, not restructured).

Open before the stable pull request: the end of the lab acceptance of the published rc9 and its record (agent); his decision on #34 on 2026-11-02; his check of PSGALLERY_API_KEY. The stable change then touches only the label, the CHANGELOG, and $publishedVersions (add 5.0.0-rc9; the list ends at rc8).

State at 2026-10-10: the maintainer integrated the release-gate stack into master (#116, #120, #118, #119, #121; fa0701b, CI green; GitHub closed #117 unmerged when the branch deletion removed its base, Decision 15) and tagged rc7 (Gallery 12:30:57Z). The published rc7 passed its lab acceptance the same day (record Tests/Lab/Acceptance-2026-10-10-published-rc7.md). The agent's delegated decisions of 2026-10-09 and 10 are D1 to D47 in decisions-night-2026-10-09.md of the session files; the maintainer accepted Decisions 22 and 24 on 2026-10-19 and decides 23 on 2026-11-02.

Evidence

  • Evidence of rc9 is outside git, in the session folder 816cf47d-2f80-4eba-8ac9-41702c49560b\files\rc9: the specs and review briefs, suite-full1 (first integration), suite-final to suite-final7-696ac38 (the head), the probes (p-*.ps1, fixb-probe, shapes-r2, Run-Oracle.ps1, Run-Pathological.ps1), the published rc8 (rc8-published), the published rc9 (rc9-published-identity: the nupkg, the zip, Identity-5.0.0-rc9.json; oracle-published-rc9), the chain of the acceptance (rc9-published: log chain-published-rc9.log, a stage folder and a result folder per stage), and the analyzer and surface results. The review probes of the reviewers are in C:\Temp\ntfs-rc9\review*-probes-* (temporary). The worktrees under C:\Temp\ntfs-rc9 are temporary too.
  • Milestones of earlier gates (rc6 and rc7 releases, handoff 1, the operating system matrix, handoff 5, the rc7 and rc8 acceptances) are in progress.md and in the records and reports under Tests/Lab and Tests/Coverage.
  • Reviews: the custom security-reviewer can't start (its model is unavailable; no override); the built-in code-review agent reviewed the paths work, the matrix, rc8, and rc9; the built-in security-review agent found no exploitable vulnerability and two LOW items for the maintainer (Next step 5).
  • Raw evidence of the older gates is outside git: the session folder 4b12e2f4-d4c7-4a5d-883a-ddb7421c4848\files (qg-paths, the matrix runs, the night log), 26f151b6-e46f-49bd-9398-b27e20603949\files\quality-gate-3442194-20261009, and 816cf47d-2f80-4eba-8ac9-41702c49560b\files\qg-unknowns (430 files of rc8-published, with a manifest; the published hashes are in the deployment notes).
  • Six checkpoints of the lab report Standard even after a successful ProductionOnly probe; policy restored, no restore performed: don't claim verified Production rollback evidence.

Next step

  1. Lab acceptance of the published rc9: the chain started 2026-10-22 11:00:36Z (log rc9-published\chain-published-rc9.log; 68 minutes for rc8). When the log ends with chain-published-rc9-DONE, read the stage logs and the Validate-LabResults.ps1 output, never the marker alone; save the machines again (Save-VM; OSWin11E is off after its hour); write Tests/Lab/Acceptance-2026-10-22-published-rc9.md and update this file, progress.md, and deployment-notes.md in one pull request (branch ai/acceptance-published-rc9; the maintainer pushes and merges). A defect that the chain finds needs rc10.
  2. The stable pull request: no Prerelease, ## [5.0.0] - <date> with an empty [Unreleased] and the links, and 5.0.0-rc9 in $publishedVersions (the list ends at rc8). The maintainer checks the expiry of PSGALLERY_API_KEY first, merges, and tags. Not before his decision on #34 (item 3).
  3. #34 waits for a tester until 2026-11-02 (Decision 23, option 3; checklist: Tests/Lab/Non-Windows-File-Server-Test.md). On that date the maintainer chooses between waiting longer and accepting the untested risk with a release-note caveat. No agent can accept it.
  4. Open housekeeping: keep or replace the matrix VMs (about 60 GB, saved between runs) and the evaluation client (it shuts down every hour; OSWin11E is off); a domain cell for Windows 11 26H1, whose client loses the secure channel to the Server 2025 domain controller; the cleanup list before the archive (AppVeyor, Read the Docs, wiki, test/transfer, old checkpoints) is the maintainer's. The tests-round report still says that the new tests "have not run on Windows Server 2019/2022/Windows 11"; the 24 lab runs of 2026-10-21 changed that (fix in a later documentation pull request).
  5. Of the two LOW findings of the security review, the swallowed initialization errors of GetEffectiveAccess are fixed in rc8; he still decides the other: the ACL of the stage folders under C:\ in the lab kit (they inherit Authenticated Users: Modify; protecting them is a design change of the controller and needs a new acceptance).
  6. Known limits after rc9, for the archive (Decision 27): Get-FileHash2 -Algorithm keeps the silent default for a piped value that does not convert; three settings still read their value with an unchecked cast; PrivilegeEnabler is not disposed in some paths; Get-NTFSEffectiveAccess fails with an ArgumentOutOfRangeException on a FAT32 volume or an item with a NULL DACL (older than rc9); 9 of the 17 owner-restore handlers and the error branch of Get-NTFSOrphanedAccess cannot be pinned by a test.
  7. Do not release stable 5.0.0 or equate a percentage with gate closure.