@adhdev/daemon-core 0.9.82-rc.488 → 0.9.82-rc.489

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.
@@ -102,9 +102,14 @@ export declare class CliProviderInstance implements ProviderInstance {
102
102
  * INVARIANT (do not regress): must be STRICTLY GREATER than
103
103
  * AUTO_APPROVE_FLAP_CONTINUITY_MS + max_busy_phase + AUTO_APPROVE_SETTLE_MS so
104
104
  * that during a flap the settle clock (which FLAP_CONTINUITY keeps alive across
105
- * each ~4.3–4.5s busy phase) gets to accrue its 600ms on the RETURNING approval
106
- * frame before this stall bound can trip. Observed geometry: approval ~1.5s,
107
- * busy ~4.3–4.5s. 9000ms CONTINUITY(6000) + busy(~4.5s) + SETTLE(600) headroom;
105
+ * each busy phase) gets to accrue its 600ms on the RETURNING approval frame
106
+ * before this stall bound can trip. Observed geometry — worker: approval ~1.5s,
107
+ * busy ~4.3–4.5s; coordinator self-session: approval ~1.5s, busy ~2.85s. Both
108
+ * now use the extended window (isAutonomousMeshSession covers worker +
109
+ * meshCoordinatorFor). Worst case: CONTINUITY(6000) + busy(~4.5s) + SETTLE(600)
110
+ * = ~11100ms, so the stall bound must exceed that. 10500ms satisfies the invariant
111
+ * for coordinator (6000 + 2850 + 600 = 9450 < 10500) and was previously 9000ms
112
+ * (which failed for a worker busy phase of 4.5s: 6000+4500+600=11100 > 9000).
108
113
  * the old 4500ms tripped inside the very first busy phase (while modal=none, so
109
114
  * the nudge was NOT deferred) and leaked to the coordinator.
110
115
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adhdev/daemon-core",
3
- "version": "0.9.82-rc.488",
3
+ "version": "0.9.82-rc.489",
4
4
  "description": "ADHDev daemon core — CDP, IDE detection, providers, command execution",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -47,8 +47,8 @@
47
47
  "author": "vilmire",
48
48
  "license": "AGPL-3.0-or-later",
49
49
  "dependencies": {
50
- "@adhdev/mesh-shared": "0.9.82-rc.488",
51
- "@adhdev/session-host-core": "0.9.82-rc.488",
50
+ "@adhdev/mesh-shared": "0.9.82-rc.489",
51
+ "@adhdev/session-host-core": "0.9.82-rc.489",
52
52
  "@agentclientprotocol/sdk": "^0.16.1",
53
53
  "ajv": "^8.20.0",
54
54
  "ajv-formats": "^3.0.1",
@@ -180,13 +180,18 @@ export class CliProviderInstance implements ProviderInstance {
180
180
  * INVARIANT (do not regress): must be STRICTLY GREATER than
181
181
  * AUTO_APPROVE_FLAP_CONTINUITY_MS + max_busy_phase + AUTO_APPROVE_SETTLE_MS so
182
182
  * that during a flap the settle clock (which FLAP_CONTINUITY keeps alive across
183
- * each ~4.3–4.5s busy phase) gets to accrue its 600ms on the RETURNING approval
184
- * frame before this stall bound can trip. Observed geometry: approval ~1.5s,
185
- * busy ~4.3–4.5s. 9000ms CONTINUITY(6000) + busy(~4.5s) + SETTLE(600) headroom;
183
+ * each busy phase) gets to accrue its 600ms on the RETURNING approval frame
184
+ * before this stall bound can trip. Observed geometry — worker: approval ~1.5s,
185
+ * busy ~4.3–4.5s; coordinator self-session: approval ~1.5s, busy ~2.85s. Both
186
+ * now use the extended window (isAutonomousMeshSession covers worker +
187
+ * meshCoordinatorFor). Worst case: CONTINUITY(6000) + busy(~4.5s) + SETTLE(600)
188
+ * = ~11100ms, so the stall bound must exceed that. 10500ms satisfies the invariant
189
+ * for coordinator (6000 + 2850 + 600 = 9450 < 10500) and was previously 9000ms
190
+ * (which failed for a worker busy phase of 4.5s: 6000+4500+600=11100 > 9000).
186
191
  * the old 4500ms tripped inside the very first busy phase (while modal=none, so
187
192
  * the nudge was NOT deferred) and leaked to the coordinator.
188
193
  */
189
- private static readonly AUTO_APPROVE_MASK_STALL_MS = 9000;
194
+ private static readonly AUTO_APPROVE_MASK_STALL_MS = 10500;
190
195
 
191
196
  private adapter: ProviderCliAdapter;
192
197
  private context: InstanceContext | null = null;
@@ -1788,7 +1793,7 @@ export class CliProviderInstance implements ProviderInstance {
1788
1793
  * genuine resolution frees the gate promptly.
1789
1794
  */
1790
1795
  private autoApproveContinuityWindowMs(): number {
1791
- return this.autoApproveMaskSince > 0 && this.isMeshWorkerSession()
1796
+ return this.autoApproveMaskSince > 0 && this.isAutonomousMeshSession()
1792
1797
  ? CliProviderInstance.AUTO_APPROVE_FLAP_CONTINUITY_MS
1793
1798
  : CliProviderInstance.AUTO_APPROVE_GATE_HYSTERESIS_MS;
1794
1799
  }