instar 1.3.803 → 1.3.804
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/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +1 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/config/ConfigDefaults.d.ts.map +1 -1
- package/dist/config/ConfigDefaults.js +6 -0
- package/dist/config/ConfigDefaults.js.map +1 -1
- package/dist/core/types.d.ts +15 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/monitoring/CommitmentTracker.d.ts +29 -0
- package/dist/monitoring/CommitmentTracker.d.ts.map +1 -1
- package/dist/monitoring/CommitmentTracker.js +129 -6
- package/dist/monitoring/CommitmentTracker.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.804.md +29 -0
- package/upgrades/eli16/commitment-auto-expiry.md +19 -0
- package/upgrades/side-effects/commitment-auto-expiry.md +108 -0
|
@@ -27,12 +27,17 @@ import { SafeFsExecutor } from '../core/SafeFsExecutor.js';
|
|
|
27
27
|
const MUTATE_QUEUE_MAX_DEPTH = 256;
|
|
28
28
|
/** Max CAS retries when the version drifts under an apply. */
|
|
29
29
|
const MUTATE_CAS_MAX_RETRIES = 5;
|
|
30
|
+
const DEFAULT_AUTO_EXPIRY_MAX_AGE_DAYS = 21;
|
|
31
|
+
const DEFAULT_AUTO_EXPIRY_SWEEP_INTERVAL_MS = 6 * 60 * 60 * 1000;
|
|
32
|
+
const AUTO_EXPIRY_SWEEP_CAP = 500;
|
|
30
33
|
export class CommitmentTracker extends EventEmitter {
|
|
31
34
|
config;
|
|
32
35
|
store;
|
|
33
36
|
storePath;
|
|
34
37
|
rulesPath;
|
|
35
38
|
interval = null;
|
|
39
|
+
autoExpiryInterval = null;
|
|
40
|
+
autoExpiryInitialTimeout = null;
|
|
36
41
|
nextId;
|
|
37
42
|
/**
|
|
38
43
|
* Coalesce the per-mutation full-store writes of a synchronous sweep into ONE
|
|
@@ -122,10 +127,22 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
122
127
|
if (this.interval)
|
|
123
128
|
return;
|
|
124
129
|
const intervalMs = this.config.checkIntervalMs ?? 60_000;
|
|
130
|
+
const autoExpiry = this.resolveAutoExpiryConfig();
|
|
125
131
|
// First verification after a short delay
|
|
126
132
|
setTimeout(() => this.verify(), 15_000);
|
|
127
133
|
this.interval = setInterval(() => this.verify(), intervalMs);
|
|
128
134
|
this.interval.unref();
|
|
135
|
+
if (autoExpiry.enabled) {
|
|
136
|
+
this.autoExpiryInitialTimeout = setTimeout(() => {
|
|
137
|
+
this.autoExpiryInitialTimeout = null;
|
|
138
|
+
this.sweepAutoExpiry();
|
|
139
|
+
}, 30_000);
|
|
140
|
+
this.autoExpiryInitialTimeout.unref();
|
|
141
|
+
this.autoExpiryInterval = setInterval(() => {
|
|
142
|
+
this.sweepAutoExpiry();
|
|
143
|
+
}, autoExpiry.sweepIntervalMs);
|
|
144
|
+
this.autoExpiryInterval.unref();
|
|
145
|
+
}
|
|
129
146
|
const active = this.getActive().length;
|
|
130
147
|
if (active > 0) {
|
|
131
148
|
console.log(`[CommitmentTracker] Started (every ${Math.round(intervalMs / 1000)}s, ${active} active commitment(s))`);
|
|
@@ -139,6 +156,14 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
139
156
|
clearInterval(this.interval);
|
|
140
157
|
this.interval = null;
|
|
141
158
|
}
|
|
159
|
+
if (this.autoExpiryInitialTimeout) {
|
|
160
|
+
clearTimeout(this.autoExpiryInitialTimeout);
|
|
161
|
+
this.autoExpiryInitialTimeout = null;
|
|
162
|
+
}
|
|
163
|
+
if (this.autoExpiryInterval) {
|
|
164
|
+
clearInterval(this.autoExpiryInterval);
|
|
165
|
+
this.autoExpiryInterval = null;
|
|
166
|
+
}
|
|
142
167
|
}
|
|
143
168
|
// ── Commitment CRUD ────────────────────────────────────────────
|
|
144
169
|
/**
|
|
@@ -348,6 +373,20 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
348
373
|
this.emit('delivered', updated);
|
|
349
374
|
return updated;
|
|
350
375
|
}
|
|
376
|
+
/**
|
|
377
|
+
* Expire a commitment through the same terminal transition used by sweeps.
|
|
378
|
+
*/
|
|
379
|
+
expire(id, reason = 'Expired') {
|
|
380
|
+
const existing = this.store.commitments.find(c => c.id === id);
|
|
381
|
+
if (!existing)
|
|
382
|
+
return null;
|
|
383
|
+
if (['expired', 'withdrawn', 'delivered'].includes(existing.status))
|
|
384
|
+
return null;
|
|
385
|
+
const updated = this.expireSync(id, reason, new Date().toISOString());
|
|
386
|
+
this.refreshThreadIdIndex(updated);
|
|
387
|
+
this.emit('expired', updated);
|
|
388
|
+
return updated;
|
|
389
|
+
}
|
|
351
390
|
/**
|
|
352
391
|
* Record that a reply arrived on a threadline-reply commitment. Updates
|
|
353
392
|
* `lastReplyAt` without transitioning status. Used by the salience gate's
|
|
@@ -1045,6 +1084,58 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
1045
1084
|
}
|
|
1046
1085
|
}
|
|
1047
1086
|
// ── Expiration ─────────────────────────────────────────────────
|
|
1087
|
+
sweepAutoExpiry(now = new Date()) {
|
|
1088
|
+
const config = this.resolveAutoExpiryConfig();
|
|
1089
|
+
const timestamp = now.toISOString();
|
|
1090
|
+
const report = {
|
|
1091
|
+
timestamp,
|
|
1092
|
+
dryRun: config.dryRun,
|
|
1093
|
+
enabled: config.enabled,
|
|
1094
|
+
maxAgeDays: config.maxAgeDays,
|
|
1095
|
+
scanned: 0,
|
|
1096
|
+
eligible: 0,
|
|
1097
|
+
expired: 0,
|
|
1098
|
+
capped: false,
|
|
1099
|
+
};
|
|
1100
|
+
if (!config.enabled)
|
|
1101
|
+
return report;
|
|
1102
|
+
const targets = [];
|
|
1103
|
+
for (const commitment of this.store.commitments) {
|
|
1104
|
+
report.scanned++;
|
|
1105
|
+
if (!this.isAutoExpiryEligible(commitment, now, config.maxAgeDays))
|
|
1106
|
+
continue;
|
|
1107
|
+
report.eligible++;
|
|
1108
|
+
if (targets.length < AUTO_EXPIRY_SWEEP_CAP) {
|
|
1109
|
+
targets.push(commitment.id);
|
|
1110
|
+
}
|
|
1111
|
+
else {
|
|
1112
|
+
report.capped = true;
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
if (!config.dryRun && targets.length > 0) {
|
|
1116
|
+
const reason = `auto-expired: aged out >${config.maxAgeDays}d, presumed completed-but-unclosed`;
|
|
1117
|
+
this.batchingSaves = true;
|
|
1118
|
+
try {
|
|
1119
|
+
for (const id of targets) {
|
|
1120
|
+
const updated = this.expireSync(id, reason, timestamp);
|
|
1121
|
+
this.refreshThreadIdIndex(updated);
|
|
1122
|
+
this.emit('expired', updated);
|
|
1123
|
+
report.expired++;
|
|
1124
|
+
}
|
|
1125
|
+
if (report.expired > 0)
|
|
1126
|
+
this.writeBehavioralRules();
|
|
1127
|
+
}
|
|
1128
|
+
finally {
|
|
1129
|
+
this.batchingSaves = false;
|
|
1130
|
+
if (this.pendingSave) {
|
|
1131
|
+
this.pendingSave = false;
|
|
1132
|
+
this.saveStore();
|
|
1133
|
+
}
|
|
1134
|
+
}
|
|
1135
|
+
}
|
|
1136
|
+
console.log(`[CommitmentTracker] Auto-expiry sweep: scanned=${report.scanned} eligible=${report.eligible} expired=${report.expired} dryRun=${report.dryRun} maxAgeDays=${report.maxAgeDays} capped=${report.capped}`);
|
|
1137
|
+
return report;
|
|
1138
|
+
}
|
|
1048
1139
|
expireCommitments() {
|
|
1049
1140
|
const now = new Date().toISOString();
|
|
1050
1141
|
let changed = false;
|
|
@@ -1054,12 +1145,7 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
1054
1145
|
.filter(c => c.expiresAt && c.expiresAt < now && c.status !== 'expired' && c.status !== 'withdrawn')
|
|
1055
1146
|
.map(c => c.id);
|
|
1056
1147
|
for (const id of targets) {
|
|
1057
|
-
this.
|
|
1058
|
-
...c,
|
|
1059
|
-
status: 'expired',
|
|
1060
|
-
resolvedAt: now,
|
|
1061
|
-
resolution: 'Expired',
|
|
1062
|
-
}));
|
|
1148
|
+
this.expireSync(id, 'Expired', now);
|
|
1063
1149
|
changed = true;
|
|
1064
1150
|
const c = this.get(id);
|
|
1065
1151
|
if (c)
|
|
@@ -1069,6 +1155,43 @@ export class CommitmentTracker extends EventEmitter {
|
|
|
1069
1155
|
this.writeBehavioralRules();
|
|
1070
1156
|
}
|
|
1071
1157
|
}
|
|
1158
|
+
expireSync(id, reason, resolvedAt) {
|
|
1159
|
+
return this.mutateSync(id, c => ({
|
|
1160
|
+
...c,
|
|
1161
|
+
status: 'expired',
|
|
1162
|
+
resolvedAt,
|
|
1163
|
+
resolution: reason,
|
|
1164
|
+
}));
|
|
1165
|
+
}
|
|
1166
|
+
resolveAutoExpiryConfig() {
|
|
1167
|
+
return {
|
|
1168
|
+
enabled: this.config.autoExpiry?.enabled ?? true,
|
|
1169
|
+
maxAgeDays: this.positiveNumberOrDefault(this.config.autoExpiry?.maxAgeDays, DEFAULT_AUTO_EXPIRY_MAX_AGE_DAYS),
|
|
1170
|
+
sweepIntervalMs: this.positiveNumberOrDefault(this.config.autoExpiry?.sweepIntervalMs, DEFAULT_AUTO_EXPIRY_SWEEP_INTERVAL_MS),
|
|
1171
|
+
dryRun: this.config.autoExpiry?.dryRun ?? true,
|
|
1172
|
+
};
|
|
1173
|
+
}
|
|
1174
|
+
positiveNumberOrDefault(value, fallback) {
|
|
1175
|
+
return typeof value === 'number' && Number.isFinite(value) && value > 0 ? value : fallback;
|
|
1176
|
+
}
|
|
1177
|
+
isAutoExpiryEligible(commitment, now, maxAgeDays) {
|
|
1178
|
+
if (commitment.owner !== 'agent')
|
|
1179
|
+
return false;
|
|
1180
|
+
if (commitment.status !== 'pending' && commitment.status !== 'violated')
|
|
1181
|
+
return false;
|
|
1182
|
+
const createdAtMs = Date.parse(commitment.createdAt);
|
|
1183
|
+
if (!Number.isFinite(createdAtMs))
|
|
1184
|
+
return false;
|
|
1185
|
+
const ageMs = now.getTime() - createdAtMs;
|
|
1186
|
+
if (ageMs <= maxAgeDays * 24 * 60 * 60 * 1000)
|
|
1187
|
+
return false;
|
|
1188
|
+
if (commitment.hardDeadlineAt) {
|
|
1189
|
+
const hardDeadlineMs = Date.parse(commitment.hardDeadlineAt);
|
|
1190
|
+
if (Number.isFinite(hardDeadlineMs) && hardDeadlineMs > now.getTime())
|
|
1191
|
+
return false;
|
|
1192
|
+
}
|
|
1193
|
+
return true;
|
|
1194
|
+
}
|
|
1072
1195
|
// ── Single-writer mutation ─────────────────────────────────────
|
|
1073
1196
|
/**
|
|
1074
1197
|
* Single-writer mutate surface. Every write path routes through here so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommitmentTracker.js","sourceRoot":"","sources":["../../src/monitoring/CommitmentTracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CommitmentTracker.js","sourceRoot":"","sources":["../../src/monitoring/CommitmentTracker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-07-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-07-10T21:31:11.605Z",
|
|
5
|
+
"instarVersion": "1.3.804",
|
|
6
6
|
"entryCount": 202,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Commitment auto-expiry addresses the live backlog shape from 2026-07-10: 652 open commitments, 626 agent-owned and older than 7 days, mostly completed work that was never explicitly closed. `CommitmentTracker` now has a bounded periodic sweep controlled by `commitments.autoExpiry` (`enabled:true`, `maxAgeDays:21`, `sweepIntervalMs:21600000`, `dryRun:true` by default). It targets only old agent-owned open commitments, never `owner:"user"`, never young commitments, and never a commitment with an unmet future `hardDeadlineAt`. Eligible rows move through the existing terminal `expired` state with resolution `auto-expired: aged out >Nd, presumed completed-but-unclosed`.
|
|
9
|
+
|
|
10
|
+
The sweep copies the existing verify-sweep write discipline: every per-commitment transition marks the store dirty under `batchingSaves`, then flushes exactly one commitments-store write at the end. It is capped at 500 expirations per pass and logs one aggregate line per sweep (`scanned`, `eligible`, `expired`, `dryRun`, `maxAgeDays`, `capped`) rather than one line per row. Dry-run mode logs eligibility without mutating, so this release proves the candidate count and log shape before any cleanup is armed.
|
|
11
|
+
|
|
12
|
+
## What to Tell Your User
|
|
13
|
+
|
|
14
|
+
- Old agent-owned follow-up promises now have a cleanup path. By default the system only reports how many stale rows it would expire; when dry-run is later turned off, it will close old agent-owned commitments automatically instead of letting the backlog drown current promises.
|
|
15
|
+
- The cleanup is deliberately conservative: it never touches commitments owned by you, never touches recent commitments, and respects future hard deadlines. The first live cleanup after promotion is expected to catch the existing stale backlog in capped batches and report one aggregate count.
|
|
16
|
+
|
|
17
|
+
## Summary of New Capabilities
|
|
18
|
+
|
|
19
|
+
| Capability | How to Use |
|
|
20
|
+
|---|---|
|
|
21
|
+
| Commitment auto-expiry dry run | Config defaults enable the sweep in dry-run mode; watch the aggregate `CommitmentTracker` sweep log |
|
|
22
|
+
| Stale commitment cleanup promotion | Turn off `commitments.autoExpiry.dryRun` after reviewing dry-run counts; rows expire through the existing terminal `expired` state |
|
|
23
|
+
|
|
24
|
+
## Evidence
|
|
25
|
+
|
|
26
|
+
- Tier 1: `tests/unit/CommitmentTracker-auto-expiry.test.ts` (8 tests — old agent-owned pending expires; user-owned old row does not; young row does not; future hard deadline does not; dry-run logs without mutation; second sweep is idempotent; persistence coalesces to one store write; ConfigDefaults add-missing migration preserves operator choices).
|
|
27
|
+
- Tier 2: `tests/integration/commitment-auto-expiry-lifecycle.test.ts` (persist expired row, reload tracker, verify it is terminal/inactive and a second sweep changes zero rows).
|
|
28
|
+
- Tier 3: `tests/e2e/commitment-auto-expiry-api-lifecycle.test.ts` (real AgentServer commitments API: expired row disappears from active view but remains inspectable with the auto-expiry resolution).
|
|
29
|
+
- Regression sweep: `tests/unit/CommitmentTracker.test.ts`, `tests/unit/CommitmentTracker-verify-batches-saves.test.ts`, `tests/unit/ConfigDefaults.test.ts`, and `npx tsc --noEmit` are green.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# ELI16 — Commitment Auto-Expiry
|
|
2
|
+
|
|
3
|
+
## What Changed
|
|
4
|
+
|
|
5
|
+
The commitment tracker now has a quiet cleanup loop for old agent-owned commitments. If an agent promised to follow up, the promise stayed open forever unless another part of the system explicitly closed it. That was fine when there were a few commitments, but the live store now has hundreds of stale agent-owned rows that were probably completed weeks ago and never marked closed. The result is a backlog where the important current promises are mixed with old noise.
|
|
6
|
+
|
|
7
|
+
This change adds `commitments.autoExpiry`, enabled by default but shipped in `dryRun: true`. The default policy is simple: after 21 days, an open agent-owned commitment with no future hard deadline is eligible to move to the existing terminal `expired` state. User-owned commitments are never touched. Young commitments are never touched. A commitment with an unmet future hard deadline is never touched.
|
|
8
|
+
|
|
9
|
+
## Why It Is Safe
|
|
10
|
+
|
|
11
|
+
The cleanup uses the existing terminal status instead of inventing a new lifecycle. The sweep is bounded to 500 commitments per pass and uses the tracker's existing batched-save discipline, so a large first cleanup does not write the whole commitments file once per row. In dry-run mode it only logs the aggregate count it would expire.
|
|
12
|
+
|
|
13
|
+
The rollout is deliberately conservative. Existing agents receive the config defaults through the normal add-missing migration path, but `dryRun` remains true until an operator flips it. That means the first release proves the candidates and log shape before any live store mutation happens.
|
|
14
|
+
|
|
15
|
+
## How To Verify
|
|
16
|
+
|
|
17
|
+
The focused tests create old and young commitments, agent-owned and user-owned commitments, and future-deadline commitments. Only the old agent-owned open row expires. The dry-run test proves the row is not mutated. The idempotency test proves a second sweep over the same state changes zero rows. The write-coalescing test proves twelve expirations produce exactly one commitments-store write for the sweep.
|
|
18
|
+
|
|
19
|
+
Integration and e2e tests reload the tracker and hit the commitments API after expiry. The expired record is still inspectable, but it disappears from the active commitment view.
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# Side-Effects Review — Commitment auto-expiry
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `commitment-auto-expiry`
|
|
4
|
+
**Date:** `2026-07-10`
|
|
5
|
+
**Author:** `instar-codey`
|
|
6
|
+
**Second-pass reviewer:** `not required`
|
|
7
|
+
|
|
8
|
+
## Summary of the change
|
|
9
|
+
|
|
10
|
+
This change adds a bounded auto-expiry sweep to `src/monitoring/CommitmentTracker.ts`, configures it through top-level `commitments.autoExpiry`, and wires the server construction path to pass that config into the tracker. The sweep targets stale agent-owned open commitments only, uses the existing `expired` terminal state, preserves user-owned commitments, respects future hard deadlines, ships dry-run-first, and coalesces all per-commitment persistence into one store write per sweep. Tests cover unit, integration, and e2e paths.
|
|
11
|
+
|
|
12
|
+
## Decision-point inventory
|
|
13
|
+
|
|
14
|
+
- `CommitmentTracker.sweepAutoExpiry` — add — decides whether a commitment is eligible for terminal expiry based on owner, status, age, and future hard deadline.
|
|
15
|
+
- `CommitmentTracker.expire` / `expireSync` — add/modify — centralizes the existing expired-state transition so old `expiresAt` expiry and new auto-expiry use one terminal transition helper.
|
|
16
|
+
- `ConfigDefaults.commitments.autoExpiry` — add — defaults the sweep on, 21-day age, 6-hour cadence, dry-run true.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 1. Over-block
|
|
21
|
+
|
|
22
|
+
The only possible over-close shape is an old agent-owned open commitment that is still genuinely active but has no hard future deadline recorded. This is why the feature ships with `dryRun: true`: the first rollout logs aggregate eligibility without changing rows. The hard guardrails are also narrow: owner must be exactly `agent`, status must be open (`pending` or `violated`), age must exceed the configured threshold, and a future `hardDeadlineAt` blocks expiry.
|
|
23
|
+
|
|
24
|
+
User-owned commitments are never eligible. Young commitments are never eligible. Terminal commitments are never eligible.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 2. Under-block
|
|
29
|
+
|
|
30
|
+
The sweep intentionally misses stale commitments that are marked `verified`, because `verified` is treated as a non-open status for this cleanup even though some old stores may still show it in active-ish views. It also misses old user-owned commitments, old rows with malformed `createdAt`, and old rows with a future hard deadline even if that deadline is probably obsolete. Those are deliberate safety choices for the first rollout.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## 3. Level-of-abstraction fit
|
|
35
|
+
|
|
36
|
+
Correct layer. `CommitmentTracker` owns the lifecycle state, terminal status semantics, persistence batching, and active-record filtering. Putting the cleanup in an external job would either duplicate those invariants or risk writing the store by hand. The sweep is a mechanical lifecycle policy, not an LLM judgment; it uses explicit structured fields only.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 4. Signal vs authority compliance
|
|
41
|
+
|
|
42
|
+
- [x] No — this change has no block/allow surface.
|
|
43
|
+
|
|
44
|
+
The sweep does hold lifecycle authority over a narrow state transition, but it does not block a user, tool, message, or operation. It converts stale structured records to the existing terminal `expired` state. The first release runs in dry-run mode, and the live transition requires an operator config flip.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 5. Interactions
|
|
49
|
+
|
|
50
|
+
- **Existing `expiresAt` expiry:** still runs inside `verify()` and now routes through `expireSync`, preserving behavior while centralizing the terminal transition.
|
|
51
|
+
- **Write coalescing:** auto-expiry uses the same `batchingSaves` / `pendingSave` pattern documented for the verify sweep. A test asserts twelve expirations produce exactly one commitments-store write.
|
|
52
|
+
- **PromiseBeacon and active views:** expired commitments are terminal; existing active filters already exclude `expired`, so no new filtering contract is needed.
|
|
53
|
+
- **Startup timing:** an initial sweep is scheduled shortly after tracker start, then every configured interval. `stop()` clears both the initial timeout and recurring interval.
|
|
54
|
+
- **Dry-run logs:** the sweep emits one aggregate log line per pass. It does not log per commitment.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## 6. External surfaces
|
|
59
|
+
|
|
60
|
+
- **Config:** new top-level `commitments.autoExpiry` block: `enabled`, `maxAgeDays`, `sweepIntervalMs`, `dryRun`.
|
|
61
|
+
- **Persistent state:** when `dryRun:false`, eligible commitments move to `status:"expired"` with resolution `auto-expired: aged out >Nd, presumed completed-but-unclosed`.
|
|
62
|
+
- **API reads:** active commitment API views shrink after expiry because they already exclude terminal expired rows. Individual records remain inspectable.
|
|
63
|
+
- **Operator surface:** no new operator action or dashboard form. Operators can tune the config through the existing config path.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## 6b. Operator-surface quality
|
|
68
|
+
|
|
69
|
+
No operator surface — not applicable.
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## 7. Multi-machine posture (Cross-Machine Coherence)
|
|
74
|
+
|
|
75
|
+
**Replicated when commitments replication is enabled, otherwise local to the agent store.** The sweep mutates the canonical commitments store through the tracker transition path, so the existing Commitments Coherence replication machinery sees the same terminal-state mutation as any other commitment lifecycle change. It emits no user-facing notices, generates no URLs, and holds no machine-specific runtime state beyond timer handles. If multiple machines run the same agent with replicated commitments, the first machine to expire a row moves it terminal and later sweeps see it as ineligible, making the operation idempotent.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## 8. Rollback cost
|
|
80
|
+
|
|
81
|
+
Low. The shipped default is dry-run, so rollback before promotion is a code/config revert with no data repair. After a future `dryRun:false` promotion, rollback stops future expiry but does not reopen already-expired commitments; that is acceptable because the transition is intentionally terminal and inspectable. If an operator needs to reverse a specific row, they can use existing commitment mutation tools rather than a schema migration.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Conclusion
|
|
86
|
+
|
|
87
|
+
The change directly addresses commitment backlog rot while preserving the safety floor: dry-run-first rollout, strict owner/age/deadline eligibility, one aggregate log line, bounded 500-row passes, and exactly one store write per sweep. No material side-effect concern remains for the initial dry-run release.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Second-pass review (if required)
|
|
92
|
+
|
|
93
|
+
**Reviewer:** not required
|
|
94
|
+
**Independent read of the artifact:** not required for this Tier-1 dry-run-first lifecycle cleanup.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Evidence pointers
|
|
99
|
+
|
|
100
|
+
- `npx tsc --noEmit`
|
|
101
|
+
- `npx vitest run tests/unit/CommitmentTracker-auto-expiry.test.ts tests/integration/commitment-auto-expiry-lifecycle.test.ts tests/e2e/commitment-auto-expiry-api-lifecycle.test.ts`
|
|
102
|
+
- `npx vitest run tests/unit/CommitmentTracker.test.ts tests/unit/CommitmentTracker-verify-batches-saves.test.ts tests/unit/ConfigDefaults.test.ts`
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Class-Closure Declaration (display-only mirror)
|
|
107
|
+
|
|
108
|
+
No agent-authored-artifact defect — not applicable. The new self-triggered loop has an explicit convergence bound: disabled by config, dry-run by default, one initial timeout plus one recurring interval, max 500 state transitions per pass, one aggregate log line, no per-item user-facing output, and one coalesced persistence write per sweep. Guard evidence: `tests/unit/CommitmentTracker-auto-expiry.test.ts` covers dry-run zero mutation, idempotent second sweep, and one-write batching.
|