@spinabot/brigade 1.16.0 → 1.17.0

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":"ws-subscription-filter.d.ts","sourceRoot":"","sources":["../../src/core/ws-subscription-filter.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,SAAS;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,EAC1C,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,EAC5C,IAAI,EAAE,SAAS,GACb,OAAO,CAOT;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAO5D"}
1
+ {"version":3,"file":"ws-subscription-filter.d.ts","sourceRoot":"","sources":["../../src/core/ws-subscription-filter.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,SAAS;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,EAC1C,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,EAC5C,IAAI,EAAE,SAAS,GACb,OAAO,CAkBT;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAO5D"}
@@ -20,8 +20,19 @@ export function shouldDeliverFrame(agentSubs, sessionSubs, tags) {
20
20
  return true;
21
21
  if (agentId && agentSubs?.has(agentId))
22
22
  return true;
23
- if (sessionId && sessionSubs?.has(sessionId))
24
- return true;
23
+ if (sessionId && sessionSubs) {
24
+ // Exact match OR a sub-agent DESCENDANT session. A spawned sub-agent runs
25
+ // under a child key (`<parent>:subagent:<id>`, see routing/session-key.ts),
26
+ // so its pi frames + approval prompts must still reach the operator
27
+ // watching the parent turn — otherwise sub-agent activity is invisible and
28
+ // its `bash` approval prompt never surfaces (the turn then hangs on the
29
+ // approval timeout). The trailing ":" stops a sibling like `…:main2` from
30
+ // matching `…:main`.
31
+ for (const sub of sessionSubs) {
32
+ if (sessionId === sub || sessionId.startsWith(`${sub}:`))
33
+ return true;
34
+ }
35
+ }
25
36
  return false;
26
37
  }
27
38
  /** Cheap discriminator: pulls optional agentId/sessionId off a payload. */
@@ -1 +1 @@
1
- {"version":3,"file":"ws-subscription-filter.js","sourceRoot":"","sources":["../../src/core/ws-subscription-filter.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,0EAA0E;AAC1E,yEAAyE;AACzE,uEAAuE;AACvE,qEAAqE;AACrE,EAAE;AACF,yEAAyE;AACzE,yEAAyE;AACzE,0EAA0E;AAC1E,0EAA0E;AAC1E,uEAAuE;AACvE,sEAAsE;AAOtE,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CACjC,SAA0C,EAC1C,WAA4C,EAC5C,IAAe;IAEf,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,OAAO,IAAI,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,SAAS,IAAI,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,OAAO,KAAK,CAAC;AACd,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAChD,MAAM,GAAG,GAAG,OAA4D,CAAC;IACzE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAChE,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QAAE,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IACtE,OAAO,IAAI,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"ws-subscription-filter.js","sourceRoot":"","sources":["../../src/core/ws-subscription-filter.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,0EAA0E;AAC1E,yEAAyE;AACzE,uEAAuE;AACvE,qEAAqE;AACrE,EAAE;AACF,yEAAyE;AACzE,yEAAyE;AACzE,0EAA0E;AAC1E,0EAA0E;AAC1E,uEAAuE;AACvE,sEAAsE;AAOtE,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CACjC,SAA0C,EAC1C,WAA4C,EAC5C,IAAe;IAEf,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,OAAO,IAAI,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;QAC9B,0EAA0E;QAC1E,4EAA4E;QAC5E,oEAAoE;QACpE,2EAA2E;QAC3E,wEAAwE;QACxE,0EAA0E;QAC1E,qBAAqB;QACrB,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;QACvE,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAChD,MAAM,GAAG,GAAG,OAA4D,CAAC;IACzE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAChE,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QAAE,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IACtE,OAAO,IAAI,CAAC;AACb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spinabot/brigade",
3
- "version": "1.16.0",
3
+ "version": "1.17.0",
4
4
  "description": "Brigade — your personal AI crew",
5
5
  "homepage": "https://brigade.spinabot.com",
6
6
  "author": "Spinabot <hello@brigade-agent.ai>",