Browse Source

chore(memory-bank): record the merge of #92 and #93

Work packages 1 and 2 are merged and master is green on AppVeyor
(218 of 218 Pester tests). Mark them done, condense the older
milestones, and spell out work packages 3 and 4 so a new chat can
continue from the Memory Bank alone, including cleaning the installed
module folder before the next release.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: AI Assistant <ai@example.com>
pull/94/head
Raimund Andree 1 week ago
parent
commit
04ef972430
  1. 40
      .memory-bank/activeContext.md
  2. 120
      .memory-bank/progress.md
  3. 5
      .memory-bank/techContext.md

40
.memory-bank/activeContext.md

@ -9,32 +9,26 @@ source: current task evidence
## Current focus
Work packages 1 and 2 are pushed and green; the maintainer opens their
PRs: `ai/housekeeping` into `master`, and `ai/ship-help` into
`ai/housekeeping`. The agent can't open them (see `techContext.md`,
Constraints). The work packages and their order are in `progress.md`.
Work packages 1 (#92) and 2 (#93) are merged. Next is work package 3 (Read
the Docs), after the maintainer's go-ahead, on the local branch
`ai/read-the-docs`, which so far carries Memory Bank notes only. The
remaining packages and their details are in `progress.md`.
## Evidence
- AppVeyor 54834155 (`ai/housekeeping`, `74abb0b`) passed. AppVeyor
54834154 (`ai/ship-help`, `fba3a7d`) passed all four `test_script`
steps; Pester passed 218 of 218 tests in Windows PowerShell 5.1,
including the `Get-Help -Online` tests.
- The same build listed 870 tests on the Tests tab: the NUnit import files
each Pester 5 test under every enclosing block (Pester, file, Describe,
Context), so 216 tests appear four times and 2 three times. The
follow-up commit `c9fbaf5` reports the results through the build worker
API instead (`POST api/tests/batch`); AppVeyor 54834216 of `c9fbaf5`
passed and lists 218 tests, one entry each.
- The AppVeyor job log API returns `application/octet-stream`; decode the
bytes as UTF-8 before searching it.
- Merging work package 1 with a merge commit keeps `ai/ship-help` valid;
after a squash merge it needs
`git rebase --onto origin/master ai/housekeeping ai/ship-help`.
- PR descriptions for both work packages are in the session folder
(`files/pr`), outside the repository.
- #92 was merged with a merge commit (`d917832`) and #93 squash-merged
(`14799fb`); the tree of `master` equals the tested `c9fbaf5`.
- AppVeyor: the PR build of #93 (54834295) and the `master` build of
`14799fb` (54834350) each passed 218 of 218 Pester tests, listed once
each on the Tests tab; the `master` build of `d917832` passed too.
- The remote branches `ai/housekeeping` and `ai/ship-help` are deleted, and
so are the local ones. The only unmerged commit, the remote-mutation note
(`9dc2022`), is now `023506c` on `ai/read-the-docs`.
- The agent can't push or open PRs (`techContext.md`, Constraints): it
prepares the commands and PR descriptions, and the maintainer runs them.
## Next step
The maintainer opens both PRs with the prepared `gh pr create` commands;
then work package 3 (Read the Docs) after the go-ahead.
Wait for the maintainer's go-ahead for work package 3. Nothing on
`ai/read-the-docs` needs pushing before then; its Memory Bank commits go
into the work package 3 PR.

120
.memory-bank/progress.md

