instar 1.3.218 → 1.3.219

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.
@@ -25,6 +25,7 @@ export declare class QuotaTracker {
25
25
  private cachedState;
26
26
  private lastRead;
27
27
  private readCooldownMs;
28
+ private warnedNoFile;
28
29
  constructor(config: QuotaTrackerConfig);
29
30
  /**
30
31
  * Read the current quota state from the file.
@@ -1 +1 @@
1
- {"version":3,"file":"QuotaTracker.d.ts","sourceRoot":"","sources":["../../src/monitoring/QuotaTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGpF,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,UAAU,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAClD,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,cAAc,CAAQ;gBAElB,MAAM,EAAE,kBAAkB;IAItC;;;OAGG;IACH,QAAQ,IAAI,UAAU,GAAG,IAAI;IAqC7B;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO;IAKzC;;;;;OAKG;IACH,kBAAkB,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAmDhF;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAsBpC;;OAEG;IACH,iBAAiB,IAAI,UAAU,CAAC,gBAAgB,CAAC;IAkBjD;;;;;;;;;;;OAWG;IACG,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CAiDrC;AAED,+DAA+D;AAC/D,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"QuotaTracker.d.ts","sourceRoot":"","sources":["../../src/monitoring/QuotaTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGpF,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,UAAU,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAClD,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,cAAc,CAAQ;IAM9B,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,kBAAkB;IAItC;;;OAGG;IACH,QAAQ,IAAI,UAAU,GAAG,IAAI;IAwC7B;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO;IAKzC;;;;;OAKG;IACH,kBAAkB,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAmDhF;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAsBpC;;OAEG;IACH,iBAAiB,IAAI,UAAU,CAAC,gBAAgB,CAAC;IAkBjD;;;;;;;;;;;OAWG;IACG,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CAiDrC;AAED,+DAA+D;AAC/D,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
@@ -20,6 +20,12 @@ export class QuotaTracker {
20
20
  cachedState = null;
21
21
  lastRead = 0;
22
22
  readCooldownMs = 5000; // Don't re-read more than every 5s
23
+ // Warn ONCE per no-file episode, not on every getState() call. The
24
+ // `!this.cachedState` guard below was ineffective: when the file is absent,
25
+ // cachedState is never populated, so the warn fired on every call (observed
26
+ // 902×/day on the gemini-cli agent — pure log spam that drowns real signal).
27
+ // Re-armed when the file reappears so a later disappearance warns once more.
28
+ warnedNoFile = false;
23
29
  constructor(config) {
24
30
  this.config = config;
25
31
  }
@@ -35,11 +41,14 @@ export class QuotaTracker {
35
41
  }
36
42
  try {
37
43
  if (!fs.existsSync(this.config.quotaFile)) {
38
- if (!this.cachedState) {
44
+ if (!this.warnedNoFile) {
39
45
  console.warn('[quota] No quota state file found — all jobs will run (fail-open)');
46
+ this.warnedNoFile = true;
40
47
  }
41
48
  return null;
42
49
  }
50
+ // File present again → re-arm the one-shot warning for a future absence.
51
+ this.warnedNoFile = false;
43
52
  const raw = fs.readFileSync(this.config.quotaFile, 'utf-8');
44
53
  const state = JSON.parse(raw);
45
54
  // Check staleness — stale data should fail open (allow all jobs)
@@ -1 +1 @@
1
- {"version":3,"file":"QuotaTracker.js","sourceRoot":"","sources":["../../src/monitoring/QuotaTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QuotaTracker.js","sourceRoot":"","sources":["../../src/monitoring/QuotaTracker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.218",
3
+ "version": "1.3.219",
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-03T10:21:44.524Z",
5
- "instarVersion": "1.3.218",
4
+ "generatedAt": "2026-06-03T10:45:46.826Z",
5
+ "instarVersion": "1.3.219",
6
6
  "entryCount": 195,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -0,0 +1,37 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ `QuotaTracker.getState()` now logs the "No quota state file found — all jobs will run (fail-open)"
9
+ warning **once per missing-file episode** instead of on every call.
10
+
11
+ The previous `if (!this.cachedState)` guard was ineffective for the missing-file case: when the quota
12
+ file is absent, `cachedState` is never populated and `lastRead` is never set, so the read-cooldown
13
+ never engaged and the warning fired on **every** `getState()` — observed at **902 identical lines/day**
14
+ on the gemini-cli agent, drowning real signal in the logs. A one-shot `warnedNoFile` flag now gates the
15
+ warning and re-arms when the file reappears, so a later disappearance still surfaces exactly one warning.
16
+
17
+ No behavior change: quota is still fail-open when the file is absent. Only the log spam is removed.
18
+
19
+ ## What to Tell Your User
20
+
21
+ - **Quieter logs**: "An agent with no quota-state file was logging the same 'fail-open' warning hundreds
22
+ of times a day. It now says it once, so real log signals aren't buried."
23
+
24
+ ## Summary of New Capabilities
25
+
26
+ | Capability | How to Use |
27
+ |-----------|-----------|
28
+ | One-shot missing-quota-file warning | Automatic — the warning logs once per absence episode instead of per call. |
29
+
30
+ ## Evidence
31
+
32
+ Verification:
33
+
34
+ - Unit: warns exactly once across 10 repeated `getState()` calls while the file stays missing;
35
+ re-arms after the file reappears then disappears (warns twice total across the episode boundary);
36
+ existing missing/stale/fresh-data warning tests unchanged.
37
+ - 88 quota-tracker tests green; `tsc --noEmit` clean.
@@ -0,0 +1,19 @@
1
+ # Quota Warning Spam Fix — ELI16
2
+
3
+ Viewable private artifact:
4
+ https://echo.dawn-tunnel.dev/view/3549e97d-8bcc-4320-9fd0-c70b364dbe5a?sig=c4f780ce95e056f912a8aa959a982ad0baaeef692cfe993dbbf86a27efb168b7
5
+
6
+ When an agent has no "quota state" file (a small file that tracks how much of its usage budget is
7
+ left), Instar safely lets all scheduled jobs run anyway — and logs a one-line note: "No quota state
8
+ file found — all jobs will run."
9
+
10
+ The problem: that note was being written on **every single check** — hundreds of times a day (902× on
11
+ one agent). A log full of the same harmless line over and over buries the messages that actually
12
+ matter, like a smoke alarm that beeps every second so you stop hearing it.
13
+
14
+ The fix makes Instar say it **once** when the file goes missing, then stay quiet until the situation
15
+ changes. If the file later comes back and then disappears again, it'll say it once more. Nothing about
16
+ how jobs run changes — the agent still safely runs everything when there's no budget file. Only the
17
+ noise is gone.
18
+
19
+ _Tier-1 fix · branch `echo/quota-no-file-warn-once` · 2 new unit tests + 88 quota-tracker tests green._
@@ -0,0 +1,44 @@
1
+ # Side-Effects Review — QuotaTracker one-shot missing-file warning
2
+
3
+ **Version / slug:** `quota-no-file-warn-once`
4
+ **Date:** `2026-06-03`
5
+ **Author:** `echo`
6
+ **Second-pass reviewer:** `not required`
7
+
8
+ ## Summary of the change
9
+
10
+ A `warnedNoFile` boolean is added to `QuotaTracker`. The missing-file branch warns only when the flag
11
+ is unset (then sets it); the file-present branch clears it. Net effect: one warning per absence episode
12
+ instead of one per `getState()` call. No change to the value `getState()` returns.
13
+
14
+ ## Decision-point inventory
15
+
16
+ None. `getState()` still returns `null` when the file is absent or stale (fail-open). The flag only
17
+ gates a `console.warn` side-effect — it never affects the return value or any gating decision.
18
+
19
+ ## 1. Could a real warning be SUPPRESSED?
20
+
21
+ Only repeats of the *same* condition are suppressed; the first occurrence of each absence episode still
22
+ logs. The flag re-arms when the file reappears, so a file that later disappears warns again — the
23
+ operator never loses the *signal*, only the *spam*. The stale-data and remote-API warnings are
24
+ untouched.
25
+
26
+ ## 2. Could the flag get STUCK (never warn again when it should)?
27
+
28
+ No. The clear happens on the file-present path (right after `existsSync` passes, before the read), so
29
+ any successful observation of the file re-arms the one-shot. A persistently-missing file warns exactly
30
+ once — which is the intent.
31
+
32
+ ## 3. Concurrency / state
33
+
34
+ `QuotaTracker` is a per-process singleton with synchronous `getState()`; the flag is plain instance
35
+ state mutated only inside that method. No async interleaving, no shared-file contention introduced.
36
+
37
+ ## 4. Reversibility
38
+
39
+ Pure in-memory flag, no migration, no persisted state, no config. Revert = revert the two edits.
40
+
41
+ ## Verdict
42
+
43
+ Bounded, additive, no decision-surface change. Removes a high-volume log-spam (902×/day observed)
44
+ without altering quota behavior.