persona-harness 0.8.37 → 0.8.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,11 @@
3
3
  Status: current canonical program record.
4
4
 
5
5
  Last reconciled: 2026-08-30
6
+ P0 integration release: `a82b85ddef7e9fd9518348bff16deb38f53b4676`
7
+ P0 integration package: [`persona-harness@0.8.37`](https://www.npmjs.com/package/persona-harness/v/0.8.37)
8
+ P0 integration lineage: [#442](https://github.com/jyt6640/persona-harness/issues/442) delivered through [#443](https://github.com/jyt6640/persona-harness/pull/443)
9
+ Current program-status publication: [`persona-harness@0.8.38`](https://www.npmjs.com/package/persona-harness/v/0.8.38)
10
+ Program-status publication lineage: [#444](https://github.com/jyt6640/persona-harness/issues/444) reconciled through [#445](https://github.com/jyt6640/persona-harness/pull/445) and published by [#446](https://github.com/jyt6640/persona-harness/issues/446)
6
11
  P0 implementation release baseline: `9b80a45070be10659150095cf701a6f375bc6600`
7
12
  P0 implementation package: [`persona-harness@0.8.33`](https://www.npmjs.com/package/persona-harness/v/0.8.33)
8
13
  P0 implementation lineage: [#414](https://github.com/jyt6640/persona-harness/issues/414) delivered through [#437](https://github.com/jyt6640/persona-harness/pull/437)
@@ -17,7 +22,7 @@ Current compatibility package: [`persona-harness@0.8.36`](https://www.npmjs.com/
17
22
  Current compatibility lineage: [#412](https://github.com/jyt6640/persona-harness/issues/412) delivered through [#441](https://github.com/jyt6640/persona-harness/pull/441)
18
23
  Historical pre-integration audit source: `f677a635040ad55d8b7d25abab280c5703a153ea`
19
24
  Program issue: [#389](https://github.com/jyt6640/persona-harness/issues/389)
20
- Remaining bounded work: hosted residual [#410](https://github.com/jyt6640/persona-harness/issues/410), plus local integration candidates [#429](https://github.com/jyt6640/persona-harness/issues/429), [#430](https://github.com/jyt6640/persona-harness/issues/430), [#433](https://github.com/jyt6640/persona-harness/issues/433), [#434](https://github.com/jyt6640/persona-harness/issues/434), [#435](https://github.com/jyt6640/persona-harness/issues/435), and [#436](https://github.com/jyt6640/persona-harness/issues/436)
25
+ Remaining bounded work: hosted residual [#410](https://github.com/jyt6640/persona-harness/issues/410) and the not-started independent-value protocol from [#429](https://github.com/jyt6640/persona-harness/issues/429). The deterministic local P0 boundaries integrated by #443 are closed.
21
26
 
22
27
  ## Purpose
23
28
 
@@ -130,12 +135,12 @@ evidence rather than a description of current protected main.
130
135
  | M6 | implementation delivered; hosted residual | Context resolution, rendering, and delivery are separated from legacy workflow/authority behavior. | Preserve the isolated adapter boundary during #410. |
131
136
  | M7 | delivered and released via #412/#441 | The generic Context compatibility manifest and runner are version-neutral. | Preserve the manifest-driven runner. |
132
137
  | M8 | delivered via #413 | `npm test` now selects focused source evidence and installed packages receive a separate smoke. | Keep full protected verification separate. |
133
- | M9 | implementation candidate; external evidence absent | Local Context inspection and deterministic fixtures do not establish independent usefulness. | #429 adds a strict preregistration and result-status contract; its committed state records no observation and `INCONCLUSIVE`. |
134
- | M10 | delivered via #411/#439; #436 local candidate | #411 provides a versioned three-arm protocol, strict ten-fixture manifest, and deterministic evaluator for Context OFF, legacy broad compatibility, and targeted layered envelopes. #436 adds an explicit clean-current-checkout candidate source without changing the fixed corpus. | Keep model, host, and operational measurements unavailable until a separately authorized observation; every local product verdict remains `INCONCLUSIVE`. |
138
+ | M9 | deterministic protocol delivered via #429/#443; external evidence absent | Local Context inspection and deterministic fixtures do not establish independent usefulness. #429 provides the strict preregistration and result-status contract, whose committed state records no observation and `INCONCLUSIVE`. | Preserve the empty denominator until an independently authorized observation exists. |
139
+ | M10 | delivered via #411/#439 and #436/#443 | #411 provides a versioned three-arm protocol, strict ten-fixture manifest, and deterministic evaluator for Context OFF, legacy broad compatibility, and targeted layered envelopes. #436 adds an explicit clean-current-checkout source without changing the fixed corpus. | Keep model, host, and operational measurements unavailable until a separately authorized observation; every local product verdict remains `INCONCLUSIVE`. |
135
140
  | M11 | delivered and released via #412/#441 | The installed-package compatibility boundary uses a generic manifest and runner. | Keep version-specific acceptance scripts out of new Context changes. |
136
- | M12 | verified-existing; #431 local candidate | CI critical-path optimization is already measured and active. #431 classifies an unavailable repository observer as `clean-package-observer-gh-required` rather than a source-test failure. | Preserve the critical path; treat the named observer prerequisite as `ENVIRONMENT_BLOCKED` and add only bounded Context checks to the correct lane. |
137
- | M13 | mixed: #412 delivered; #430/#435 local candidates | Stable `v0.8.36` provides the generic manifest/runner; the contributor map and its security/release/bootstrap-intake routes are local candidates for a readable credential-free contributor route. | Preserve generic package/source-fallback checks and keep the route separate from hosted or release work. |
138
- | M14 | #433 local candidate | The README entrypoint makes Context activation, authority, host, evidence, and product-focus limits explicit, with usefulness still `INCONCLUSIVE`. | Preserve the public boundary without promoting local evidence to host delivery or product value. |
141
+ | M12 | verified-existing; #431/#443 delivered | CI critical-path optimization is already measured and active. #431 classifies an unavailable repository observer as `clean-package-observer-gh-required` rather than a source-test failure. | Preserve the critical path; treat the named observer prerequisite as `ENVIRONMENT_BLOCKED` and add only bounded Context checks to the correct lane. |
142
+ | M13 | delivered via #412/#441 and #430/#435/#443 | Stable `v0.8.36` provides the generic manifest/runner; the contributor map and its security/release/bootstrap-intake routes give a readable credential-free contributor route. | Preserve generic package/source-fallback checks and keep the route separate from hosted or release work. |
143
+ | M14 | delivered via #433/#443 | The README entrypoint makes Context activation, authority, host, evidence, and product-focus limits explicit, with usefulness still `INCONCLUSIVE`. | Preserve the public boundary without promoting local evidence to host delivery or product value. |
139
144
 
140
145
  ## Invariants
141
146
 
@@ -153,6 +158,22 @@ evidence rather than a description of current protected main.
153
158
  - No external value or adoption claim is made without independent users and
154
159
  repositories. Current product-value verdict: **INCONCLUSIVE**.
155
160
 
161
+ ## Current Verdict
162
+
163
+ - **Technical P0 verdict: `TECHNICAL_GO`.** The deterministic Core, envelope,
164
+ Team Profile, Context CLI, default-off compatibility boundary, OpenCode
165
+ adapter composition, generic manifest runner, contributor route, package
166
+ surface, protected checks, and post-merge checks were integrated by #443 and
167
+ released as `persona-harness@0.8.37` from
168
+ `a82b85ddef7e9fd9518348bff16deb38f53b4676`.
169
+ - **Product verdict: `INCONCLUSIVE`.** The release and local deterministic
170
+ evidence do not show a real OpenCode session receiving Context or an
171
+ independent user receiving value. The #429 status intentionally has no
172
+ observations.
173
+ - **Next allowed step:** only #410's own named Delivery Control start predicate
174
+ can authorize one bounded real OpenCode observation. It is not an automatic
175
+ release follow-up, and it cannot be replaced with a synthetic or retry run.
176
+
156
177
  ## Current Delivery Order
157
178
 
158
179
  1. **Merged P0 implementation:** #390 through #403 merged and closed through
@@ -171,17 +192,16 @@ evidence rather than a description of current protected main.
171
192
  5. **Compatibility release:** #412 is delivered as stable `v0.8.36` through
172
193
  #441 on `9e8dcc3e72fab52dcb71c12c1a45cd3846929be8`. It provides the
173
194
  generic installed-package compatibility manifest and runner.
174
- 6. **Remaining independent work:** #410 owns the sole real OpenCode-host
175
- observation route. #429 owns a preregistered external-validation schema
176
- whose initial state remains `INCONCLUSIVE` without an observation.
177
- 7. **Current local P0 candidates:** #429 records the external-validation
178
- parser/evaluator and empty status, #430 records the contributor map, #433
179
- records the README claim boundary, #434 reconciles current program status,
180
- #435 binds contributor operations to existing security/release/diagnosis
181
- routes, #436 adds the explicit clean-current-checkout comparison route, and
182
- #431 classifies the repository observer prerequisite before package work.
183
- They are local integration candidates only; none is release, host-delivery,
184
- or product-value evidence.
195
+ 6. **P0 integration release:** #442 delivered the deterministic local P0
196
+ boundaries from #429, #430, #431, #433, #434, #435, and #436 through #443
197
+ as stable `v0.8.37` on
198
+ `a82b85ddef7e9fd9518348bff16deb38f53b4676`. The release does not create
199
+ host-delivery or product-value evidence.
200
+ 7. **Remaining independent evidence:** #410 owns the sole real OpenCode-host
201
+ observation route and still requires its own named Delivery Control start
202
+ predicate. #429 owns the preregistered external-validation schema; its
203
+ current empty status remains `INCONCLUSIVE` until a future independent
204
+ observation meets the fixed protocol.
185
205
 
186
206
  Only one public command, schema, resolver, adapter, CI, script, or documentation
187
207
  boundary is changed per child issue. A child issue closes only when its stated
@@ -211,9 +231,10 @@ not assert direct closure causality.
211
231
  | #401 | closed via #413 | Bare `ph context init` remains a no-write preview. Explicit `ph context init --enable` uses no-follow exclusive creation to write only a minimal `.persona/harness.jsonc` Context configuration in a fresh safe project. Existing regular config files, unsafe paths, and malformed arguments return finite errors without rewriting any configuration. It does not alter legacy feature flags, activate a host, or create completion state. Focused init/status/routing tests and the isolated tarball smoke cover the public surface. |
212
232
  | #402 | closed via #413 | `ph context doctor` now reuses the safe status readers instead of emitting fixed placeholder state. It reports bounded config/enablement/mode/budget/Team Profile diagnostics and explicitly distinguishes available local Core/CLI inspection from unavailable host delivery. It does not load personal rule content, write state, activate a host, or use network/shell/process/completion behavior. Focused doctor/status/routing tests and the isolated tarball smoke cover the public surface. |
213
233
  | #403 | closed via #413 | The isolated OpenCode adapter captures only safe observed targets, uses the local Context preview/envelope boundary, suppresses duplicate digests until session compaction/deletion, and mutates only the next matching user message. `context.enabled` is its sole feature switch; it does not inherit `runtimeInjection`. Adapter, actual plugin composition, status/doctor wording, type compatibility, and fail-closed target cases have focused RED-to-GREEN coverage. A real `experimental.chat.messages.transform` host observation remains separate. |
214
- | #411 | delivered through #439; #436 local candidate | Stable `v0.8.34` binds the deterministic three-arm comparison source at `19c397e4fed5b1cce7d024fbcc51350e9676105f`. `persona-context-comparison-manifest.1` fixes ten P0 fixtures and compares `off`, `legacy-broad`, and `targeted-layered` through `persona-context-comparison-result.1`. The historical runner accepts explicit candidate commit and package-version metadata; #436 adds a distinct explicit `--current-checkout` source that binds a clean root checkout before evaluation. Both forms produce 30 deterministic records and emit only rule ids/layers and digests; model/host/operational fields remain `null` and every local product verdict is `INCONCLUSIVE`. |
234
+ | #411 | delivered through #439 and #443 | Stable `v0.8.34` binds the deterministic three-arm comparison source at `19c397e4fed5b1cce7d024fbcc51350e9676105f`. `persona-context-comparison-manifest.1` fixes ten P0 fixtures and compares `off`, `legacy-broad`, and `targeted-layered` through `persona-context-comparison-result.1`. The historical runner accepts explicit candidate commit and package-version metadata; #436, released through #443, adds a distinct explicit `--current-checkout` source that binds a clean root checkout before evaluation. Both forms produce 30 deterministic records and emit only rule ids/layers and digests; model/host/operational fields remain `null` and every local product verdict is `INCONCLUSIVE`. |
215
235
  | #414 | delivered through #437 | Stable `v0.8.33` binds the P0 implementation package/source release lineage. It is immutable historical release evidence and does not authorize #410, a host session, or any Context product claim by itself. |
216
236
  | #421 | delivered through #440 | Stable `v0.8.35` binds the Team Profile v2 source at `90a913168edac40eb29290e7ff47885bb94b30fd`. The separate JSONC loader and explicit pure-resolver layer reject unknown fields, unsafe shared text, duplicate ids, active topic conflicts, malformed JSONC, and symlinked files without reading personal state or activating a host. | Release and provenance evidence do not begin CLI delivery, adapter delivery, runtime activation, or external effectiveness observation. |
237
+ | #442 | delivered through #443 | Stable `v0.8.37` binds the integrated deterministic P0 boundary to `a82b85ddef7e9fd9518348bff16deb38f53b4676`. It includes the external-validation schema/status, contributor route, default-off claim boundary, current-checkout comparison route, and observer prerequisite classification. | The release does not substitute for #410's real host observation or turn the empty #429 protocol into product evidence. |
217
238
 
218
239
  The heavy `test:installed-package-contract` and full protected repository suite
219
240
  remain unchanged. The generic package smoke is version-neutral and does not
@@ -261,8 +282,9 @@ was not modified.
261
282
  | P0 implementation | #413 merged at `a562331f9db321845b05da1e16edc4b83bf78ece`; #390 through #403 are observed closed after that merge. | No integration PR remains. |
262
283
  | P0 implementation release lineage | #414 delivered stable `v0.8.33` through #437. Its immutable tag, GitHub Release, npm `latest`, canonical tar, and provenance bind to `9b80a45070be10659150095cf701a6f375bc6600`. | Historical P0 implementation release evidence does not prove live host delivery. |
263
284
  | Deterministic comparison release lineage | #411 delivered stable `v0.8.34` through #439. Its immutable tag, GitHub Release, npm `latest`, canonical tar, and provenance bind to `19c397e4fed5b1cce7d024fbcc51350e9676105f`. | It records only deterministic technical results; host/model/operational values remain unavailable and product verdicts remain `INCONCLUSIVE`. |
264
- | Hosted Context delivery | The current published comparison package contains the merged #403 adapter boundary, but no package/release record substitutes for the #410 start predicate. | #410 still needs its own named Delivery Control start predicate and one bounded real OpenCode observation. |
265
- | Other follow-ups | #421 is delivered as stable `v0.8.35` through #440; #412 is delivered as stable `v0.8.36` through #441. | Neither release manufactures host or user-value evidence. |
285
+ | Current P0 integration release | #442 delivered stable `v0.8.37` through #443. Its immutable tag, GitHub Release, npm `latest`, canonical tar, and provenance bind to `a82b85ddef7e9fd9518348bff16deb38f53b4676`. | It closes the deterministic local P0 boundaries, not #410's real host observation or external product-value evidence. |
286
+ | Hosted Context delivery | The current program-status publication `0.8.38` retains the merged #403 adapter boundary, but no package/release record substitutes for the #410 start predicate. | #410 still needs its own named Delivery Control start predicate and one bounded real OpenCode observation. |
287
+ | Other follow-ups | #421 is delivered as stable `v0.8.35` through #440; #412 is delivered as stable `v0.8.36` through #441; the #429 protocol is released through #443 with zero observations. | None of these facts manufacture host or user-value evidence. |
266
288
 
267
289
  Product-value verdict remains **INCONCLUSIVE**. Local composition, package,
268
290
  release, and CI evidence do not establish host-session delivery or user benefit.
@@ -302,10 +324,11 @@ expand the released Context delivery scope or change its default-off boundary.
302
324
 
303
325
  ## Next Action
304
326
 
305
- Do not reopen the completed #390–#403 integration or #414 release paths.
306
- Delivery Control must record #410's own named hosted start predicate before one
307
- real OpenCode `experimental.chat.messages.transform` observation can begin.
308
- #429 may validate a preregistration/result schema, but its initial state must
309
- remain `INCONCLUSIVE`. Do not infer host delivery or product value from local
310
- composition tests, catalog registration, release provenance, an empty
311
- external-validation status, or historical evidence.
327
+ No deterministic local Context P0 candidate remains open after #443. Do not
328
+ reopen the completed #390–#403 integration, #414 release, or #442 integration
329
+ paths. Delivery Control must record #410's own named hosted start predicate
330
+ before one real OpenCode `experimental.chat.messages.transform` observation can
331
+ begin. The #429 protocol remains `INCONCLUSIVE` with zero observations; do not
332
+ infer host delivery or product value from local composition tests, catalog
333
+ registration, release provenance, an empty external-validation status, or
334
+ historical evidence.
@@ -25,7 +25,7 @@
25
25
  "package": {
26
26
  "channel": "unpublished",
27
27
  "scope": "source-candidate",
28
- "version": "0.8.37"
28
+ "version": "0.8.38"
29
29
  },
30
30
  "currentSourceCandidate": {
31
31
  "registryInstall": "requires-authorized-release-before-registry-install",
@@ -0,0 +1,38 @@
1
+ # v0.8.38 Release Notes
2
+
3
+ ## Context P0 Program Record
4
+
5
+ This release publishes the reconciled Context Personalization P0 program
6
+ record in the installed package. It distinguishes the completed deterministic
7
+ technical boundary from the still-unmeasured live-host and external-value
8
+ boundaries.
9
+
10
+ The deterministic P0 verdict is `TECHNICAL_GO`. The product verdict remains
11
+ `INCONCLUSIVE`: no release, package, CI result, or local fixture is evidence
12
+ of a real host-session delivery or user benefit.
13
+
14
+ ## What Changed
15
+
16
+ - Package the current Context P0 status record and its explicit delivery
17
+ lineage.
18
+ - Preserve the immutable `0.8.37` P0 integration release as the deterministic
19
+ implementation baseline.
20
+ - State that issue #410 remains a separately gated real-host observation; this
21
+ release does not start it.
22
+
23
+ ## Safety And Scope Boundaries
24
+
25
+ - Context remains explicit opt-in and default-off.
26
+ - Context-only paths do not infer workflow, shell/process execution, network,
27
+ GitHub, evidence, authority, credential, or host-observation actions.
28
+ - This release does not claim a live OpenCode delivery result, external user
29
+ result, token saving, or product efficacy.
30
+ - Historical releases remain immutable and cannot supply current package or
31
+ host-observation evidence.
32
+
33
+ ## Verification
34
+
35
+ The release path verifies source and integration contracts, type safety,
36
+ documentation and release-policy checks, a fresh isolated tarball
37
+ installation, protected CI, canonical package identity, and registry
38
+ provenance.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "persona-harness",
3
- "version": "0.8.37",
3
+ "version": "0.8.38",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "packageManager": "npm@10.8.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@persona-harness/shared-skills",
3
- "version": "0.8.37",
3
+ "version": "0.8.38",
4
4
  "type": "module",
5
5
  "private": true,
6
6
  "description": "Persona-owned portable skill procedures and optional overlays",