@ -9,44 +9,31 @@ source: repository evidence
## Current status
PR #91 is merged: documentation matches the cmdlets at HEAD. The module
source is unchanged since the 4.2.6 release except the
`Remove-Item2 -PassThru` rename and `CompatiblePSEditions`.
PRs #91, #92, and #93 are merged. The documentation matches the cmdlets at
`master`, and the module ships the help file generated from it
(`en-US\NTFSSecurity.dll-Help.xml`). Otherwise the module source differs
from the 4.2.6 release only by the `Remove-Item2 -PassThru` rename and
`CompatiblePSEditions`.
## Recent milestones
- 2026-10-02: Memory Bank initialized.
- 2026-10-02: Documentation aligned with the code: 36 cmdlet pages filled
from the C# source and checked at runtime in a sandbox; Concepts, Examples,
home page, contributor guide, README rewritten; `mkdocs.yml` nav,
`edit_uri`, and `.readthedocs.yml` (`build.os`) fixed; `CHANGELOG.md`
created.
- 2026-10-02: PR #91 build fixed: `appveyor.yml` builds the module from
source and checks the docs against that build instead of the Gallery
release (root cause of the `Remove-Item2 -PassThru` drift failure).
- 2026-10-02: PR #91 merged into `master` as `690d8dd` (squash merge);
branch `ai/docs-alignment` deleted locally and on GitHub.
- 2026-10-02: Work package 1 (housekeeping, `ai/housekeeping`): local
`promptHistory.md` ignored by git; changelog policy recorded as
Decision 7; Decisions moved from `systemPatterns.md` to `decisions/`.
- 2026-10-02: PR #83 (TechNet tutorial links) reviewed and found
superseded: #91 ships the same two `learn.microsoft.com` links in
`Docs/index.md` and `README.md`. The maintainer decided to close it;
the remote-mutation hook denied the agent's `gh pr close`, so the
maintainer closed it by hand (2026-10-02 21:18 UTC).
- 2026-10-02: Work package 2 (ship help, `ai/ship-help`, stacked on
`ai/housekeeping`): `en-US\NTFSSecurity.dll-Help.xml` generated from
`Docs/Cmdlets`, committed, copied by the csproj, and listed in a complete
`FileList` (Decision 8); stale `NTFSSecurity-Help.xml` and the unused
`NTFSSecurity.Help.pshproj` removed; `Tests\Help.Tests.ps1` (Pester 5)
and two CI steps added; six inline links in five cmdlet pages reworded
because platyPS drops the space after a link in the help text. Tests: 218
of 218 pass in Windows PowerShell 5.1; without the help file 180 of 182
failed.
- 2026-10-04: Work packages 1 and 2 pushed; AppVeyor 54834155
(`74abb0b`) and 54834154 (`fba3a7d`, 218 of 218 Pester tests) passed. A
follow-up commit reports each test once on the AppVeyor Tests tab
(the NUnit upload listed 870 entries).
- 2026-10-02: Memory Bank initialized. PR #91 aligned the documentation
with the code (36 cmdlet pages, conceptual pages, README, `mkdocs.yml`,
`.readthedocs.yml`, `CHANGELOG.md`) and made `appveyor.yml` build the
module and check the docs against that build (Decision 6); squash-merged
as `690d8dd`.
- 2026-10-02: PR #83 (TechNet links) closed by the maintainer as superseded
by #91.
- 2026-10-04: Work package 1 merged as PR #92 with a merge commit
(`d917832`): `promptHistory.md` ignored, Decision 7, Decisions moved to
`decisions/`.
- 2026-10-04: Work package 2 squash-merged as PR #93 (`14799fb`): generated
help file shipped (Decision 8), stale help files removed, `FileList`
complete, `Tests\Help.Tests.ps1` (218 Pester tests), CI steps 03 (help
file current) and 04 (Pester, one Tests-tab entry per test; the NUnit
upload had listed 870), six cmdlet-page links reworded for the help
text. AppVeyor passed 218 of 218 on the PR (54834295) and on `master`
(54834350).
## Stable capabilities
@ -59,30 +46,51 @@ source is unchanged since the 4.2.6 release except the
## Open work
Work packages in the order agreed with the maintainer. Each gets one
`ai/<slug>` branch and PR, committed locally; the maintainer pushes, and
the next package starts only after the maintainer's go-ahead.
1. Housekeeping: `ai/housekeeping` pushed at `74abb0b`, AppVeyor green;
PR into `master` to open.
2. Ship help: `ai/ship-help` pushed at `fba3a7d`, AppVeyor green; the
follow-up commit for the Tests tab awaits push. PR into
`ai/housekeeping` to open.
3. Read the Docs: project `ntfssecurity` (maintainer `Sup3rlativ3`) builds
the fork; switch it to this repository or import a new project. Ask
before installing Python for `mkdocs build --strict`.
`ai/<slug>` branch and PR, committed locally. The maintainer pushes and
opens the PR (the agent can't; see `techContext.md`, Constraints), and the
next package starts only after the maintainer's go-ahead.
1. Housekeeping: done (#92).
2. Ship help: done (#93).
3. Read the Docs, next. The local branch `ai/read-the-docs` exists and so
far carries Memory Bank notes only. The project `ntfssecurity`
(`https://app.readthedocs.org/projects/ntfssecurity/`) is maintained by
GitHub user `Sup3rlativ3` and builds the fork `Sup3rlativ3/NTFSSecurity`
(last build about 2021); the repository side is ready
(`.readthedocs.yml`, `Docs/requirements.txt`). The switch happens in the
Read the Docs dashboard. Give the maintainer exact steps for both
options: (a) `Sup3rlativ3` adds him as maintainer and changes the
repository URL, or (b) he imports `raandree/NTFSSecurity` as a new
project (the slug `ntfssecurity` is taken). Ask before installing Python
for `mkdocs build --strict`. After the switch, confirm a build of
`master`, propose whether the `online version` links move to Read the
Docs (Decision 4), and add a documentation link to `README.md`. Done
when Read the Docs builds `master` of this repository and shows the
current pages.
4. Manifest and version: remove `Show-NTFSSimpleAccess` and the duplicate
inheritance entries from `CmdletsToExport` (36 cmdlets remain); ask
about the next version (with or without a `PassThur` alias),
`PowerShellVersion`, and `DotNetFrameworkVersion`; align `AssemblyInfo`.
No tag or publish. Inputs found in work package 2: `Test-ModuleManifest`
already fails on `PowerShellVersion = '2.0'` with `CompatiblePSEditions`;
releases ship Debug builds plus `.pdb`, `.xml`, and
`System.Management.Automation.dll` (`Private=True` reference), which
`FileList` doesn't list.
inheritance entries from `CmdletsToExport` (exactly 36 cmdlets
exported). Versions disagree: manifest 4.2.5, tag and Gallery 4.2.6,
`AssemblyVersion` 4.2.1.0. Propose the next SemVer version with and
without `[Alias('PassThur')]` on `Remove-Item2 -PassThru` (the rename in
#64 is breaking), plus `PowerShellVersion` and `DotNetFrameworkVersion`
(manifest 2.0 and 3.5; the assemblies target .NET Framework 4.5.2), and
ask. Move the `[Unreleased]` entries into the new version section (ask
whether the build-only "Read the Docs build configuration" entry stays,
Decision 7) and align `AssemblyInfo`. No tag or publish. Done when
`Test-ModuleManifest` passes, 36 cmdlets are exported, and CI is green.
Inputs: `Test-ModuleManifest` already fails on
`PowerShellVersion = '2.0'` with `CompatiblePSEditions`; releases are
Debug builds published with the whole output folder (`.pdb`, `.xml`,
`System.Management.Automation.dll`), which `FileList` doesn't list.
Before the next build and `Publish-Module`, clean
`C:\Program Files\WindowsPowerShell\Modules\NTFSSecurity`, or the removed
`NTFSSecurity-Help.xml` ships again.
5. Code defects, listed below: `review: on`, one PR per group, regression
test first. Pester 5 tests import `NTFSSecurity\bin\Release`, run in a
`$env:TEMP` sandbox and in `appveyor.yml`, and skip elevated cases when
not elevated. Each fix updates its cmdlet page and `CHANGELOG.md`.
`$env:TEMP` sandbox and in `appveyor.yml` (pattern:
`Tests\Help.Tests.ps1`), and skip elevated cases when not elevated;
check whether AppVeyor runs elevated. Each fix updates its cmdlet page
and `CHANGELOG.md`.
### Code defects (work package 5)

5
.memory-bank/techContext.md

@ -49,8 +49,9 @@ source: repository evidence
- `ModuleVersion` in the source manifest is `4.2.5`; the latest tag and
Gallery release is `4.2.6`.
- HEAD differs from tag `4.2.6` only by the `Remove-Item2 -PassThur` to
`-PassThru` rename and `CompatiblePSEditions` in the manifest.
- Besides the shipped help file and its tests (#93), the module source at
`master` differs from tag `4.2.6` only by the `Remove-Item2 -PassThur`
to `-PassThru` rename and `CompatiblePSEditions` in the manifest.
- `CmdletsToExport` lists `Show-NTFSSimpleAccess`, which no longer exists
(WinForms code removed in `d3063de`), and repeats the inheritance cmdlets.
- `Test-ModuleManifest` fails in Windows PowerShell 5.1:

Loading…
Cancel
Save