Skip to content

Release 0.3.0: AI-maintainer identity, setup completion, bundled skills#4

Merged
DenWin merged 6 commits into
mainfrom
worktree-bridge-cse_018N1ZMEb9KyP4CMwXTBEc54
Jul 18, 2026
Merged

Release 0.3.0: AI-maintainer identity, setup completion, bundled skills#4
DenWin merged 6 commits into
mainfrom
worktree-bridge-cse_018N1ZMEb9KyP4CMwXTBEc54

Conversation

@DenWin

@DenWin DenWin commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Goal

Ship template version 0.3.0: least-privilege AI-maintainer identity tooling,
one-shot bootstrap completion, and the bundled agent skills — with an honest,
Keep a Changelog-formatted setup/CHANGELOG.md and a new changelog-entry
skill that maintains it.

Scope

  • setup/New-AIMaintainerApp.ps1, Test-AIMaintainerIdentity.ps1,
    Complete-Setup.ps1, version, CHANGELOG.md, MIGRATION.md runbook;
    setup-time tests moved under setup/tests/.
  • setup/optional-skills/ — bundled develop-with-tdd (+ TDD knowledge base)
    and the new changelog-entry skill.
  • .config/ — asciidoctor capability check probes an actual run;
    MD024 relaxed to siblings_only; Test-PowerShellScript.ps1 StrictMode fix.
  • setup/AI-Maintainer-Identity.adoc, READMEs, AGENTS.md — docs for the above.

Boundary: this is the bootstrap/setup/ layer plus its docs and the changelog;
no runtime product code exists in this template.

Risk & rollback

Low. The template ships tooling and docs, not a deployed service. setup/ is
designed to be deleted after bootstrap (Complete-Setup.ps1), and every script
fails fast rather than mutating a repo silently. Rollback: revert this branch;
nothing here runs automatically on merge.

Evidence

  • pre-commit run --all-files: all hooks pass, including asciidoctor syntax validation, once Ruby is on PATH (see note). markdownlint, PSScriptAnalyzer,
    zizmor, gitleaks, and the fast/standard test lanes are green.
  • setup/AI-Maintainer-Identity.adoc validated directly:
    asciidoctor -o /dev/null --failure-level WARN → no warnings/errors.
  • setup/CHANGELOG.md and the changelog-entry skill files pass
    markdownlint-cli2.
  • Note: on the author's machine C:\Ruby34-x64\bin was missing from PATH, so
    the local asciidoctor hook initially failed with "'ruby.exe' is not
    recognized" — an environment gap, not a content issue. With Ruby on PATH the
    hook passes; CI (which provisions Ruby) enforces it at the merge gate.

Release 0.3.0: AI-maintainer identity, setup completion, bundled skills

Ships the 0.3.0 tooling recorded in setup/CHANGELOG.md: least-privilege
GitHub App creation and identity verification (New-AIMaintainerApp.ps1,
Test-AIMaintainerIdentity.ps1), one-shot bootstrap teardown
(Complete-Setup.ps1), the setup/version + Keep a Changelog changelog, the
bundled develop-with-tdd and changelog-entry skills, and the symlink
capability probe. Setup tests moved under setup/tests/; MIGRATION.md is now
an executable runbook.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 14c8d64f40

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread setup/Protect-MainBranch.ps1
Comment thread setup/Test-AIMaintainerIdentity.ps1
Comment thread setup/New-AIMaintainerApp.ps1
Co-located *.Tests.ps1 beside source is the repo-wide default; setup/ is the
runbook exception that segregates tests into setup/tests/. State the rule in
both READMEs instead of leaving the setup/ note as the sole (insufficient)
justification.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@DenWin

DenWin commented Jul 17, 2026

Copy link
Copy Markdown
Owner Author

@codex[agent] please fix the 3 comemnts you provideed

@chatgpt-codex-connector

Copy link
Copy Markdown

To use Codex here, create an environment for this repo.

@DenWin

DenWin commented Jul 17, 2026

Copy link
Copy Markdown
Owner Author

@codex[agent] retry

…s, and app key storage

Agent-Logs-Url: https://github.com/DenWin/Template/sessions/abc361a2-88f9-46d4-9ffc-ec755139b130

Co-authored-by: DenWin <13867326+DenWin@users.noreply.github.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • git diff --check
  • ⚠️ pre-commit run --all-files — not run because pre-commit is not installed in this environment.
  • ⚠️ pwsh -NoProfile -Command "Invoke-Pester -Path setup/tests/Protect-MainBranch.Tests.ps1,setup/tests/Test-AIMaintainerIdentity.Tests.ps1,setup/tests/New-AIMaintainerApp.Tests.ps1 -Tag Fast -CI" — not run because pwsh is not installed in this environment.

View task →

DenWin and others added 3 commits July 17, 2026 13:18
Protect-PrivateKeyFile called [System.IO.File]::SetAccessControl, which
.NET Core / PowerShell 7 removed — swap it for Get-Acl/Set-Acl (PS7-native).

The accompanying test used the legacy Assert-MockCalled, absent from Pester
6; calling it auto-loaded Pester 3.4.0 into the run and poisoned discovery of
unrelated test files (Protect-MainBranch, Test-AIMaintainerIdentity). Replace
it with Should -Invoke. Fast lane: 77 passed, 0 failed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Invoke-TestLane now strips Windows PowerShell module paths from PSModulePath
so only this pwsh's Pester is auto-loadable. A test calling a Pester-3-only
command (e.g. Assert-MockCalled) previously auto-loaded Pester 3.4.0 and
silently corrupted discovery of sibling files; such a command now fails
loudly instead. Core cmdlets are unaffected — they live under $PSHOME, not the
Windows PowerShell path. No-op off Windows. Adds an isolated test asserting the
run exposes no pre-5 Pester.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@DenWin
DenWin merged commit b6d9975 into main Jul 18, 2026
2 checks passed
@DenWin
DenWin deleted the worktree-bridge-cse_018N1ZMEb9KyP4CMwXTBEc54 branch July 18, 2026 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants