instar 1.3.460 → 1.3.461

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.460",
3
+ "version": "1.3.461",
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",
@@ -173,11 +173,19 @@ If any check fails, the commit is rejected. This is not a warning — it's a blo
173
173
 
174
174
  The pre-push gate (`scripts/pre-push-gate.js`) re-verifies at push time: any release commit whose upgrade notes claim a fix or feature must have a matching artifact in `upgrades/side-effects/`.
175
175
 
176
+ ### Phase 7 — Auto-merge on green (EVERY tier — never pause to ask)
177
+
178
+ When the PR is open and CI goes green, the agent **merges it** — it does NOT pause to ask the operator "ready to merge?" / "want me to merge?". By the time CI is green, the change has already cleared every quality gate this skill enforces: the converged + approved spec (Tier 2) or the staged ELI16 + side-effects artifact (Tier 1), the side-effects review (plus the second-pass review for high-risk changes), the full instar-dev pre-commit + pre-push gates, and the complete CI suite (unit shards + integration + e2e). **Green CI = mergeable. Full stop.** Asking the operator to merge a green PR is redundant ceremony that stalls autonomous delivery — a *Structure-over-Willpower* regression this phase exists to prevent.
179
+
180
+ Perform the merge with `node scripts/safe-merge.mjs <PR#> --squash --admin`. That wrapper re-imposes the requirement `--admin` removes: it waits for every check to finish, REFUSES if any check is red (and specifically confirms an e2e check ran and passed), and only then merges — so the branch-protection safety is preserved even on a behind / hot branch (no separate `update-branch` + full CI re-run needed). After the merge lands, narrate the ship via `POST /telegram/post-update` (the Agent Updates channel) — never a "ready to merge?" question in the working topic.
181
+
182
+ The ONLY thing that stops the merge is a genuinely-red check **on this change**: fix it and re-run. An unrelated environmental flake (a different test failing run-to-run, a tmux/server-boot timeout, a CDN 504) is re-run (`gh run rerun --failed` or a fresh push) — never escalated to the operator as a "should I merge?" question. (Source: operator directive 2026-06-09, topic 23178 — "never pause and ask me to merge; we have enough infra in place to ensure it's good to merge by the time it gets there.")
183
+
176
184
  ## Tiered development (tier signal → you decide → audited)
177
185
 
178
186
  Not every change is the same size or risk, so not every change pays the same process cost. The commit gate (`scripts/instar-dev-precommit.js`) prints a **tier SIGNAL** — a suggested tier from the change's size (LOC + files) and a **risk floor** raised by any safety-invariant, irreversibility, migration/fleet-rollout, or new-capability signal (`scripts/lib/classify-tier.mjs`). The signal **informs**; it never decides. **You DECLARE the tier** in the trace via `write-trace.mjs --tier <1|2|3> --tier-reasoning "<why>"`. This is the constitution's **The Body and the Mind** made executable (`docs/STANDARDS-REGISTRY.md` → The Substrate): the gate (body) informs, the agent (mind) decides, the decision is audited.
179
187
 
180
- - **Tier 1 (small / low-risk):** lighter requirement set — a staged **ELI16** + a staged **side-effects** artifact, no pre-approved converged spec. Declare it with `--tier 1 --eli16-path <path> --side-effects-path <path>` (`--spec` is optional at Tier 1). The PR is the review surface, and **Echo auto-merges a clean Tier-1 on green CI** with operator spot-check.
188
+ - **Tier 1 (small / low-risk):** lighter requirement set — a staged **ELI16** + a staged **side-effects** artifact, no pre-approved converged spec. Declare it with `--tier 1 --eli16-path <path> --side-effects-path <path>` (`--spec` is optional at Tier 1). The PR is the review surface. (Auto-merge-on-green is **not** a Tier-1 privilege per Phase 7 it applies to EVERY tier; Tier 1 differs only in the lighter pre-merge gate, never in the merge behavior.)
181
189
  - **Tier 2+ (everything else):** the full chain above — converged + approved spec, ELI16, side-effects, fresh trace. A **Tier-3 project step** is just a Tier-2 spec; nothing extra is enforced at the gate. **No declared tier → Tier-2** (back-compatible).
