@miller-tech/uap 1.51.0 → 1.52.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,OAAO,GACP,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AACb,KAAK,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnD,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAGD,eAAO,MAAM,WAAW,EAAE,WAAW,EAUpC,CAAC;AAcF,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBjG;AA+7CD,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;AACvD,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAUD,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,CAqFzE"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,OAAO,GACP,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AACb,KAAK,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnD,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAGD,eAAO,MAAM,WAAW,EAAE,WAAW,EAUpC,CAAC;AAcF,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBjG;AAm8CD,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;AACvD,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAUD,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,CAqFzE"}
package/dist/cli/hooks.js CHANGED
@@ -76,6 +76,9 @@ function copyHookScripts(targetHooksDir) {
76
76
  'session-start.sh',
77
77
  'pre-compact.sh',
78
78
  'pre-tool-use-edit-write.sh',
79
+ // Helper sourced by the edit hook: announce file edits + detect live
80
+ // overlaps in the shared coordination DB. Must co-locate with the edit hook.
81
+ 'coordinate-file.sh',
79
82
  'pre-tool-use-bash.sh',
80
83
  'post-tool-use-edit-write.sh',
81
84
  'post-compact.sh',
@@ -1004,6 +1007,7 @@ async function installOmpHooks(cwd) {
1004
1007
  'session-start.sh',
1005
1008
  'pre-compact.sh',
1006
1009
  'pre-tool-use-edit-write.sh',
1010
+ 'coordinate-file.sh',
1007
1011
  'pre-tool-use-bash.sh',
1008
1012
  'uap-policy-gate.sh',
1009
1013
  'loop-protection.sh',
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"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"}
package/docs/INDEX.md CHANGED
@@ -62,7 +62,9 @@ New here? Start with the [project README](../README.md), then [Getting Started](
62
62
 
63
63
  | Doc | What it covers |
64
64
  |---|---|
65
- | [**TBench Investigation**](benchmarks/TBENCH_INVESTIGATION.md) | Rigorous findings: no measurable UAP-context lift (every gain was a confound), methodology lessons, and the improvement plan ⭐ |
65
+ | [**Paired Findings**](benchmarks/PAIRED_FINDINGS.md) | Controlled A/B results: UAP gate value is +20pp vs a non-agentic baseline [CI +8,+32], ~0pp vs an agentic one — with confidence intervals ⭐ |
66
+ | [Paired Harness](benchmarks/PAIRED_HARNESS.md) | The `uap bench paired` controlled-A/B harness: design, adapters (mock/opencode/claude/raw), authoring tasks |
67
+ | [TBench Investigation](benchmarks/TBENCH_INVESTIGATION.md) | Earlier finding: no measurable UAP-context lift (every uncontrolled gain was a confound), methodology lessons |
66
68
  | [Validation Results](benchmarks/VALIDATION_RESULTS.md) | Terminal-Bench 2.0 results (−49.7% tokens, +33pp success) |
67
69
  | [Token Optimization](benchmarks/TOKEN_OPTIMIZATION.md) | Where the token savings come from |
68
70
  | [Accuracy Analysis](benchmarks/ACCURACY_ANALYSIS.md) | Success-rate and error analysis |
@@ -190,8 +190,15 @@ mechanism behind UAP's "agents stop declaring victory on broken code." See the
190
190
 
191
191
  Lets multiple agents work the same repo without colliding. A singleton SQLite
192
192
  DB (`database.ts`) backs an agent registry, work announcements, work claims,
193
- inter-agent messages, and a deploy queue. `service.ts` detects **overlap** when
194
- agents announce work on the same files and suggests merge order;
193
+ inter-agent messages, and a deploy queue. The DB is **shared across all
194
+ worktrees** (resolved via `git --git-common-dir` to the main worktree), so agents
195
+ in different `.worktrees/` see each other. Coordination is **always-on, not
196
+ advisory**: `session-start.sh` auto-registers every agent (+ heartbeat), and the
197
+ pre-edit hook (`coordinate-file.sh`) announces each file edit and **blocks** when
198
+ another *live* agent (heartbeat < 120s) is editing the same repo-relative path,
199
+ warning + self-healing stale announcements otherwise; `session-end.sh` reaps only
200
+ stale state so one agent ending never wipes live peers. `service.ts` detects
201
+ **overlap** when agents announce work on the same files and suggests merge order;
195
202
  `deploy-batcher.ts` queues git/CI actions with per-type batch windows
196
203
  (commit 30s, push 5s, merge 10s, deploy 60s), folds/squashes similar pending
197
204
  actions, and executes batches sequentially or in parallel.
@@ -236,6 +243,20 @@ real-time updates.
236
243
  Emits HALO / OpenInference spans for delivery runs and tool calls, consumed by
237
244
  `uap harness analyze` to optimize agent execution from real traces.
238
245
 
246
+ ### Benchmark harness (`src/benchmarks/paired/`)
247
+
248
+ A controlled paired-A/B harness (`uap bench paired`) for measuring UAP's impact
249
+ without confounds. It holds the base model + agent constant and toggles **only**
250
+ the UAP scaffold over the same real-gate task suite and seeds, reporting a vector
251
+ of paired deltas (correctness + tokens/turns/latency) with bootstrap confidence
252
+ intervals, a McNemar gate-value 2×2, and per-component leave-one-out ablation.
253
+ Pluggable `AgentAdapter`s drive the agent under test: `opencode`/`claude`
254
+ subprocess adapters, a deterministic `mock`, and a non-agentic `raw`
255
+ single-shot-vs-gate-loop adapter that isolates gate value. Ground truth is a
256
+ deterministic per-task `verifyCmd` (no LLM judge). The headline result lives in
257
+ [benchmarks/PAIRED_FINDINGS.md](../benchmarks/PAIRED_FINDINGS.md): UAP gate value
258
+ is **+20pp** over a non-agentic baseline and **~0pp** over an agentic one.
259
+
239
260
  ---
240
261
 
241
262
  ## How a tool call flows: memory → policy → MCP Router
@@ -0,0 +1,147 @@
1
+ # Paired Benchmark Findings — When Does UAP Actually Help?
2
+
3
+ Results from the controlled paired harness (`uap bench paired`, see
4
+ [PAIRED_HARNESS.md](PAIRED_HARNESS.md)). These supersede earlier uncontrolled
5
+ numbers and complete the story the [TBench Investigation](TBENCH_INVESTIGATION.md)
6
+ started: every "UAP lift" measured without a controlled baseline turned out to be
7
+ a confound. This is the rigorous version — same model, same tasks, same seeds,
8
+ toggling **only** the UAP layer, with bootstrap confidence intervals on every
9
+ delta.
10
+
11
+ ## TL;DR
12
+
13
+ > **UAP's accuracy lift depends entirely on whether the base agent already
14
+ > self-verifies.** Against a strong agentic harness (opencode, which runs the
15
+ > tests itself), UAP adds overhead with **no measurable accuracy gain**. Against
16
+ > a non-agentic single-shot model, UAP's gate loop delivers **+20pp accuracy**
17
+ > (78% → 98%, 95% CI [+8, +32], p=0.008) by catching and repairing edge-case
18
+ > bugs the model ships in one shot.
19
+
20
+ | Baseline type | UAP accuracy lift | What this means |
21
+ |---|---|---|
22
+ | **Agentic** (opencode self-tests) | **~0pp** (CI spans 0) | gate is redundant; cost is pure overhead |
23
+ | **Non-agentic** (raw single-shot) | **+20pp** [CI +8, +32] | gate loop rescues failures the model can't self-catch |
24
+
25
+ The headline implication: **UAP's gate value is real and large, but only over a
26
+ baseline that doesn't already loop** — which is exactly the `uap deliver`
27
+ (model-wrapping) case. When you are already driving a capable agentic harness,
28
+ UAP's contribution shifts from *accuracy* to *efficiency, coordination, and
29
+ never-regress*.
30
+
31
+ ## The experiments
32
+
33
+ Five controlled runs against `ik-llama/qwen36-35b-a3b-iq4xs` (a 35B-A3B MoE).
34
+ All paired, all with deterministic ground-truth `verifyCmd` scorers (no LLM
35
+ judge). Metrics reported as a vector — correctness **and** tokens/turns/latency —
36
+ each as a paired delta with a 95% bootstrap CI and a sign-flip permutation
37
+ p-value. Correctness deltas additionally get a McNemar 2×2 ("fixed" vs
38
+ "regressed").
39
+
40
+ ### 1–3. Agentic baseline (opencode adapter)
41
+
42
+ | Run | Suite | Design | baseline → uap-full | Token Δ |
43
+ |---|---|---|---|---|
44
+ | 1 | real-gate (easy) | 2 tasks × 2 × 6 | 100% → 100% | +34.2k |
45
+ | 2 | real-gate-hard | 6 tasks × 8-arm ablation × 4 | 100% → 100% | +48.7k [13.9k, 93.3k] |
46
+ | 3 | real-gate-gated | 5 edge-case tasks × 8-arm ablation × 4 | 100% → 100% | +25.2k (n.s.) |
47
+
48
+ In every agentic run the **baseline already scored 100%** — there was no headroom
49
+ for UAP to improve accuracy. The per-component ablation (turning off gates /
50
+ worktree / memory / experts / skills / patterns one at a time) found **no
51
+ component with a Δsuccess confidence interval above zero**; the token deltas only
52
+ rank overhead.
53
+
54
+ **Root cause:** opencode is itself an agentic harness that runs the in-repo
55
+ tests and self-corrects by default. The UAP gate instruction is redundant on top
56
+ of an agent that already self-verifies — and adding in-repo tests to give the
57
+ "gate" something to run handed the same self-verification to the *baseline*.
58
+
59
+ ### 4. Non-agentic baseline (raw single-shot vs gate loop) — the decisive run
60
+
61
+ To isolate **gate value**, the `raw` adapter calls the model's completion
62
+ endpoint directly:
63
+
64
+ - **baseline** = one completion, no self-check (whatever it writes is final)
65
+ - **uap-full** = execute → run the visible in-repo gate → feed the failure back
66
+ → regenerate, looping until the gate passes (the `uap deliver` mechanism in
67
+ miniature)
68
+
69
+ 5 edge-case tasks × {single-shot, gate-loop} × 10 epochs, temperature 0.6
70
+ (so the first shot sometimes misses edges):
71
+
72
+ | Condition | Success | Errors | Tokens | Turns |
73
+ |---|--:|--:|--:|--:|
74
+ | baseline (single-shot) | **78.0%** | 22% | 1,170 | 1.0 |
75
+ | uap-full (gate loop) | **98.0%** | 2% | 2,242 | 1.3 |
76
+
77
+ - **Correctness: +20.0pp** — 95% CI **[+8.0, +32.0]**, p=0.008 ✅
78
+ - **Gate value (McNemar):** 11 fixed, 1 regressed, **net +10** (p=0.006)
79
+ - **Cost:** +1,072 tokens, +0.3 turns per task — cheap for a 20-point gain
80
+
81
+ When the baseline can't self-verify, it ships edge-case bugs 22% of the time. The
82
+ gate loop catches and repairs 11 of them, cutting the error rate to 2%. The one
83
+ "regressed" case is the honest caveat — once, the loop's rewrite broke something
84
+ single-shot happened to get right.
85
+
86
+ ## What the tasks look like
87
+
88
+ Findings only hold if the tasks have real headroom. The `real-gate-gated` suite
89
+ was built so the **obvious solution passes the happy path but fails hidden edge
90
+ cases**, and validated before any run: for every task the stub fails, a correct
91
+ reference passes, **and a naive happy-path solution fails the hidden verify**.
92
+
93
+ | Task | Happy-path trap | Hidden edge the gate must catch |
94
+ |---|---|---|
95
+ | `py-roman-strict` | sum the symbols | reject invalid numerals (`IIII`, `VV`, `IL`) |
96
+ | `js-csv-parse` | `split(',')` | quoted commas, escaped `""`, CRLF, trailing newline |
97
+ | `js-deep-equal` | `JSON.stringify` compare | `NaN`, key order, `{a:undefined}` vs `{}` |
98
+ | `py-parse-duration` | single-unit only | combined `1h30m15s`, raise on invalid |
99
+ | `py-merge-intervals` | assume sorted, strict overlap | unsorted input, touching `[1,2],[2,3]→[1,3]` |
100
+
101
+ Each ships an in-repo test suite (the *visible* gate, `task.gateCmd`) distinct
102
+ from the hidden superset `verifyCmd` that remains the authoritative scorer.
103
+
104
+ ## Methodology notes (and honest caveats)
105
+
106
+ - **Paired design** removes between-task variance — the dominant noise source.
107
+ Deltas are bootstrap CIs (10k resamples, seeded for reproducibility) + a
108
+ sign-flip permutation test. Single-arm point estimates are never claims.
109
+ - **Small N + a single shared GPU.** Token/latency CIs are wide and latency is
110
+ confounded by request queueing on one GPU; read the *correctness* and *token*
111
+ deltas, not absolute latency. The +20pp result holds with N=50/arm and a CI
112
+ that excludes zero, but it is one model on five tasks — directional, not a
113
+ universal constant.
114
+ - **Ceiling effect** is why the agentic runs show 0pp: a 35B model in an
115
+ agentic harness simply solves these self-contained algorithmic tasks. A weaker
116
+ model, or genuinely harder multi-file tasks, would re-open headroom.
117
+ - **Harness reliability:** an early ablation wedged for ~50 min because
118
+ `spawnSync`'s timeout only SIGTERMs the immediate child while opencode forks a
119
+ detached tree that keeps the pipe open. Fixed with a detached process-group
120
+ spawn + group SIGKILL; subsequent runs completed 158–190/192 cleanly.
121
+
122
+ ## Reproduce
123
+
124
+ ```bash
125
+ # The decisive gate-value experiment (raw single-shot vs gate loop):
126
+ UAP_RAW_TEMPERATURE=0.6 uap bench paired \
127
+ --adapter raw --model "<model-served-name>" \
128
+ --suite benchmarks/suites/real-gate-gated \
129
+ --epochs 10 --concurrency 3
130
+
131
+ # Agentic baseline + per-component ablation:
132
+ uap bench paired --adapter opencode --model <provider/model> \
133
+ --suite benchmarks/suites/real-gate-hard --ablation --epochs 4
134
+ ```
135
+
136
+ Artifacts (`records.jsonl`, `report.json`, `report.md`) land in
137
+ `benchmark-results/paired-<timestamp>/`. See [PAIRED_HARNESS.md](PAIRED_HARNESS.md)
138
+ for the harness internals, adapters, and how to author a task.
139
+
140
+ ## Bottom line
141
+
142
+ The accuracy-lift hypothesis is **falsified for the agentic-vs-agentic case** and
143
+ **confirmed for the non-agentic case**. Use UAP's gate loop (`uap deliver`) when
144
+ wrapping a model that won't self-verify — that is where the measurable accuracy
145
+ win lives. When you already run a strong agentic harness, value UAP for its
146
+ efficiency (token savings), coordination (multi-agent file safety), and
147
+ never-regress guarantees, not for first-pass accuracy.
@@ -1,10 +1,26 @@
1
1
  # UAP Benchmarks
2
2
 
3
- Performance and accuracy results for the Universal Agent Protocol, measured on Terminal-Bench 2.0.
3
+ Performance and accuracy results for the Universal Agent Protocol.
4
4
 
5
- ## Headline results
5
+ ## Controlled paired result (start here)
6
6
 
7
- UAP-on vs. baseline, 12 representative tasks across 8 categories:
7
+ The rigorous, reproducible finding from the [paired harness](PAIRED_HARNESS.md)
8
+ — same model, same tasks, same seeds, toggling **only** UAP, with confidence
9
+ intervals:
10
+
11
+ > **UAP's accuracy lift depends on whether the base agent already self-verifies.**
12
+ > Vs an agentic harness that self-tests → **~0pp** (overhead only). Vs a
13
+ > non-agentic single-shot model → **+20pp** (78% → 98%, 95% CI [+8, +32],
14
+ > p=0.008) from the gate loop repairing edge-case bugs.
15
+
16
+ Full analysis with all five experiments: **[Paired Findings](PAIRED_FINDINGS.md)**.
17
+
18
+ ## Earlier (uncontrolled) Terminal-Bench numbers
19
+
20
+ UAP-on vs. baseline, 12 representative tasks across 8 categories. These are
21
+ *uncontrolled* — the [TBench Investigation](TBENCH_INVESTIGATION.md) found the
22
+ apparent lifts were largely confounds; treat the paired results above as
23
+ authoritative.
8
24
 
9
25
  | Metric | Baseline | With UAP | Δ |
10
26
  |---|---|---|---|
@@ -17,10 +33,12 @@ UAP-on vs. baseline, 12 representative tasks across 8 categories:
17
33
 
18
34
  | Doc | What it covers |
19
35
  |---|---|
36
+ | [**Paired Findings**](PAIRED_FINDINGS.md) | Controlled results: when UAP helps (+20pp vs non-agentic; ~0pp vs agentic), with CIs ⭐ |
37
+ | [Paired Harness](PAIRED_HARNESS.md) | The `uap bench paired` A/B harness: design, adapters, authoring tasks |
38
+ | [TBench Investigation](TBENCH_INVESTIGATION.md) | Earlier finding: uncontrolled "lifts" were confounds |
20
39
  | [Validation Results](VALIDATION_RESULTS.md) | Full methodology + per-task breakdown |
21
40
  | [Token Optimization](TOKEN_OPTIMIZATION.md) | Where the token savings come from |
22
41
  | [Accuracy Analysis](ACCURACY_ANALYSIS.md) | Success-rate and error analysis |
23
42
  | [Comprehensive Benchmarks](COMPREHENSIVE_BENCHMARKS.md) | Extended measurements |
24
- | [Paired Harness](PAIRED_HARNESS.md) | Controlled UAP-on vs UAP-off A/B: `uap bench paired` |
25
43
 
26
44
  See the [documentation index](../INDEX.md) for the rest of the docs.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miller-tech/uap",
3
- "version": "1.51.0",
3
+ "version": "1.52.1",
4
4
  "description": "Autonomous AI agent memory system with CLAUDE.md protocol enforcement",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -0,0 +1,94 @@
1
+ #!/usr/bin/env bash
2
+ # UAP file-coordination helper — announce a file edit to the SHARED coordination
3
+ # DB and detect live overlaps so independently-launched agents never silently
4
+ # clobber the same file (merge conflicts / wasted work).
5
+ #
6
+ # Called by pre-tool-use-edit-write.sh for real worktree source edits.
7
+ #
8
+ # Usage: coordinate-file.sh <COORD_DB> <AGENT_ID> <AGENT_NAME> <WORKTREE_BRANCH> <REL_PATH> <ABS_PATH>
9
+ #
10
+ # Resource key is the REPO-RELATIVE path so the same logical file edited from two
11
+ # different worktrees collides (that IS the future merge conflict).
12
+ #
13
+ # Exit 0 = allow (no conflict, or only a stale/self-healed announcement → warn).
14
+ # Exit 2 = BLOCK: another LIVE agent (heartbeat < THRESHOLD) holds this file.
15
+ #
16
+ # Always fails OPEN: any missing dependency or DB error allows the edit. This
17
+ # hook must never break editing because coordination is unavailable.
18
+ set -uo pipefail
19
+
20
+ DB="${1:-}"
21
+ ME="${2:-}"
22
+ NAME="${3:-agent}"
23
+ WT="${4:-}"
24
+ REL="${5:-}"
25
+ ABS="${6:-}"
26
+
27
+ # Seconds since another agent's last heartbeat for it to count as "live".
28
+ THRESHOLD="${UAP_COORD_LIVE_SECONDS:-120}"
29
+
30
+ # Fail open on any missing prerequisite.
31
+ command -v sqlite3 >/dev/null 2>&1 || exit 0
32
+ [ -n "$DB" ] && [ -f "$DB" ] || exit 0
33
+ [ -n "$ME" ] && [ -n "$REL" ] || exit 0
34
+
35
+ # SQL-escape single quotes.
36
+ q() { printf '%s' "${1:-}" | sed "s/'/''/g"; }
37
+ MEq=$(q "$ME"); NAMEq=$(q "$NAME"); WTq=$(q "$WT"); RELq=$(q "$REL"); ABSq=$(q "$ABS")
38
+
39
+ # 1) Detect a conflicting announcement from ANOTHER agent on the same resource,
40
+ # BEFORE we announce our own (so we never self-detect). Classify live vs stale
41
+ # by the other agent's last heartbeat (fall back to the announcement time when
42
+ # the agent row is absent).
43
+ LIVE=$(sqlite3 "$DB" "
44
+ SELECT wa.agent_name || ' (' || wa.agent_id || ')'
45
+ FROM work_announcements wa
46
+ LEFT JOIN agent_registry ar ON ar.id = wa.agent_id
47
+ WHERE wa.resource = '$RELq'
48
+ AND wa.agent_id <> '$MEq'
49
+ AND wa.completed_at IS NULL
50
+ AND COALESCE(ar.status, 'active') = 'active'
51
+ AND (strftime('%s','now') - strftime('%s', COALESCE(ar.last_heartbeat, wa.announced_at))) < $THRESHOLD
52
+ ORDER BY wa.announced_at DESC LIMIT 1;" 2>/dev/null || true)
53
+
54
+ STALE=$(sqlite3 "$DB" "
55
+ SELECT wa.agent_name || ' (' || wa.agent_id || ')'
56
+ FROM work_announcements wa
57
+ LEFT JOIN agent_registry ar ON ar.id = wa.agent_id
58
+ WHERE wa.resource = '$RELq'
59
+ AND wa.agent_id <> '$MEq'
60
+ AND wa.completed_at IS NULL
61
+ AND (strftime('%s','now') - strftime('%s', COALESCE(ar.last_heartbeat, wa.announced_at))) >= $THRESHOLD
62
+ ORDER BY wa.announced_at DESC LIMIT 1;" 2>/dev/null || true)
63
+
64
+ # 2) Live conflict → block. Do NOT announce (our edit won't happen).
65
+ if [ -n "$LIVE" ]; then
66
+ echo "{\"decision\":\"block\",\"reason\":\"COORDINATION: ${LIVE} is currently editing ${REL} (live agent). Editing it now risks a merge conflict. Coordinate via 'uap agent overlaps --resource ${REL}', pick a different file, or wait for them to finish.\"}" >&2
67
+ exit 2
68
+ fi
69
+
70
+ # 3) No live conflict → announce our intent (idempotent per open resource).
71
+ EXISTS=$(sqlite3 "$DB" "SELECT 1 FROM work_announcements WHERE agent_id='$MEq' AND resource='$RELq' AND completed_at IS NULL LIMIT 1;" 2>/dev/null || true)
72
+ if [ -z "$EXISTS" ]; then
73
+ sqlite3 "$DB" "INSERT INTO work_announcements
74
+ (agent_id, agent_name, worktree_branch, intent_type, resource, description, files_affected, announced_at)
75
+ VALUES ('$MEq', '$NAMEq', '$WTq', 'editing', '$RELq', NULL, '[\"$ABSq\"]', datetime('now'));" 2>/dev/null || true
76
+ else
77
+ sqlite3 "$DB" "UPDATE work_announcements SET announced_at=datetime('now')
78
+ WHERE agent_id='$MEq' AND resource='$RELq' AND completed_at IS NULL;" 2>/dev/null || true
79
+ fi
80
+
81
+ # 4) Stale overlap (crashed/idle agent) → warn but allow; self-heal by completing
82
+ # the stale announcement so it stops nagging.
83
+ if [ -n "$STALE" ]; then
84
+ echo "COORDINATION WARNING: ${STALE} has a stale open announcement on ${REL}; proceeding. If they are still active, coordinate to avoid conflicts." >&2
85
+ sqlite3 "$DB" "UPDATE work_announcements SET completed_at=datetime('now')
86
+ WHERE resource='$RELq' AND agent_id<>'$MEq' AND completed_at IS NULL
87
+ AND agent_id IN (
88
+ SELECT wa.agent_id FROM work_announcements wa
89
+ LEFT JOIN agent_registry ar ON ar.id = wa.agent_id
90
+ WHERE (strftime('%s','now') - strftime('%s', COALESCE(ar.last_heartbeat, wa.announced_at))) >= $THRESHOLD
91
+ );" 2>/dev/null || true
92
+ fi
93
+
94
+ exit 0