instar 1.3.899 → 1.3.901

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.
Files changed (39) hide show
  1. package/dist/core/FeatureRolloutReconciler.d.ts +2 -1
  2. package/dist/core/FeatureRolloutReconciler.d.ts.map +1 -1
  3. package/dist/core/FeatureRolloutReconciler.js +10 -2
  4. package/dist/core/FeatureRolloutReconciler.js.map +1 -1
  5. package/dist/core/InitiativeTracker.d.ts +18 -0
  6. package/dist/core/InitiativeTracker.d.ts.map +1 -1
  7. package/dist/core/InitiativeTracker.js.map +1 -1
  8. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  9. package/dist/core/PostUpdateMigrator.js +5 -0
  10. package/dist/core/PostUpdateMigrator.js.map +1 -1
  11. package/dist/core/featureRolloutScan.d.ts +10 -0
  12. package/dist/core/featureRolloutScan.d.ts.map +1 -1
  13. package/dist/core/featureRolloutScan.js +54 -0
  14. package/dist/core/featureRolloutScan.js.map +1 -1
  15. package/dist/monitoring/BlockerLifecycleLedger.d.ts +34 -1
  16. package/dist/monitoring/BlockerLifecycleLedger.d.ts.map +1 -1
  17. package/dist/monitoring/BlockerLifecycleLedger.js +140 -9
  18. package/dist/monitoring/BlockerLifecycleLedger.js.map +1 -1
  19. package/dist/monitoring/BlockerLifecycleService.d.ts +18 -1
  20. package/dist/monitoring/BlockerLifecycleService.d.ts.map +1 -1
  21. package/dist/monitoring/BlockerLifecycleService.js +230 -3
  22. package/dist/monitoring/BlockerLifecycleService.js.map +1 -1
  23. package/dist/scaffold/templates.js +1 -1
  24. package/dist/server/AgentServer.d.ts.map +1 -1
  25. package/dist/server/AgentServer.js +1 -1
  26. package/dist/server/AgentServer.js.map +1 -1
  27. package/dist/server/CapabilityIndex.js +2 -2
  28. package/dist/server/CapabilityIndex.js.map +1 -1
  29. package/dist/server/routes.d.ts.map +1 -1
  30. package/dist/server/routes.js +123 -8
  31. package/dist/server/routes.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/data/builtin-manifest.json +64 -64
  34. package/src/scaffold/templates.ts +1 -1
  35. package/upgrades/1.3.900.md +27 -0
  36. package/upgrades/1.3.901.md +22 -0
  37. package/upgrades/eli16/throughput-count-climbing.eli16.md +17 -0
  38. package/upgrades/side-effects/feature-maturation-recurring-evaluation.md +37 -0
  39. package/upgrades/side-effects/throughput-count-climbing.md +41 -0
