Ai/docs alignment (#91)
* chore: initialize the memory bank
Add the canonical .memory-bank base with evidence-based project context:
purpose and scope, workflows, stack and validation commands, architecture
map, decisions, and the open work found while documenting the cmdlets.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* docs: align documentation with the cmdlet source
- Fill all 36 platyPS cmdlet pages from the C# source: synopsis,
description, parameters, defaults, examples, inputs, outputs, and
notes, including documented limitations of the current code
- Check every example against live parameter metadata and run them in a
sandbox; fix examples that did not work (CSV restore, account filter,
recursive inheritance, -AccessRights typos)
- Rewrite the home, concepts, examples, README, and contributor pages;
add a grouped cmdlet overview, module settings, privileges, long paths,
and the platyPS workflow
- Document Remove-Item2 -PassThru as renamed after 4.2.6 (#64)
- Fix mkdocs.yml navigation, edit_uri, and copyright markup; add
build.os and a pinned MkDocs version for Read the Docs
- Point online help links to the pages on GitHub; add CHANGELOG.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* ci: build the module and check the docs against the build
The documentation check ran Update-MarkdownHelp against the NTFSSecurity
release from the PowerShell Gallery (4.2.6), so it failed for every
unreleased parameter change. PR #91 failed because 4.2.6 still has
Remove-Item2 -PassThur while the source and the docs have -PassThru.
- Build NTFSSecurity.csproj in Release on the Visual Studio 2022 image,
using the .NET Framework 4.5.2 reference assemblies package instead of
an installed targeting pack
- Check Docs/Cmdlets against the module built from source
- Pin platyPS 0.14.2 and MarkdownLinkCheck 0.2.0, and enable TLS 1.2 so
the NuGet provider bootstrap works
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* chore: record the green PR 91 build in the memory bank
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
4 weeks ago
|
|
|
---
|
|
|
|
|
status: current
|
|
|
|
|
last-verified: 2026-10-08
|
Ai/docs alignment (#91)
* chore: initialize the memory bank
Add the canonical .memory-bank base with evidence-based project context:
purpose and scope, workflows, stack and validation commands, architecture
map, decisions, and the open work found while documenting the cmdlets.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* docs: align documentation with the cmdlet source
- Fill all 36 platyPS cmdlet pages from the C# source: synopsis,
description, parameters, defaults, examples, inputs, outputs, and
notes, including documented limitations of the current code
- Check every example against live parameter metadata and run them in a
sandbox; fix examples that did not work (CSV restore, account filter,
recursive inheritance, -AccessRights typos)
- Rewrite the home, concepts, examples, README, and contributor pages;
add a grouped cmdlet overview, module settings, privileges, long paths,
and the platyPS workflow
- Document Remove-Item2 -PassThru as renamed after 4.2.6 (#64)
- Fix mkdocs.yml navigation, edit_uri, and copyright markup; add
build.os and a pinned MkDocs version for Read the Docs
- Point online help links to the pages on GitHub; add CHANGELOG.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* ci: build the module and check the docs against the build
The documentation check ran Update-MarkdownHelp against the NTFSSecurity
release from the PowerShell Gallery (4.2.6), so it failed for every
unreleased parameter change. PR #91 failed because 4.2.6 still has
Remove-Item2 -PassThur while the source and the docs have -PassThru.
- Build NTFSSecurity.csproj in Release on the Visual Studio 2022 image,
using the .NET Framework 4.5.2 reference assemblies package instead of
an installed targeting pack
- Check Docs/Cmdlets against the module built from source
- Pin platyPS 0.14.2 and MarkdownLinkCheck 0.2.0, and enable TLS 1.2 so
the NuGet provider bootstrap works
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* chore: record the green PR 91 build in the memory bank
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
4 weeks ago
|
|
|
owner: active-agent
|
|
|
|
|
source: current task evidence
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# Active context
|
|
|
|
|
|
|
|
|
|
## Current focus
|
|
|
|
|
|
|
|
|
|
Phase 2 of the quality gate before 5.0.0 (Decision 21), on the branch
|
|
|
|
|
`ai/release-5.0.0-rc6`, released as 5.0.0-rc6: tests until every code
|
|
|
|
|
path is tested or explained, live tests for the remaining cmdlets, and
|
|
|
|
|
test-first fixes of the known defects. The maintainer approved it on
|
|
|
|
|
2026-10-08. Then Phase 3 and 5.0.0; after 5.0.0 the repository is archived
|
|
|
|
|
in favor of WindowsAccessControl (Decision 18).
|
Ai/docs alignment (#91)
* chore: initialize the memory bank
Add the canonical .memory-bank base with evidence-based project context:
purpose and scope, workflows, stack and validation commands, architecture
map, decisions, and the open work found while documenting the cmdlets.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* docs: align documentation with the cmdlet source
- Fill all 36 platyPS cmdlet pages from the C# source: synopsis,
description, parameters, defaults, examples, inputs, outputs, and
notes, including documented limitations of the current code
- Check every example against live parameter metadata and run them in a
sandbox; fix examples that did not work (CSV restore, account filter,
recursive inheritance, -AccessRights typos)
- Rewrite the home, concepts, examples, README, and contributor pages;
add a grouped cmdlet overview, module settings, privileges, long paths,
and the platyPS workflow
- Document Remove-Item2 -PassThru as renamed after 4.2.6 (#64)
- Fix mkdocs.yml navigation, edit_uri, and copyright markup; add
build.os and a pinned MkDocs version for Read the Docs
- Point online help links to the pages on GitHub; add CHANGELOG.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* ci: build the module and check the docs against the build
The documentation check ran Update-MarkdownHelp against the NTFSSecurity
release from the PowerShell Gallery (4.2.6), so it failed for every
unreleased parameter change. PR #91 failed because 4.2.6 still has
Remove-Item2 -PassThur while the source and the docs have -PassThru.
- Build NTFSSecurity.csproj in Release on the Visual Studio 2022 image,
using the .NET Framework 4.5.2 reference assemblies package instead of
an installed targeting pack
- Check Docs/Cmdlets against the module built from source
- Pin platyPS 0.14.2 and MarkdownLinkCheck 0.2.0, and enable TLS 1.2 so
the NuGet provider bootstrap works
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* chore: record the green PR 91 build in the memory bank
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
4 weeks ago
|
|
|
|
|
|
|
|
## Evidence
|
|
|
|
|
|
|
|
|
|
- 2026-10-08, Phase 1, measured on 5.0.0-rc5 (`fcb370e`):
|
|
|
|
|
- The published package passes the live tests in both editions: 8 role
|
|
|
|
|
runs, no failure.
|
|
|
|
|
- As a basic user, the 11 tests that CI skips pass in both editions. The
|
|
|
|
|
one failure, `Enable-Privileges should write one object per
|
|
|
|
|
privilege`, assumes more than one privilege. Every test runs in at
|
|
|
|
|
least one of four configurations (elevated or basic user, two
|
|
|
|
|
editions), but CI runs only elevated.
|
|
|
|
|
- The suite runs 55.9% of the C# lines and 37.4% of the branches
|
|
|
|
|
(`techContext.md`, Validation). No line of `Test-Path2` and
|
|
|
|
|
`Get-DiskSpace` runs; `Set-NTFSOwner` (46%) runs only as a setup step
|
|
|
|
|
of another test; `Clear-NTFSAccess` and the access inheritance cmdlets
|
|
|
|
|
run about 43%, `FileSystemSecurity2` 42%. No cmdlet calls the registry
|
|
|
|
|
classes, `SimpleFileSystemAuditRule`, `PrivilegeEnabler`, or
|
|
|
|
|
`FileSystemEffectivePermissionEntry` (244 lines).
|
|
|
|
|
- 19 of the 36 cmdlets never ran over SMB, among them `Get-NTFSOwner`,
|
|
|
|
|
`Set-NTFSOwner`, the audit inheritance cmdlets, and `Clear-NTFSAudit`;
|
|
|
|
|
no account of another domain or forest ran; both ends of the lab run
|
|
|
|
|
Windows Server 2025.
|
|
|
|
|
- Known defects from the reviews of #113 and #114 (`progress.md`, open
|
|
|
|
|
work 3): `Move-Item2 -PassThru` returns the source item; the conflict
|
|
|
|
|
checks of `Copy-Item2` and `Move-Item2` use `File.Exists` also for
|
|
|
|
|
folders, maybe the cause of #21; an error while restoring the owner can
|
|
|
|
|
hide the original one (R4); `Set-NTFSSecurityDescriptor -PassThru` reads
|
|
|
|
|
the item again inside the retry (R5); the access check doesn't read
|
|
|
|
|
`AUTHZ_ACCESS_REPLY.Error`, and its buffers aren't initialized. #110
|
|
|
|
|
lists seven test follow-ups.
|
|
|
|
|
- #34: no reply from the tester by 06:44 UTC on 2026-10-08.
|
|
|
|
|
- Phase 2, step 1, first part (2026-10-08, commits `82969ba` to
|
|
|
|
|
`ff74100`): 34 new tests for `Set-NTFSOwner`, `Test-Path2`, and
|
|
|
|
|
`Get-DiskSpace`, and two defects found and fixed test-first. Every
|
|
|
|
|
cmdlet that enables privileges left the Backup, Restore, Take Ownership,
|
|
|
|
|
and Security privileges enabled in the session when a later command or a
|
|
|
|
|
terminating error stopped the pipeline; `Test-Path2` stopped with
|
|
|
|
|
"Illegal characters in path" in Windows PowerShell for a path such as
|
|
|
|
|
`C:\a|b`. The suite (533 tests) passes elevated in both editions.
|
|
|
|
|
|
Ai/docs alignment (#91)
* chore: initialize the memory bank
Add the canonical .memory-bank base with evidence-based project context:
purpose and scope, workflows, stack and validation commands, architecture
map, decisions, and the open work found while documenting the cmdlets.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* docs: align documentation with the cmdlet source
- Fill all 36 platyPS cmdlet pages from the C# source: synopsis,
description, parameters, defaults, examples, inputs, outputs, and
notes, including documented limitations of the current code
- Check every example against live parameter metadata and run them in a
sandbox; fix examples that did not work (CSV restore, account filter,
recursive inheritance, -AccessRights typos)
- Rewrite the home, concepts, examples, README, and contributor pages;
add a grouped cmdlet overview, module settings, privileges, long paths,
and the platyPS workflow
- Document Remove-Item2 -PassThru as renamed after 4.2.6 (#64)
- Fix mkdocs.yml navigation, edit_uri, and copyright markup; add
build.os and a pinned MkDocs version for Read the Docs
- Point online help links to the pages on GitHub; add CHANGELOG.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* ci: build the module and check the docs against the build
The documentation check ran Update-MarkdownHelp against the NTFSSecurity
release from the PowerShell Gallery (4.2.6), so it failed for every
unreleased parameter change. PR #91 failed because 4.2.6 still has
Remove-Item2 -PassThur while the source and the docs have -PassThru.
- Build NTFSSecurity.csproj in Release on the Visual Studio 2022 image,
using the .NET Framework 4.5.2 reference assemblies package instead of
an installed targeting pack
- Check Docs/Cmdlets against the module built from source
- Pin platyPS 0.14.2 and MarkdownLinkCheck 0.2.0, and enable TLS 1.2 so
the NuGet provider bootstrap works
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
* chore: record the green PR 91 build in the memory bank
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
4 weeks ago
|
|
|
## Next step
|
|
|
|
|
|
|
|
|
|
Phase 2, one step at a time, each with evidence before the next:
|
|
|
|
|
|
|
|
|
|
1. Tests for the cmdlets without tests of their own: done for
|
|
|
|
|
`Set-NTFSOwner`, `Test-Path2`, and `Get-DiskSpace`; open for the link
|
|
|
|
|
cmdlets, `Get-NTFSOrphanedAudit`, and `Get-NTFSSimpleAccess`.
|
|
|
|
|
2. The other parameter sets and error paths, such as the
|
|
|
|
|
`-SecurityDescriptor` sets of the inheritance cmdlets and of
|
|
|
|
|
`Clear-NTFSAccess`.
|
|
|
|
|
3. The paths of `Security2` that no test runs, and #110.
|
|
|
|
|
4. Test-first fixes of the known defects; behavior changes go to the
|
|
|
|
|
maintainer (Decision 16).
|
|
|
|
|
5. A CI job as a basic user, live tests for the other cmdlets over SMB and
|
|
|
|
|
for accounts of other forests, and a lab run.
|
|
|
|
|
6. Measure the coverage again, explain what remains, review, and prepare
|
|
|
|
|
5.0.0-rc6.
|