Skip to content

Commit bc519b8

Browse files
Prepare 0.3.0-alpha.3 release (#134)
1 parent 86d4c0c commit bc519b8

3 files changed

Lines changed: 34 additions & 1 deletion

File tree

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<Nullable>enable</Nullable>
99
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
1010
<VersionPrefix>0.3.0</VersionPrefix>
11-
<VersionSuffix>alpha.2</VersionSuffix>
11+
<VersionSuffix>alpha.3</VersionSuffix>
1212
</PropertyGroup>
1313
<PropertyGroup>
1414
<!-- Target framework matrix -->

IMPLEMENTATION_PLAN.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -579,6 +579,10 @@ priorities.
579579
and [GitHub prerelease](https://github.com/Aaronontheweb/ShellSyntaxTree/releases/tag/0.3.0-alpha.2)
580580
include exact module-qualified-looking alias and canonical alias-target
581581
shadowing defenses without changing the public API.
582+
- [ ] Publish `0.3.0-alpha.3` for the Netclaw PowerShell approval integration
583+
after Linux and Windows validate the reviewed initial-state, value,
584+
command-binding, and state-invalidation slice. The package must preserve
585+
the v0.2 projection and the existing public v0.3 API.
582586
- [x] Replace the pre-alpha consumer preview with the v0.3 occurrence-based
583587
authorization loop and separate syntax-display guidance. Document exact,
584588
finite, pattern, unknown, joined-cwd, redirect, incomplete-result,

RELEASE_NOTES.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,35 @@
1212
results require a consumer-owned, versioned DTO or explicit serializer
1313
mapping that fails closed on unknown node and enum values.
1414

15+
#### 0.3.0-alpha.3 2026-08-09 ####
16+
17+
This prerelease adds the PowerShell state and value proofs needed for the
18+
Netclaw approval-policy integration. It does not change the public v0.3 API
19+
surface, and the conservative v0.2 projection remains available.
20+
21+
## Added
22+
23+
- Apply the explicit PowerShell initial-state contract to command identity,
24+
native-versus-cmdlet argument binding, working-directory attribution,
25+
redirects, automatic `HOME`, and `USERPROFILE` values.
26+
- Preserve argument-binding provenance through static current-scope
27+
`Invoke-Expression` payloads while keeping decoded child-host state isolated.
28+
- Expand the generated PowerShell corpus from 422 to 491 entries with direct,
29+
wrapper, alias, script, redirect, child-host, and unknown-state cases.
30+
31+
## Security and compatibility
32+
33+
- Treat aliases as capable of shadowing built-ins and path-shaped command
34+
names; exact argument binding requires constrained, unmutated command
35+
resolution.
36+
- Invalidate following authorization state after uninspected scripts and
37+
unproved in-process invocations instead of retaining stale exact values.
38+
- Keep supported non-pipeline bodies of unknown receivers visible and
39+
incomplete, while failing an unproved interior pipeline atomically with
40+
empty authorization projections.
41+
- Preserve ordinary v0.2 compatibility leaves under ambient uncertainty and
42+
keep the public v0.3 API snapshot unchanged.
43+
1544
#### 0.3.0-alpha.2 2026-08-09 ####
1645

1746
This prerelease completes the stable-v0.3 boundary between PowerShell script

0 commit comments

Comments
 (0)