# DS4 Context Engine 0.3.0-alpha.2

Status: published prerelease on 2026-08-27; tag `v0.3.0-alpha.2`.

This coordinated prerelease hardens the `context_persistence` provider-egress boundary discovered during alpha.1 dogfooding. It adds no new persistence format, migration, default-on feature, or model-callable action.

## Fixed

- Reserves `[omitted-by-ds4-egress-policy]` as an output-only historical sanitization sentinel.
- Rejects any incoming string argument containing that sentinel as `egress-placeholder` before runtime access, local confirmation, canonical append, projection, or derived source-policy mutation.
- Prevents a model from turning a sanitized cancelled-call argument into a new confirmation for the literal omission marker.
- Centralizes the sentinel constant across the tool contract, historical egress sanitizer, and historical result renderer.
- Adds a prompt guideline requiring fresh user-provided text instead of reusing an egress omission marker.

## Compatibility and persistence

The tool and result contracts remain `ds4-context-persistence-tool-v1` and `ds4-context-persistence-result-v1`. The fourteen actions and sequential execution contract are unchanged. `egress-placeholder` is an additive validation error code.

Canonical Pin and Memory records remain `ds4-context-pin-v1` and `ds4-context-memory-v1`. Pi JSONL remains canonical and append-only; SQLite remains a disposable projection. Schema 15, migrations 1–15, `ds4-context-config-v1`, `runtime-adapter-v1`, and the reference adapter's append-only `ds4-runtime-session-v1` history contract are unchanged.

## Package/version policy

The coordinated version is `0.3.0-alpha.2` for:

```text
ds4-context-core
ds4-context-reference-adapter
ds4-context-engine
```

Both adapters depend exactly on `ds4-context-core@0.3.0-alpha.2`. The packages were published manually under the explicit npm `alpha` dist-tag while `latest` remains `0.2.0`. GitHub Actions remains validation-only with OIDC and package-write permissions denied.

## Dogfood evidence

The operator completed the alpha.1 TUI/RPC/print/JSON dogfood matrix, including canonical append audits, with one identified issue: a sanitized historical marker could be copied into a retry. Alpha.2 addresses that finding. Automated unit and extension-integration tests prove the marker retry is rejected before a second confirmation, runtime mutation, projection, or canonical append. The published alpha.2 artifact should receive the focused regression procedure in [`../DOGFOODING_0.3.0_ALPHA.md`](../DOGFOODING_0.3.0_ALPHA.md) before beta promotion.

## Validation evidence

Local candidate verification on Node.js `26.5.1`:

- `npm ci`: passed.
- `npm run check`: 64 files and 286 tests passed.
- `npm run quality:compare`: candidate quality `0.9875` versus baseline `0.808156`.
- `npm run schema:context-persistence`: 1,197 bytes and 300 estimated tokens; below the 1,500 absolute and 320 relative limits.
- `npm run latency:check -- <exact ds4-context-core@0.1.2>`: after one anomalous noisy sample, three consecutive repetitions passed with ratios `1.051605`, `1.059638`, and `1.087275`, all at or below `1.10`.
- `npm run pack:check`: verified core (203 files), reference adapter (7 files), and Pi adapter (59 files) in a clean consumer.
- `npm pack --dry-run --json` for all three packages: passed with the same bounded inventories.
- The committed candidate was replayed from detached clean checkout `30a5f0f`; `npm ci`, the 64-file/286-test suite, schema gate, package verification, and `git diff --check` passed.
- `git diff --check`: passed.
- Protected CI, compatibility golden, Pi fixture, and migration files: unchanged.
- `npm run registry:check -- 0.3.0-alpha.2`: passed against all three exact published versions; `alpha` resolves to `0.3.0-alpha.2` and `latest` remains `0.2.0` for every package.

Exact registry verification passed before the annotated tag and GitHub prerelease were created.

## Documentation

- [`../CONTEXT_PERSISTENCE_TOOL.md`](../CONTEXT_PERSISTENCE_TOOL.md)
- [`../DOGFOODING_0.3.0_ALPHA.md`](../DOGFOODING_0.3.0_ALPHA.md)
- [`../PRIVACY.md`](../PRIVACY.md)
- [`../MEMORY_AND_PINS.md`](../MEMORY_AND_PINS.md)
- [`../RELEASING.md`](../RELEASING.md)
- [`0.3.0-alpha.1.md`](0.3.0-alpha.1.md)