182
190
 
183
191
  **The decision is audited.** Every in-scope commit appends one line to `.instar/instar-dev-decisions.jsonl` (signal, declared tier, risk floor + reasons). When you declare **under** the risk-signaled floor, the gate prints a loud `belowFloor` notice and records `belowFloor:true` — it does **not** block (you hold authority), but the override is now a reviewable record. Per **Close the Loop**, those `belowFloor` rates get reviewed on a cadence so the risk-floor list grows.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-06-10T03:11:13.813Z",
5
- "instarVersion": "1.3.460",
4
+ "generatedAt": "2026-06-10T03:19:26.946Z",
5
+ "instarVersion": "1.3.461",
6
6
  "entryCount": 199,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -0,0 +1,30 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ Adds **Phase 7 — Auto-merge on green** to the `instar-dev` skill: once an instar-dev PR's CI is fully
9
+ green, the instar-developing agent merges it via the existing `scripts/safe-merge.mjs` wrapper (which
10
+ waits for every check, refuses on any red, and confirms the e2e job ran and passed) and narrates the
11
+ ship via the Agent Updates channel — it no longer pauses to ask the operator "ready to merge?".
12
+ Auto-merge-on-green now applies to **every tier**, not just Tier-1; the Tier-1 wording is corrected so
13
+ it no longer reads as a Tier-1-only privilege. No runtime code changes — the merge mechanism and CI
14
+ gates it relies on are unchanged. Structure-over-Willpower fix for an operator directive (never pause
15
+ to ask for merge; the gates already guarantee mergeability by the time CI is green).
16
+
17
+ ## What to Tell Your User
18
+
19
+ None — internal change (no user-facing surface).
20
+
21
+ ## Summary of New Capabilities
22
+
23
+ None — internal change (no user-facing surface).
24
+
25
+ ## Evidence
26
+
27
+ - `skills/instar-dev/SKILL.md` — new Phase 7 + corrected Tier-1 line.
28
+ - Mechanism unchanged: `scripts/safe-merge.mjs` already re-imposes all-checks-green (incl. e2e) before
29
+ merging. Tier-1 instar-dev gate passed (ELI16 + side-effects + trace); this PR auto-merges on green
30
+ per the very phase it adds.
@@ -0,0 +1,88 @@
1
+ # Side-Effects Review — instar-dev: auto-merge on green (every tier)
2
+
3
+ **Version / slug:** `instar-dev-automerge-on-green`
4
+ **Date:** `2026-06-09`
5
+ **Author:** `Instar Agent (echo)`
6
+ **Second-pass reviewer:** `not required (Tier 1 — documentation/process change to the dev skill; the merge mechanism it mandates (safe-merge.mjs + CI) is unchanged and already gated)`
7
+
8
+ ## Summary of the change
9
+
10
+ Adds **Phase 7 — Auto-merge on green (every tier)** to `skills/instar-dev/SKILL.md`, and corrects the
11
+ Tier-1 description so auto-merge no longer reads as a Tier-1-only privilege. The new phase mandates that
12
+ once an instar-dev PR's CI is fully green, the agent merges it via the existing
13
+ `scripts/safe-merge.mjs <PR> --squash --admin` wrapper and narrates the ship via `/telegram/post-update`
14
+ — it does NOT pause to ask the operator "ready to merge?". Documentation/process change only; no runtime
15
+ code, no new gate, no new merge mechanism (safe-merge.mjs already exists and re-imposes all-checks-green
16
+ before merging, including an explicit e2e-ran-and-passed check). Driven by the operator directive
17
+ (2026-06-09, topic 23178): "never pause and ask me to merge; we have enough infra in place to ensure
18
+ it's good to merge by the time it gets there. Lets fix this via infrastructure."
19
+
20
+ ## Decision-point inventory
21
+
22
+ - No decision point added/changed. This is a process-doc change to the instar-dev skill. The actual
23
+ merge safety lives in `safe-merge.mjs` (waits for all checks, refuses on any red, confirms e2e) + CI
24
+ branch protection — both unchanged.
25
+
26
+ ## 1. Over-block
27
+
28
+ No block/allow surface — over-block not applicable.
29
+
30
+ ## 2. Under-block
31
+
32
+ No block/allow surface — under-block not applicable. (The only behavior changed is removing a human
33
+ pause AFTER green CI; the green verdict itself — the actual quality gate — is unchanged. `safe-merge.mjs`
34
+ still refuses to merge anything not fully green.)
35
+
36
+ ## 3. Level-of-abstraction fit
37
+
38
+ Correct layer. The fix Justin asked for is behavioral: stop pausing to ask for merge. The instar-dev
39
+ skill is exactly where the dev-agent's process is defined, so adding Phase 7 there is the
40
+ right-altitude structural fix (Structure > Willpower — the behavior is now baked into the governing
41
+ process doc, not left to the agent "remembering" not to pause). The merge mechanism it points at
42
+ (`safe-merge.mjs`) already existed; this just makes invoking it the mandated final step for every tier.
43
+
44
+ ## 4. Signal vs authority compliance
45
+
46
+ - [x] No — this change has no block/allow surface (documentation/process change).
47
+
48
+ ## 5. Interactions
49
+
50
+ - **Shadowing / double-fire:** none. `safe-merge.mjs` is idempotent-safe (it no-ops / refuses if the PR
51
+ isn't green or is already merged).
52
+ - **Races:** none introduced.
53
+ - **Existing Tier-1 auto-merge wording:** the prior line implied auto-merge was a Tier-1 privilege;
54
+ Phase 7 generalizes it and the Tier-1 line is corrected to point at Phase 7, so the two no longer
55
+ conflict.
56
+
57
+ ## 6. External surfaces
58
+
59
+ - **Merge behavior:** the agent now auto-merges green instar-dev PRs instead of asking. This is the
60
+ intended change. It is bounded by CI + `safe-merge.mjs` (refuses on any red, confirms e2e ran+passed),
61
+ so an unsafe PR cannot be auto-merged. Ship narration moves to the Agent Updates channel
62
+ (`/telegram/post-update`) rather than a "ready to merge?" question in the working topic.
63
+ - **Migration Parity:** this updates the **instar-dev DEV skill** — used only by the instar-developing
64
+ agent (Echo / a dev-assigned agent), not an end-user feature skill. Per the known skill-install gap
65
+ (the root `skills/` dir, including `instar-dev`, is not synced by `installBuiltinSkills()` and has no
66
+ PostUpdateMigrator path — a separately-tracked issue), the canonical source change here reaches the
67
+ repo; the installed-copy sync for dev agents rides that pre-existing gap. The authoring agent updates
68
+ its own installed `.claude/skills/instar-dev/SKILL.md` directly so the behavior is live immediately.
69
+ A general fix to dev-skill sync is out of scope (it is the standing skill-install-gap project).
70
+ - **No config / CLAUDE.md template / hook / route change.** No persisted state.
71
+
72
+ ## 7. Rollback cost
73
+
74
+ Pure documentation revert — revert the PR; the skill returns to the Tier-1-only auto-merge wording. No
75
+ data migration, no runtime impact, no agent-state repair.
76
+
77
+ ## Conclusion
78
+
79
+ A focused Structure-over-Willpower fix for the operator's directive: auto-merge-on-green becomes the
80
+ mandated final phase for every instar-dev tier, removing the redundant "ask to merge" pause while
81
+ leaving the actual merge-safety mechanism (`safe-merge.mjs` + CI) untouched. Tier 1 (doc/process change
82
+ to the dev skill); second-pass not required. It will be auto-merged on green per the very phase it adds.
83
+
84
+ ## Second-pass review (if required)
85
+
86
+ **Reviewer:** not required — Tier-1 documentation/process change to the dev skill; no block/allow,
87
+ session-lifecycle, sentinel/guard/gate, or recovery-path code is modified. The merge mechanism
88
+ (`safe-merge.mjs`) and CI gates it relies on are unchanged.