@@ -0,0 +1,37 @@
1
+ # Side-effects review — feature maturation recurring evaluation
2
+
3
+ ## Scope
4
+
5
+ Adds measure-only per-feature observation/evaluation rows to the existing blocker-lifecycle SQLite owner, extends existing rollout metadata, and adds bounded maturation fields to existing summary/trend responses.
6
+
7
+ ## 1. State and persistence
8
+
9
+ Two additive tables share the existing SQLite handle, WAL policy, close path, registry, 90-day retention, and bounded prune pass. No authoritative rollout or feature state moves into telemetry. Rollout records gain one optional validated contract; old records remain valid.
10
+
11
+ ## 2. Runtime and performance
12
+
13
+ One boot-delayed and six-hour unref'd evaluation timer runs only when the existing blocker-lifecycle development gate resolves on and an InitiativeTracker is injected. A pass is capped at 512 features and 16 metrics per feature. Reads and writes are indexed and fail-soft; measurement cannot block server boot or feature behavior.
14
+
15
+ ## 3. External and user-visible effects
16
+
17
+ No outbound message, attention item, external API, model call, flag mutation, or rollout promotion is added. Existing summary/trend JSON gains additive `maturation` fields. Pool peers that predate the field are reported as unsupported rather than as healthy zeros.
18
+
19
+ ## 4. Signal versus authority
20
+
21
+ Compliant. Metric comparisons are deterministic signals. They cannot write InitiativeTracker, configuration, standards, approvals, or feature flags. Existing human/config promotion authority is unchanged.
22
+
23
+ ## 5. Failure and rollback
24
+
25
+ Malformed contracts become missing-contract signals; invalid/future observations are rejected; unavailable SQLite degrades reads and guard health. Observation/evaluation write failures return false, and read failures return empty evidence that deterministically becomes insufficient evidence or missed cadence; these fail-soft boundaries are explicitly marked for the repository fallback audit. Disable the existing blocker-lifecycle gate or revert the change. Additive rows become inert and require no destructive rollback.
26
+
27
+ ## 6. Security and privacy
28
+
29
+ Rows contain bounded feature/metric ids, numeric values, sample counts, source enums/refs, stages, hashes, and timestamps only. They contain no prose, prompt, log content, topic/user id, path, credential, or URL. Pool responses remain authenticated and machine-tagged.
30
+
31
+ ## 7. Multi-machine behavior
32
+
33
+ Measurements remain per-origin because feature traffic and model routing can differ by runtime. The existing authenticated pool read projects tagged origins without a fleet aggregate, so one machine cannot hide another's missing evidence.
34
+
35
+ ## Review conclusion
36
+
37
+ Concur. The change extends the intended owners, is bounded and reversible, and introduces no new actuation authority.
@@ -0,0 +1,41 @@
1
+ # Side-Effects Review — Throughput completion count and climbing trend
2
+
3
+ **Version / slug:** `throughput-count-climbing`
4
+ **Date:** `2026-07-21`
5
+ **Author:** `instar-codey`
6
+ **Second-pass reviewer:** `/root/goal4_decision_grading/throughput_second_pass — CONCUR` (migration safety, lifecycle idempotency, schema-v2 mixed-version honesty, semantic sanitizer integrity, and zero action authority)
7
+
8
+ ## 1. Decision points
9
+
10
+ Persisted `delivered` events enqueue one completion row. Startup reconciliation replays delivered commitments using the same stable opaque identity, so a crash can delay but not multiply the count. Complete UTC days are split oldest/newest; the current partial day is excluded and zero days remain visible. Schema-v1 peers are reported unsupported after the response advances to schema 2.
11
+
12
+ ## 2. Signal versus authority
13
+
14
+ The count and direction are descriptive only. They cannot select work, grade a worker, notify anyone, impose a floor, block a route or merge, or mutate a commitment. The observe-only throughput floor from #1533 remains observe-only. Reference: `docs/signal-vs-authority.md`.
15
+
16
+ ## 3. Failure and degradation
17
+
18
+ Ledger unavailability still makes only metric reads unavailable; commitment delivery succeeds independently. Queue loss is repaired by bounded reconciliation. Invalid or legacy peer bodies are excluded with an honest failure reason, never coerced to zero. An invalid delivery timestamp produces no row rather than an invented time.
19
+
20
+ ## 4. State and migration
21
+
22
+ The existing SQLite table is migrated in-place to widen its closed factor check while preserving all rows and indexes. Fresh databases create the widened schema directly. The new rows contain origin, opaque source id, timestamp, and outcome only—no user text or commitment content.
23
+
24
+ ## 5. Multi-machine behavior
25
+
26
+ Each origin counts its own authoritative commitment deliveries. Pool reads retain per-origin values and never create a fleet aggregate. Mixed versions are explicitly unsupported until upgraded; no old peer is interpreted as having zero completions.
27
+
28
+ ## 6. Privacy and external surfaces
29
+
30
+ No new endpoint, export, notice, or third-party call is added. Existing authenticated `/blocker-lifecycle/summary` and `/trend` responses gain the count factor. Source ids are one-way hashes over origin and commitment id.
31
+
32
+ ## 7. Rollback
33
+
34
+ Reverting the event consumer and response factor stops new reads without affecting delivery authority. Existing completion rows and the widened SQLite check remain inert and safe; destructive down-migration is neither needed nor attempted.
35
+
36
+ ## 8. Verification and second pass
37
+
38
+ Unit tests pin dedupe, migration, event counting, and climbing math. Integration pins restart reconciliation and idempotency. E2E-alive boots the real server and reads exact count 16 plus a 4x climbing trend through authenticated routes. Independent second-pass review confirmed lifecycle ordering, migration safety, mixed-version honesty, semantic cross-machine validation, and absence of action consumers before merge.
39
+
40
+ Post-rebase integration with the recurring maturation evaluator now includes `deliverable-completion` in its typed summary/trend maps and uses count totals as trend sample evidence. A focused maturation test proves a completion-rate contract evaluates from this shared substrate; no parallel evaluator or authority was introduced.
41
+ The independent reviewer rechecked this D7 composition and concurred: completion counts and latency samples remain correctly distinguished, zero semantics are preserved, and readiness requires a real persisted completion.