instar 1.3.702 → 1.3.703

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.702",
3
+ "version": "1.3.703",
4
4
  "description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-06-30T08:25:23.427Z",
5
- "instarVersion": "1.3.702",
4
+ "generatedAt": "2026-06-30T10:53:21.745Z",
5
+ "instarVersion": "1.3.703",
6
6
  "entryCount": 202,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -0,0 +1,33 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ Adds the missing Tier-3 "feature is alive" E2E test for the WS1.3 OwnershipReconciler (the
9
+ cross-machine stuck-move fix): `tests/e2e/pool-reconciler-alive-lifecycle.test.ts`. It
10
+ starts a real `AgentServer` with the reconciler wired and asserts over HTTP that
11
+ `GET /pool/reconciler` is alive (200, not 503), reports both machines, and that one
12
+ reconciler tick CONVERGES a pinned topic (owner != pin → transferring toward the pin
13
+ target), with the live status route reflecting the transfer. Test-only; no runtime change.
14
+ This completes the unit + integration + e2e three-tier coverage the Testing Integrity
15
+ Standard requires — the reconciler previously had unit + integration but no tests/e2e/
16
+ feature-alive test (the tier that catches "the dependency wasn't wired" defects, the class
17
+ the boot-ordering bugs belonged to).
18
+
19
+ ## What to Tell Your User
20
+
21
+ None — internal change (no user-facing surface).
22
+
23
+ ## Summary of New Capabilities
24
+
25
+ None — internal change (no user-facing surface).
26
+
27
+ ## Evidence
28
+
29
+ - `tests/e2e/pool-reconciler-alive-lifecycle.test.ts` — 4 tests, all pass locally
30
+ (`vitest run --config vitest.e2e.config.ts`): route alive (200), decision explanation
31
+ (transfer), the tick converges (status `transferring`, transferTo = peer, lastReport
32
+ transfers = 1), and auth (401/403 without a Bearer token).
33
+ - No source files changed (test-only); `tsc --noEmit` clean.
@@ -0,0 +1,42 @@
1
+ # Side-Effects Review — Tier-3 feature-alive E2E for the ownership reconciler
2
+
3
+ **Slug:** reconciler-alive-e2e
4
+ **Change:** Add `tests/e2e/pool-reconciler-alive-lifecycle.test.ts` (4 tests). Test-only;
5
+ no runtime/source changes. Completes the unit + integration + **e2e** three-tier coverage
6
+ required by the Testing Integrity Standard for the reconciler stuck-move fix.
7
+
8
+ ## 1. Over-block — what legitimate inputs does this reject that it shouldn't?
9
+ N/A — it's a test, not a gate. It asserts the real behavior (200 not 503, decision=transfer,
10
+ a tick converges). It cannot reject any production input.
11
+
12
+ ## 2. Under-block — what failure modes does this still miss?
13
+ It does not re-run `server.ts`'s exact boot ordering (it wires AgentServer directly, like
14
+ the sibling pool-placement-transfer-alive E2E), so the specific boot-construction ordering
15
+ is NOT asserted here — that is covered by OwnershipReconciler.test.ts's late-bound-dep
16
+ regression tests. The comment states this honestly so the test isn't over-trusted. It also
17
+ exercises a single ownership registry (the route + the owner-side transfer), not the
18
+ cross-machine journal replication (covered by JournalSyncApplier + topic-pin-replication).
19
+
20
+ ## 3. Level-of-abstraction fit — right layer?
21
+ Yes. Tier-3 "feature is alive" is exactly the missing tier for a feature with an API route.
22
+ It belongs in tests/e2e/ and mirrors the established pattern.
23
+
24
+ ## 4. Signal vs authority compliance
25
+ N/A — a test holds no production authority. It only constrains CI.
26
+
27
+ ## 5. Interactions — shadow / double-fire / race?
28
+ None. It binds an ephemeral port (47261) + a tmpdir, starts/stops its own AgentServer in
29
+ before/afterAll, and cleans up. No shared state with other tests.
30
+
31
+ ## 6. External surfaces — visible to other agents/users/systems?
32
+ No. Test-only; no endpoint, config, or user surface. Marked internal-only in the release
33
+ notes (no runtime src change).
34
+
35
+ ## 7. Multi-machine posture (Cross-Machine Coherence)
36
+ The test simulates the multi-machine reconciler decision (two machines in machines(), a
37
+ topic owned by SELF pinned to PEER) within one process — the standard way the e2e tier
38
+ proves a multi-machine feature is alive. It does not itself run on multiple machines (a
39
+ test never does); it asserts the convergence LOGIC the real multi-machine path relies on.
40
+
41
+ ## 8. Rollback cost
42
+ Trivial — delete one test file. No migration, no state, no behavior change.