diff --git a/Directory.Build.props b/Directory.Build.props
index 50974b9..8cea35c 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -8,7 +8,7 @@
enable
true
0.4.0
- beta.1
+ beta.2
diff --git a/IMPLEMENTATION_PLAN.md b/IMPLEMENTATION_PLAN.md
index b376185..7bc1f92 100644
--- a/IMPLEMENTATION_PLAN.md
+++ b/IMPLEMENTATION_PLAN.md
@@ -192,6 +192,10 @@ priorities.
adversarial tests; dynamic and executable variants still fail closed.
The PII audit now scans every JSON string and filename with exact,
synthetic-only placeholder exceptions.
+- [ ] **Release and consume `0.4.0-beta.2`.** Publish the post-beta.1
+ PowerShell approval-projection fixes from ShellSyntaxTree PR #176,
+ then replace Netclaw's package pin and rerun the downstream approval
+ gates.
## Completed v0.3.0 host integration and release acceptance
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index afed9b4..4e0a6ae 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,3 +1,21 @@
+#### 0.4.0-beta.2 2026-09-14 ####
+
+This maintenance prerelease publishes the post-beta.1 PowerShell approval
+projection cases verified from live Netclaw prompts.
+
+## Added
+
+- Handle the remaining split/index/join projection as a bounded no-command
+ case, preserving authored data while exposing no executable command.
+- Add sanitized corpus coverage for the live PowerShell prompt shapes now
+ handled by the parser.
+
+## Security and compatibility
+
+- Keep dynamic and executable split/index/join variants fail closed as
+ unparseable or dynamically skipped rather than guessing their meaning.
+- Preserve the beta.1 public API and all existing Bash and PowerShell facts.
+
#### 0.4.0-beta.1 2026-09-14 ####
This implementation slice adds bounded PowerShell approval-fatigue evidence