@onepointfour-packs/flaredeck-agent 0.2.82 → 0.2.83
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/agent.js +6 -0
- package/dist/agent.js.map +1 -1
- package/dist/markdown.js +2 -2
- package/dist/markdown.js.map +1 -1
- package/dist/presence.d.ts +59 -0
- package/dist/presence.js +67 -0
- package/dist/presence.js.map +1 -0
- package/dist/serve.js +120 -3
- package/dist/serve.js.map +1 -1
- package/dist/ui.d.ts +19 -0
- package/dist/ui.js +41 -6
- package/dist/ui.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.js
CHANGED
|
@@ -86,6 +86,12 @@ export const AGENT_BRIEF = [
|
|
|
86
86
|
' the script and approves it, the HARNESS runs it, and you get the output back in this same',
|
|
87
87
|
' turn. If what you need is a decision, a credential or access that does not exist, send it',
|
|
88
88
|
' without a script and stop.',
|
|
89
|
+
' · Something that needs DOING and is not yours to do — an email only a person can send, a',
|
|
90
|
+
' reply to a customer, a change in a console you cannot open — is not finished by noticing',
|
|
91
|
+
' it. In the SAME turn, put it in somebody\'s hands: say on the card exactly what has to be',
|
|
92
|
+
' done and by whom, then `set-needs-human` (or, for another agent, a message to it or to',
|
|
93
|
+
' your lead). "I can\'t do that myself and haven\'t passed it on yet" is how eight customer',
|
|
94
|
+
' enquiries sat unanswered: nobody knew they were waiting. Never end a turn holding one.',
|
|
89
95
|
'',
|
|
90
96
|
'Keep your todo list in step with the work. It is what a supervisor reads to see how you are',
|
|
91
97
|
'getting on, so it should show the real state rather than a plan you have moved past.',
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAA2E,MAAM,gCAAgC,CAAC;AAEhI,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC;;;;;;GAMG;AACH;;;;;;;GAOG;AACH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,EAAE;IACF,cAAc;IACd,EAAE;IACF,8FAA8F;IAC9F,kFAAkF;IAClF,mEAAmE;IACnE,EAAE;IACF,iFAAiF;IACjF,kGAAkG;IAClG,uFAAuF;IACvF,mEAAmE;IACnE,EAAE;IACF,6FAA6F;IAC7F,8FAA8F;IAC9F,6FAA6F;IAC7F,gGAAgG;IAChG,wEAAwE;CACzE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe,EAAE,KAAc;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IACpE,OAAO,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,2FAA2F;IAC3F,4CAA4C;IAC5C,EAAE;IACF,0EAA0E;IAC1E,4EAA4E;IAC5E,8FAA8F;IAC9F,yFAAyF;IACzF,cAAc;IACd,EAAE;IACF,0FAA0F;IAC1F,EAAE;IACF,8FAA8F;IAC9F,8FAA8F;IAC9F,+FAA+F;IAC/F,EAAE;IACF,iEAAiE;IACjE,gGAAgG;IAChG,6FAA6F;IAC7F,8FAA8F;IAC9F,8FAA8F;IAC9F,+EAA+E;IAC/E,2FAA2F;IAC3F,8FAA8F;IAC9F,8FAA8F;IAC9F,+FAA+F;IAC/F,+FAA+F;IAC/F,gCAAgC;IAChC,4FAA4F;IAC5F,8FAA8F;IAC9F,+FAA+F;IAC/F,4FAA4F;IAC5F,+FAA+F;IAC/F,4FAA4F;IAC5F,EAAE;IACF,6FAA6F;IAC7F,sFAAsF;IACtF,EAAE;IACF,4FAA4F;IAC5F,8FAA8F;IAC9F,+FAA+F;IAC/F,mEAAmE;IACnE,EAAE;IACF,+FAA+F;IAC/F,gEAAgE;IAChE,EAAE;IACF,8FAA8F;IAC9F,+FAA+F;IAC/F,4FAA4F;IAC5F,uBAAuB;CACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAKb;;;;;;;GAOG;AACH,SAAS,UAAU,CACjB,MAAc,EACd,KAAyB,EACzB,OAA4C,EAC5C,SAAmB;IAEnB,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;IACnD,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG;YAC9B,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,MAAM,CAAC,MAAM;YAClB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;SAC9C,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,IAAI,GAAG;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;IACvF,2EAA2E;IAC3E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG;YAAE,SAAS;QAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;YACpB,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChF,CAAC;IACJ,CAAC;IACD,OAAO,OAAgC,CAAC;AAC1C,CAAC;AAED,kGAAkG;AAClG,SAAS,UAAU,CACjB,GAAG,IAAuE;IAE1E,MAAM,GAAG,GAAsD,EAAE,CAAC;IAClE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAyC,EAAE,CAAC;YAC5F,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,OAAgB,EAChB,QAA0B,EAAE;AAC5B,gFAAgF;AAChF,OAAgB;AAChB,sFAAsF;AACtF,GAAa;AACb;+CAC+C;AAC/C,KAAc;AACd;kGACkG;AAClG,IAAc;AACd,6EAA6E;AAC7E,SAAmB;AACnB,sGAAsG;AACtG,IAAc;AACd,mFAAmF;AACnF,SAAmB;AACnB,yEAAyE;AACzE,KAAyD;AACzD;;;;;;;;GAQG;AACH,KAA2C;AAC3C,gGAAgG;AAChG,WAAoB;IAEpB,OAAO;QACL,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;SACpF;QACD,GAAG,EAAE,MAAM,CAAC,IAAI;QAChB,gFAAgF;QAChF,qFAAqF;QACrF,4FAA4F;QAC5F,qFAAqF;QACrF,kEAAkE;QAClE,GAAG,EAAE,eAAe,CAAC,WAAW,CAAC;QACjC,6FAA6F;QAC7F,+FAA+F;QAC/F,+FAA+F;QAC/F,qFAAqF;QACrF,0FAA0F;QAC1F,8FAA8F;QAC9F,+FAA+F;QAC/F,iDAAiD;QACjD;;;;;;;;;;;;WAYG;QACH;;;;;;;;;;;;;WAaG;QACH,cAAc,EAAE,mBAAmB;QACnC,+BAA+B,EAAE,IAAI;QACrC,yFAAyF;QACzF,4FAA4F;QAC5F,iFAAiF;QACjF,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC;QACvC,cAAc,EAAE,CAAC,SAAS,CAAC;QAC3B,2FAA2F;QAC3F,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,oFAAoF;QACpF,0FAA0F;QAC1F,eAAe,EAAE;YACf,yBAAyB,EAAE,IAAI;YAC/B,0FAA0F;YAC1F,oFAAoF;YACpF,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;SACpC;QACD;;;;;;;;;;;WAWG;QACH,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,CAAC;QAC1F,0FAA0F;QAC1F,4FAA4F;QAC5F,+CAA+C;QAC/C,eAAe,EAAE,IAAI;QACrB,+FAA+F;QAC/F,YAAY,EAAE;YACZ,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC;YACtC,GAAG,CAAC,GAAG,EAAE,SAAS,IAAI,EAAE,CAAC;YACzB,gFAAgF;YAChF,uEAAuE;YACvE,GAAG,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;YAC1B,2FAA2F;YAC3F,yFAAyF;YACzF,2DAA2D;YAC3D,GAAG,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;YAC1B,GAAG,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC;SAChC;QACD,2FAA2F;QAC3F,oEAAoE;QACpE,6FAA6F;QAC7F,2FAA2F;QAC3F,oFAAoF;QACpF,KAAK,EAAE,UAAU,CACf,QAAQ,CAAC,GAAG,EAAE,GAAuC,CAAC,CAAC,EACvD,WAAW,CAAC,GAAG,EAAE,GAAuC,CAAC,CAAC;QAC1D,sFAAsF;QACtF,2FAA2F;QAC3F,sBAAsB;QACtB,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,IAAI,IAAI,EAAE,GAAG,EAAE,GAAuC,CAAC;QAC/E,wFAAwF;QACxF,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAC3C,KAAK,CACN;QACD,yFAAyF;QACzF,0FAA0F;QAC1F,4FAA4F;QAC5F,kFAAkF;QAClF,4FAA4F;QAC5F,0FAA0F;QAC1F,6FAA6F;QAC7F,0DAA0D;QAC1D,6FAA6F;QAC7F,6FAA6F;QAC7F,2DAA2D;QAC3D,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,CAAC;QAC9E,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAChD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAChE,OAAO,QAAQ,CAAC,KAAK;gBACnB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE;gBAC5C,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrD,CAAC;QACD,GAAG,KAAK;KACT,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,eAAe,CAAC,WAAoB;IAClD;;;;6FAIyF;IACzF,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IACrF,OAAO;QACL,GAAG,IAAI;QACP;;;;;;;;;;;WAWG;QACH,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,0FAA0F;QAC1F,6FAA6F;QAC7F,6EAA6E;QAC7E,+BAA+B,EAAE,IAAI,CAAC,iCAAiC,CAAC,IAAI,OAAO;QACnF,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,OAAO;QAC3C,4FAA4F;QAC5F,2FAA2F;QAC3F,qFAAqF;QACrF,+EAA+E;QAC/E,6BAA6B,EAAE,IAAI,CAAC,+BAA+B,CAAC,IAAI,GAAG;KAC5E,CAAC;AACJ,CAAC;AA+DD;;;;;;GAMG;AACH,yFAAyF;AACzF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CACnC,MAAwB,EACxB,QAAiC,EACjC,EAAU,EACV,WAA0B,GAAG,EAAE,GAAE,CAAC;IAElC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;IAC1C,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,SAAS,CAAC;QACR,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,IAAqC,CAAC;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,KAAiC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9H,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACzC,IAAI,KAAK;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,MAAM,IAAI,CAAC;QACpB,CAAC;QACD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,qFAAqF;YACrF,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACrB,yFAAyF;YACzF,8FAA8F;YAC9F,IAAI,CAAC;gBAAC,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC;YAC/F,IAAI,CAAC;gBAAC,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC;YAClG,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,OAAO,CAC5B,MAAuD,EACvD,OAAgB,EAChB,OAA+C;IAE/C,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,MAAM,EAAE,MAA+C,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5F,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;IACnB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,QAAQ,GAAG,cAAc,CAC7B,OAAoC,EACpC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAyB,CAAC,MAAM,CAAC,KAAK,QAAQ,EACtD,sBAAsB;IACtB,8FAA8F;IAC9F,sFAAsF;IACtF,+FAA+F;IAC/F,gFAAgF;IAChF,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;IACF,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,OAA8B,CAAC;QACzC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,WAAW,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;YACnH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAC,WAAW,GAAG,CAAC,CAAC;gBAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;YAAC,CAAC;QAC5E,CAAC;QACD;;;;;;;;;WASG;QACH;yGACiG;QACjG,KAAK,MAAM,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;QACpK,CAAC;QACD,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,GAAG,EAAE,CAAC;YACR,MAAM;gBACJ,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,GAAG,CAAC,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,GAAG,CAAC,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,GAAG,EAAE,GAAG,CAAC,GAAG;aACb,CAAC;QACJ,CAAC;aAAM,CAAC;YACN;;+FAEmF;YACnF,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,OAAO,EAAE,mBAAmB,EAAE,CAAC;gBACjC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1D,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ;wBAAE,SAAS;oBAChD,MAAM;wBACJ,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,KAAK;wBACZ,MAAM;wBACN,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnE,MAAM,EAAE,cAAc;qBACvB,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,kBAAkB;YAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC/F,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE,CAAC;YACtD,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACtE,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnF,0FAA0F;gBAC1F,YAAY,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,SAAS;gBAC5C,yFAAyF;gBACzF,0FAA0F;gBAC1F,iDAAiD;gBACjD,cAAc,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,SAAS;gBAChD,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE;aACjC,CAAC;QACJ,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;oBAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;gBACzF,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC9B,gFAAgF;oBAChF,8DAA8D;oBAC9D,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC5B,oFAAoF;oBACpF,mFAAmF;oBACnF,qFAAqF;oBACrF,eAAe;oBACf,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzD,MAAM;4BACJ,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gCAC3C,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;gCACzD,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC;6BACvC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBAC5C,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAC9D,MAAM;4BACJ,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;4BAC/D,OAAO,EAAE,IAAI;yBACd,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBAChC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC;wBACzC,MAAM;4BACJ,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC,MAAM,IAAI,GAAG,EAAE;4BACzC,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAClC,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;YAChC,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;oBAAE,SAAS;gBAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;gBACxB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3F,IAAI,IAAI;oBAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC3C,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClC,uFAAuF;YACvF,uFAAuF;YACvF,kEAAkE;YAClE,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACvD,MAAM;gBACJ,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,SAAS;gBAC9B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;gBACzB,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnB,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,EAAE,CAA4B,CAAC;QAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/H,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,SAAS,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/markdown.js
CHANGED
|
@@ -21,7 +21,7 @@ function inline(text, key) {
|
|
|
21
21
|
}
|
|
22
22
|
if (part.startsWith('`') && part.endsWith('`') && part.length > 2) {
|
|
23
23
|
// Code is the thing people scan for — a path, a command, a field name.
|
|
24
|
-
return React.createElement(Text, { key: k, color: "
|
|
24
|
+
return React.createElement(Text, { key: k, color: "#b1b9f9" }, part.slice(1, -1));
|
|
25
25
|
}
|
|
26
26
|
if (part.length > 2 && ((part.startsWith('*') && part.endsWith('*')) || (part.startsWith('_') && part.endsWith('_')))) {
|
|
27
27
|
return React.createElement(Text, { key: k, italic: true }, inline(part.slice(1, -1), k));
|
|
@@ -45,7 +45,7 @@ export function Markdown({ text, color }) {
|
|
|
45
45
|
return;
|
|
46
46
|
}
|
|
47
47
|
if (inCode) {
|
|
48
|
-
out.push(React.createElement(Text, { key: key, color: "
|
|
48
|
+
out.push(React.createElement(Text, { key: key, color: "#b1b9f9" }, ` ${row}`));
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
51
|
const heading = HEADING.exec(row);
|
package/dist/markdown.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;;GAQG;AAEH,wGAAwG;AACxG,MAAM,MAAM,GAAG,wDAAwD,CAAC;AAExE,SAAS,MAAM,CAAC,IAAY,EAAE,GAAW;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QAChE,MAAM,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;QACxB,+FAA+F;QAC/F,gCAAgC;QAChC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,OAAO,oBAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,IAAI,UAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAQ,CAAC;QAClE,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,uEAAuE;YACvE,OAAO,oBAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAC,
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Is the manager's person sitting at this pane? — docs/spec-manager-role.md §18.
|
|
3
|
+
*
|
|
4
|
+
* /local "I am here." A question meant for me is shown in this pane and kept off my phone.
|
|
5
|
+
* /remote Everything goes to FlareDeck and the phone, as it always has. The mode at start.
|
|
6
|
+
*
|
|
7
|
+
* A person who says they are here and then walks away must not swallow a question: one that sits
|
|
8
|
+
* unanswered for ten minutes — with nothing typed here in that time either — goes to the phone
|
|
9
|
+
* after all, and the pane goes back to remote. So the worst /local can cost is ten minutes, once.
|
|
10
|
+
*
|
|
11
|
+
* Only a manager's pane has this, and only for questions that go to the one person the manager
|
|
12
|
+
* reports to. FlareDeck decides that (heldAtPane on the server); this file only keeps the list
|
|
13
|
+
* and the clock.
|
|
14
|
+
*/
|
|
15
|
+
export declare const LOCAL_WINDOW_MS: number;
|
|
16
|
+
export type Mode = 'local' | 'remote';
|
|
17
|
+
export type HeldAsk = {
|
|
18
|
+
card: string;
|
|
19
|
+
board?: string;
|
|
20
|
+
code?: string;
|
|
21
|
+
question: string;
|
|
22
|
+
options: string[];
|
|
23
|
+
/** Who it is held for, as FlareDeck named them. */
|
|
24
|
+
person: string;
|
|
25
|
+
since: number;
|
|
26
|
+
};
|
|
27
|
+
/** `/local` and `/remote`, typed in the pane. Anything else is not for this file. */
|
|
28
|
+
export declare function modeCommand(text: string): Mode | null;
|
|
29
|
+
/** Who a held question is for, from FlareDeck's reply — null when it was sent as usual. */
|
|
30
|
+
export declare function heldFor(reply: string): string | null;
|
|
31
|
+
/**
|
|
32
|
+
* What a typed line answers, while a question is held. A bare number picks that option; `/answer`
|
|
33
|
+
* (or `/a`) followed by words answers in the person's own words. Everything else is NOT an
|
|
34
|
+
* answer — it is a line for the agent, as it would be with nothing held. Guessing that a typed
|
|
35
|
+
* sentence was the answer would turn "stop, wrong card" into a decision about production.
|
|
36
|
+
*/
|
|
37
|
+
export declare function answerFrom(text: string, ask: HeldAsk): string | null;
|
|
38
|
+
export type Presence = {
|
|
39
|
+
mode: () => Mode;
|
|
40
|
+
/** Returns true when the mode changed. */
|
|
41
|
+
set: (mode: Mode) => boolean;
|
|
42
|
+
/** Something was typed or answered here. */
|
|
43
|
+
touch: () => void;
|
|
44
|
+
hold: (ask: HeldAsk) => void;
|
|
45
|
+
/** The question a typed answer goes to: the oldest. */
|
|
46
|
+
first: () => HeldAsk | undefined;
|
|
47
|
+
held: () => HeldAsk[];
|
|
48
|
+
take: (card: string) => HeldAsk | undefined;
|
|
49
|
+
/** When the oldest held question goes to the phone. */
|
|
50
|
+
deadline: () => number | null;
|
|
51
|
+
/**
|
|
52
|
+
* Nobody answered: every held question is handed back to be sent on, and the pane is remote
|
|
53
|
+
* again. Empty when nothing is due.
|
|
54
|
+
*/
|
|
55
|
+
expire: () => HeldAsk[];
|
|
56
|
+
/** Leaving local by hand: what was held goes out now. */
|
|
57
|
+
release: () => HeldAsk[];
|
|
58
|
+
};
|
|
59
|
+
export declare function createPresence(now?: () => number, windowMs?: number): Presence;
|
package/dist/presence.js
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Is the manager's person sitting at this pane? — docs/spec-manager-role.md §18.
|
|
3
|
+
*
|
|
4
|
+
* /local "I am here." A question meant for me is shown in this pane and kept off my phone.
|
|
5
|
+
* /remote Everything goes to FlareDeck and the phone, as it always has. The mode at start.
|
|
6
|
+
*
|
|
7
|
+
* A person who says they are here and then walks away must not swallow a question: one that sits
|
|
8
|
+
* unanswered for ten minutes — with nothing typed here in that time either — goes to the phone
|
|
9
|
+
* after all, and the pane goes back to remote. So the worst /local can cost is ten minutes, once.
|
|
10
|
+
*
|
|
11
|
+
* Only a manager's pane has this, and only for questions that go to the one person the manager
|
|
12
|
+
* reports to. FlareDeck decides that (heldAtPane on the server); this file only keeps the list
|
|
13
|
+
* and the clock.
|
|
14
|
+
*/
|
|
15
|
+
export const LOCAL_WINDOW_MS = 10 * 60 * 1000;
|
|
16
|
+
/** `/local` and `/remote`, typed in the pane. Anything else is not for this file. */
|
|
17
|
+
export function modeCommand(text) {
|
|
18
|
+
const t = text.trim().toLowerCase();
|
|
19
|
+
return t === '/local' ? 'local' : t === '/remote' ? 'remote' : null;
|
|
20
|
+
}
|
|
21
|
+
/** Who a held question is for, from FlareDeck's reply — null when it was sent as usual. */
|
|
22
|
+
export function heldFor(reply) {
|
|
23
|
+
const line = reply.split('\n').find((l) => l.startsWith('**Held**'));
|
|
24
|
+
if (!line)
|
|
25
|
+
return null;
|
|
26
|
+
return line.replace(/\*\*/g, '').replace(/^Held:\s*/, '').split(' — ')[0].trim() || 'the person here';
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* What a typed line answers, while a question is held. A bare number picks that option; `/answer`
|
|
30
|
+
* (or `/a`) followed by words answers in the person's own words. Everything else is NOT an
|
|
31
|
+
* answer — it is a line for the agent, as it would be with nothing held. Guessing that a typed
|
|
32
|
+
* sentence was the answer would turn "stop, wrong card" into a decision about production.
|
|
33
|
+
*/
|
|
34
|
+
export function answerFrom(text, ask) {
|
|
35
|
+
const t = text.trim();
|
|
36
|
+
if (/^\d$/.test(t))
|
|
37
|
+
return ask.options[Number(t) - 1] ?? null;
|
|
38
|
+
const m = /^\/a(?:nswer)?\s+(.+)$/is.exec(t);
|
|
39
|
+
return m ? m[1].trim() : null;
|
|
40
|
+
}
|
|
41
|
+
export function createPresence(now = Date.now, windowMs = LOCAL_WINDOW_MS) {
|
|
42
|
+
let mode = 'remote';
|
|
43
|
+
let lastActivity = 0;
|
|
44
|
+
const asks = [];
|
|
45
|
+
const deadline = () => (asks.length ? Math.max(asks[0].since, lastActivity) + windowMs : null);
|
|
46
|
+
const release = () => asks.splice(0, asks.length);
|
|
47
|
+
return {
|
|
48
|
+
mode: () => mode,
|
|
49
|
+
set: (m) => { const changed = m !== mode; mode = m; lastActivity = now(); return changed; },
|
|
50
|
+
touch: () => { lastActivity = now(); },
|
|
51
|
+
hold: (ask) => { const i = asks.findIndex((a) => a.card === ask.card); if (i >= 0)
|
|
52
|
+
asks.splice(i, 1); asks.push(ask); },
|
|
53
|
+
first: () => asks[0],
|
|
54
|
+
held: () => [...asks],
|
|
55
|
+
take: (card) => { const i = asks.findIndex((a) => a.card === card); return i >= 0 ? asks.splice(i, 1)[0] : undefined; },
|
|
56
|
+
deadline,
|
|
57
|
+
expire: () => {
|
|
58
|
+
const d = deadline();
|
|
59
|
+
if (d === null || now() < d)
|
|
60
|
+
return [];
|
|
61
|
+
mode = 'remote';
|
|
62
|
+
return release();
|
|
63
|
+
},
|
|
64
|
+
release,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=presence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presence.js","sourceRoot":"","sources":["../src/presence.ts"],"names":[],"mappings":"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"}
|
package/dist/serve.js
CHANGED
|
@@ -5,6 +5,7 @@ import { ensureTmuxScrollback } from './tmux.js';
|
|
|
5
5
|
import { START_SCRIPT as START_SCRIPT_NAME, webPart, browserBrief, crossWired, environmentBrief, environmentStillUp, notStartedBrief, startEnvironment, stopEnvironment, stopLeftoverEnvironments } from './environment.js';
|
|
6
6
|
import { GIT_TOOL_NAMES, githubTools, publishBranch } from './github.js';
|
|
7
7
|
import { freshGitHubToken } from './githubauth.js';
|
|
8
|
+
import { answerFrom, createPresence, heldFor, modeCommand } from './presence.js';
|
|
8
9
|
import { loadBaseBranch, loadMergeConfig, preflight, preflightBrief } from './preflight.js';
|
|
9
10
|
import { pushStatus, StatusTracker } from './status.js';
|
|
10
11
|
import { dispatchDecision, fetchTeam, myTeam, teamTools, TEAM_TOOL_NAMES } from './team.js';
|
|
@@ -504,6 +505,8 @@ export async function serve(opts) {
|
|
|
504
505
|
* asking for help rather than waiting for it.
|
|
505
506
|
*/
|
|
506
507
|
const parked = new Map();
|
|
508
|
+
/** Whether the manager's person is at this pane, and the questions held for them. See presence.ts. */
|
|
509
|
+
const presence = createPresence();
|
|
507
510
|
/** Cards just released from a park, and what released them — told to the agent, once. */
|
|
508
511
|
const released = new Map();
|
|
509
512
|
/** Agent names, so a comment from a PERSON can be told from agents talking among themselves. */
|
|
@@ -717,10 +720,15 @@ export async function serve(opts) {
|
|
|
717
720
|
const cur = onCard;
|
|
718
721
|
if (!cur)
|
|
719
722
|
return null;
|
|
720
|
-
|
|
723
|
+
// A question, from a manager, with its person at this pane: ask FlareDeck to keep it off
|
|
724
|
+
// their phone. FlareDeck decides whether it is theirs; a script request is never held.
|
|
725
|
+
const hold = isManager && !!ask && presence.mode() === 'local';
|
|
726
|
+
return flagCard({ card: cur.card, board: cur.board, code: cur.code }, reason, kind, ask, undefined, hold);
|
|
721
727
|
},
|
|
722
728
|
unflag: async (cur) => {
|
|
723
729
|
parked.delete(cur.card);
|
|
730
|
+
if (presence.take(cur.card))
|
|
731
|
+
showPresence();
|
|
724
732
|
await callFlaredeckTool(config.mcpUrl, await opts.auth(), 'clear-needs-human', {
|
|
725
733
|
card_id: cur.code || cur.card,
|
|
726
734
|
...(cur.board ? { board_id: cur.board } : {}),
|
|
@@ -767,6 +775,7 @@ export async function serve(opts) {
|
|
|
767
775
|
const row = (state.approvals ?? []).find((a) => a.requestId === requestId);
|
|
768
776
|
if (!row || row.stage !== 'ready')
|
|
769
777
|
return;
|
|
778
|
+
presence.touch();
|
|
770
779
|
answeredHere.set(requestId, verdict);
|
|
771
780
|
row.stage = 'answered';
|
|
772
781
|
row.verdict = verdict;
|
|
@@ -830,6 +839,17 @@ export async function serve(opts) {
|
|
|
830
839
|
let isLead = false;
|
|
831
840
|
/** A manager: above the leads, with no lead of its own. See MANAGER_BRIEF. */
|
|
832
841
|
let isManager = false;
|
|
842
|
+
/** The mode and the held questions, as the pane draws them. */
|
|
843
|
+
const showPresence = () => {
|
|
844
|
+
if (!isManager) {
|
|
845
|
+
delete state.presence;
|
|
846
|
+
delete state.asks;
|
|
847
|
+
return;
|
|
848
|
+
}
|
|
849
|
+
state.presence = presence.mode();
|
|
850
|
+
const until = presence.deadline();
|
|
851
|
+
state.asks = presence.held().map((a) => ({ card: a.code || a.card, question: a.question, options: a.options, person: a.person, ...(until ? { until } : {}) }));
|
|
852
|
+
};
|
|
833
853
|
const keepTool = (name) => offeredTo(isManager ? 'manager' : isLead ? 'lead' : 'worker', name);
|
|
834
854
|
/** Cards already handed to the lead, so a retried tool call does not assign or message twice. */
|
|
835
855
|
const handedBack = new Set();
|
|
@@ -859,9 +879,12 @@ export async function serve(opts) {
|
|
|
859
879
|
// The role exists in FlareDeck before the harness has a manager mode (docs/spec-manager-role.md
|
|
860
880
|
// §14). Said plainly, so nobody reads a manager account running here as a manager at work.
|
|
861
881
|
isManager = team.you.role === 'manager';
|
|
882
|
+
showPresence();
|
|
862
883
|
if (isManager) {
|
|
863
884
|
log('event', 'You are a manager here — list-agents shows the teams that report to you and the machines they run on; machine-exec reaches those machines.');
|
|
864
|
-
log('
|
|
885
|
+
log('event', 'Your team\'s technical, access and information questions come to you first; what you cannot settle goes to the person the board names.');
|
|
886
|
+
log('event', 'At this pane? Type /local and questions for you are shown here instead of on your phone (back to /remote after ten minutes unanswered).');
|
|
887
|
+
log('warn', 'Not enforced yet: approvals and heads-ups. Nothing here stops a promote, a merge or a delete — those limits are instructions for now. See docs/spec-manager-role.md §14.');
|
|
865
888
|
}
|
|
866
889
|
selfId = team.you.agentId;
|
|
867
890
|
teamIds = new Set(team.agents.filter((a) => a.reportsTo === team.you.agentId).map((a) => a.agentId));
|
|
@@ -1259,12 +1282,87 @@ export async function serve(opts) {
|
|
|
1259
1282
|
});
|
|
1260
1283
|
});
|
|
1261
1284
|
};
|
|
1285
|
+
/** Nobody answered here: the held question goes to the phone, as it stands on the card. */
|
|
1286
|
+
const sendOn = async (a) => {
|
|
1287
|
+
const label = a.code || a.card;
|
|
1288
|
+
try {
|
|
1289
|
+
const out = await callFlaredeckTool(config.mcpUrl, await opts.auth(), 'set-needs-human', {
|
|
1290
|
+
card_id: a.code || a.card, ...(a.board ? { board_id: a.board } : {}), push_held: true,
|
|
1291
|
+
});
|
|
1292
|
+
log('warn', `${label}: ${out.split('\n').find((l) => l.startsWith('**Told**'))?.replace(/\*\*/g, '') ?? out.split('\n')[0]}`);
|
|
1293
|
+
}
|
|
1294
|
+
catch (e) {
|
|
1295
|
+
log('warn', `${label}: could not send the question on to ${a.person}'s phone (${e instanceof Error ? e.message : String(e)}) — it is still on the card`);
|
|
1296
|
+
}
|
|
1297
|
+
};
|
|
1298
|
+
const setMode = (mode) => {
|
|
1299
|
+
if (!isManager) {
|
|
1300
|
+
log('warn', '/local and /remote are for a manager\'s pane: they decide where questions for the person the manager reports to are shown.');
|
|
1301
|
+
return;
|
|
1302
|
+
}
|
|
1303
|
+
presence.set(mode);
|
|
1304
|
+
if (mode === 'local') {
|
|
1305
|
+
log('you', 'local — questions for you are shown here and kept off your phone. One left unanswered for ten minutes goes to your phone, and this goes back to remote.');
|
|
1306
|
+
}
|
|
1307
|
+
else {
|
|
1308
|
+
const waiting = presence.release();
|
|
1309
|
+
log('you', `remote — questions go to FlareDeck and your phone${waiting.length ? `, including the ${waiting.length} waiting here` : ''}.`);
|
|
1310
|
+
for (const a of waiting)
|
|
1311
|
+
void sendOn(a);
|
|
1312
|
+
}
|
|
1313
|
+
showPresence();
|
|
1314
|
+
};
|
|
1315
|
+
/**
|
|
1316
|
+
* Answered at the pane. Written on the card first — an answer that exists only in a terminal is
|
|
1317
|
+
* one nobody else can find — then the flag comes off and the card goes back to the agent.
|
|
1318
|
+
*/
|
|
1319
|
+
const answerHeld = async (a, answer) => {
|
|
1320
|
+
presence.take(a.card);
|
|
1321
|
+
showPresence();
|
|
1322
|
+
const label = a.code || a.card;
|
|
1323
|
+
log('you', `${label}: ${answer}`);
|
|
1324
|
+
const ref = { card_id: a.code || a.card, ...(a.board ? { board_id: a.board } : {}) };
|
|
1325
|
+
try {
|
|
1326
|
+
await callFlaredeckTool(config.mcpUrl, await opts.auth(), 'create-card-comment', {
|
|
1327
|
+
...ref, comment: `**${a.person} answered at ${state.agent}'s pane.**\n\n> ${a.question}\n\n${answer}`,
|
|
1328
|
+
});
|
|
1329
|
+
await callFlaredeckTool(config.mcpUrl, await opts.auth(), 'clear-needs-human', ref);
|
|
1330
|
+
}
|
|
1331
|
+
catch (e) {
|
|
1332
|
+
log('warn', `${label}: the answer could not be written to the card (${e instanceof Error ? e.message : String(e)}) — the agent still gets it`);
|
|
1333
|
+
}
|
|
1334
|
+
parked.delete(a.card);
|
|
1335
|
+
resumeParked({ card: a.card, ...(a.board ? { board: a.board } : {}), ...(a.code ? { code: a.code } : {}) }, `${a.person} answered your question at this pane.\n\nYou asked: ${a.question}\nThe answer: ${answer}\n\nIt is on the card as a comment and the flag is cleared. Carry on from where you stopped.`);
|
|
1336
|
+
};
|
|
1337
|
+
const presenceTimer = setInterval(() => {
|
|
1338
|
+
const due = presence.expire();
|
|
1339
|
+
if (due.length) {
|
|
1340
|
+
log('warn', `nobody answered here in ten minutes — ${due.length === 1 ? 'that question has' : `${due.length} questions have`} gone to your phone, and this pane is remote again. /local when you are back.`);
|
|
1341
|
+
for (const a of due)
|
|
1342
|
+
void sendOn(a);
|
|
1343
|
+
}
|
|
1344
|
+
if (due.length || state.asks?.length)
|
|
1345
|
+
showPresence();
|
|
1346
|
+
}, 15_000);
|
|
1347
|
+
presenceTimer.unref();
|
|
1262
1348
|
const steer = (text) => {
|
|
1263
1349
|
// Mid sign-in, the next line is the redirect address — for the sign-in, never the agent.
|
|
1264
1350
|
if (signingIn) {
|
|
1265
1351
|
signInReader.emit('line', text);
|
|
1266
1352
|
return;
|
|
1267
1353
|
}
|
|
1354
|
+
const mode = modeCommand(text);
|
|
1355
|
+
if (mode) {
|
|
1356
|
+
setMode(mode);
|
|
1357
|
+
return;
|
|
1358
|
+
}
|
|
1359
|
+
presence.touch();
|
|
1360
|
+
const held = presence.first();
|
|
1361
|
+
const answer = held ? answerFrom(text, held) : null;
|
|
1362
|
+
if (held && answer) {
|
|
1363
|
+
void answerHeld(held, answer);
|
|
1364
|
+
return;
|
|
1365
|
+
}
|
|
1268
1366
|
if (text.startsWith('!')) {
|
|
1269
1367
|
const command = text.slice(1).trim();
|
|
1270
1368
|
if (command)
|
|
@@ -1679,6 +1777,10 @@ export async function serve(opts) {
|
|
|
1679
1777
|
// is what tells FlareDeck this agent stopped. Exiting here instead left the last record
|
|
1680
1778
|
// saying "idle", which reads as a live agent doing nothing rather than one that is gone.
|
|
1681
1779
|
stream.close();
|
|
1780
|
+
// A question held for the person here must not be stranded by this pane closing.
|
|
1781
|
+
for (const a of presence.release())
|
|
1782
|
+
void sendOn(a);
|
|
1783
|
+
clearInterval(presenceTimer);
|
|
1682
1784
|
clearInterval(heartbeat);
|
|
1683
1785
|
clearInterval(sweepTimer);
|
|
1684
1786
|
clearInterval(worktreeTimer);
|
|
@@ -2084,7 +2186,9 @@ export async function serve(opts) {
|
|
|
2084
2186
|
/** The one-line ask and its answer buttons — what the person actually sees on a phone. */
|
|
2085
2187
|
ask,
|
|
2086
2188
|
/** Somewhere for the person to GO, which is what a sign-in request is mostly made of. */
|
|
2087
|
-
links
|
|
2189
|
+
links,
|
|
2190
|
+
/** The person this would go to may be at this pane: flag it, and keep it off their phone. */
|
|
2191
|
+
hold) => {
|
|
2088
2192
|
const label = ref.code || ref.card || 'card';
|
|
2089
2193
|
try {
|
|
2090
2194
|
const out = await callFlaredeckTool(config.mcpUrl, await opts.auth(), 'set-needs-human', {
|
|
@@ -2095,6 +2199,7 @@ export async function serve(opts) {
|
|
|
2095
2199
|
...(kind ? { kind } : {}),
|
|
2096
2200
|
...(ask ? { question: ask.question, options: ask.options } : {}),
|
|
2097
2201
|
...(links?.length ? { links } : {}),
|
|
2202
|
+
...(hold ? { hold: true } : {}),
|
|
2098
2203
|
});
|
|
2099
2204
|
if (out.trimStart().startsWith('\u274c') || out.trimStart().startsWith('\ud83d\udeab')) {
|
|
2100
2205
|
log('warn', `${label}: FlareDeck did not flag this card \u2014 ${out.split('\n')[0]}`);
|
|
@@ -2102,6 +2207,16 @@ export async function serve(opts) {
|
|
|
2102
2207
|
}
|
|
2103
2208
|
// Say who was told, which the tool reports back, so the pane shows whether anyone heard it.
|
|
2104
2209
|
park(ref.card, reason.split('.')[0]?.slice(0, 60) || 'an agent asked for help');
|
|
2210
|
+
const person = hold ? heldFor(out) : null;
|
|
2211
|
+
if (person && ask) {
|
|
2212
|
+
presence.hold({
|
|
2213
|
+
card: ref.card, ...(ref.board ? { board: ref.board } : {}), ...(ref.code ? { code: ref.code } : {}),
|
|
2214
|
+
question: ask.question, options: ask.options.map((o) => o.label), person, since: Date.now(),
|
|
2215
|
+
});
|
|
2216
|
+
showPresence();
|
|
2217
|
+
log('warn', `${label}: a question for ${person}, shown here and kept off their phone — ${ask.question}`);
|
|
2218
|
+
return `Shown to ${person} at this pane. It goes to their phone if nobody answers here within ten minutes.`;
|
|
2219
|
+
}
|
|
2105
2220
|
const told = out.split('\n').find((l) => l.startsWith('**Told**'))?.replace(/\*\*/g, '') ?? null;
|
|
2106
2221
|
log('warn', `${label}: flagged needs-human \u2014 ${reason.split('.')[0]}${told ? ` \u00b7 ${told}` : ''}`);
|
|
2107
2222
|
return told;
|
|
@@ -2144,6 +2259,8 @@ export async function serve(opts) {
|
|
|
2144
2259
|
return;
|
|
2145
2260
|
}
|
|
2146
2261
|
parked.delete(event.cardKey);
|
|
2262
|
+
if (presence.take(event.cardKey))
|
|
2263
|
+
showPresence();
|
|
2147
2264
|
released.set(event.cardKey, byPerson ? `${event.actor} has answered` : stale ? 'it has been waiting a while' : 'an approval was decided');
|
|
2148
2265
|
log('event', `${label}: ${byPerson ? `${event.actor} answered` : stale ? 'waited long enough' : 'an approval was decided'} — picking it back up`);
|
|
2149
2266
|
}
|