@ekairos/story 1.18.4-beta.0 → 1.18.5-beta.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.
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +1 -1
- package/dist/agent.js.map +1 -1
- package/dist/document-parser.js.map +1 -1
- package/dist/engine.js.map +1 -1
- package/dist/events.d.ts +3 -2
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +104 -34
- package/dist/events.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/schema.js.map +1 -1
- package/dist/service.js.map +1 -1
- package/dist/steps/ai.js.map +1 -1
- package/dist/steps/base.js.map +1 -1
- package/dist/steps/index.js.map +1 -1
- package/dist/steps/registry.js.map +1 -1
- package/dist/steps/sampleStep.js.map +1 -1
- package/dist/steps-context.js.map +1 -1
- package/dist/story.js.map +1 -1
- package/dist/storyEngine.js.map +1 -1
- package/dist/storyRunner.js.map +1 -1
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/sampleWorkflow.js.map +1 -1
- package/package.json +3 -2
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAiC,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAoH,IAAI,EAAQ,qBAAqB,EAAE,MAAM,IAAI,CAAA;AAIxK,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAUzF,MAAM,MAAM,YAAY,GAAG,SAAS,CAClC,KAAK,EAAE,gBAAgB;AACvB;IACE,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;KAC/B,CAAC;IACF,YAAY,EAAE;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;KACrC,CAAC;CACH,CACF,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrD,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACzF,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClE,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,KAAK,IAAI,GAAG;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,GAAG;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAClG;AAED,MAAM,WAAW,qBAAqB;IACpC,eAAe,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;IACnD,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAA;AAIlE,8BAAsB,KAAK,CAAC,OAAO;IAIQ,OAAO,CAAC,IAAI;IAHrD,SAAS,CAAC,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAA;IACrC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAA;gBAExB,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,EAAU,IAAI,GAAE,YAAiB;IAKxE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM;IAC/G,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3H,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAEhF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC;IAIlD,SAAS,CAAC,gBAAgB,IAAI;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,gBAAgB,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,OAAO,CAAA;KAAE;cAIjF,wBAAwB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAA+C;IAEvF,SAAS,CAAC,YAAY,CAAC,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;cAsC5E,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,EACpH,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,GAAG,CAAC;cAWC,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;KAAE,EACzG,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,GAAG,CAAC;IAKF,cAAc,CACzB,aAAa,EAAE,YAAY,EAC3B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,EAC3C,OAAO,CAAC,EAAE,qBAAqB;;;;;;;YA8cnB,oBAAoB;YAKpB,SAAS;CAyBxB;AAED,MAAM,WAAW,WAAW,CAAC,OAAO;IAClC,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,CAAA;IAC3B,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;IACxE,YAAY,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC3E,KAAK,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,gBAAgB,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9H,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,CAAA;IAC9D,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB,gBAAgB,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAC1F;AAED,MAAM,MAAM,aAAa,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG;IACpD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CACxC,CAAA;AAED,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAwCnF;AAGD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,CAAA;AAEzB,KAAK,wBAAwB,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAA;AAEtF,KAAK,mBAAmB,CAAC,OAAO,IAAI,CAClC,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC,KACvC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE7B,KAAK,YAAY,CAAC,OAAO,IAAI,CAC3B,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC,EAC1C,UAAU,EAAE,gBAAgB,KACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAEzD,KAAK,YAAY,CAAC,OAAO,IACrB,MAAM,GACN,CAAC,CAAC,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,CAAA;AAE5D,KAAK,uBAAuB,GAAG;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAErG,KAAK,kBAAkB,CAAC,OAAO,IAAI;IACjC,YAAY,CAAC,EAAE,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC3E,KAAK,CAAC,EAAE,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC7D,KAAK,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAChE,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IACrD,gBAAgB,CAAC,SAAS,EAAE,uBAAuB,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IACjF,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IAC9B,KAAK,IAAI,aAAa,CAAC,OAAO,CAAC,CAAA;CAChC,CAAA;AAED,KAAK,qBAAqB,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;AAEhF,KAAK,2BAA2B,CAAC,CAAC,SAAS,qBAAqB,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AAE1F,KAAK,gBAAgB,GAAG;IACtB,OAAO,CAAC,WAAW,SAAS,qBAAqB,EAC/C,WAAW,EAAE,WAAW,GACvB,kBAAkB,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;IAC/D,UAAU,CAAC,WAAW,SAAS,qBAAqB,EAClD,WAAW,EAAE,WAAW,GACvB,kBAAkB,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;CAChE,CAAA;AAiCD,wBAAgB,WAAW,CAAC,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,GAAG,gBAAgB,CAyDzE"}
|
package/dist/agent.js
CHANGED
|
@@ -184,7 +184,7 @@ class Story {
|
|
|
184
184
|
}
|
|
185
185
|
const messagesForModel = await (0, events_1.convertEventsToModelMessages)(reactionEvent.status !== "pending"
|
|
186
186
|
? [...events, reactionEvent]
|
|
187
|
-
: [...events]);
|
|
187
|
+
: [...events], this.db);
|
|
188
188
|
const systemPrompt = await this.buildSystemPrompt(updatedContext);
|
|
189
189
|
const providerOptions = {};
|
|
190
190
|
const hasReasoning = options?.reasoningEffort && options.reasoningEffort !== "off";
|
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":";;;AA0oBA,sBAwCC;AA4ED,kCAyDC;AAvzBD,4CAAsE;AACtE,2BAAwK;AACxK,2CAAuC;AACvC,6BAAuB;AAGvB,2CAAwC;AACxC,uCAAyF;AACzF,qCAAkP;AAElP,gCAAgC;AAChC,MAAM,MAAM,GAAG,IAAA,uBAAU,EAAC;IACxB,WAAW,EAAE,iBAAiB;IAC9B,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;CACvC,CAAC,CAAC;AA+BH,MAAM,gBAAgB,GAAG,0BAAqB,CAAC;AAG/C,MAAsB,KAAK;IAIzB,YAAY,EAA2B,EAAU,OAAqB,EAAE;QAAvB,SAAI,GAAJ,IAAI,CAAmB;QACtE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,YAAY,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,CAAA;IAC1C,CAAC;IAMS,QAAQ,CAAC,OAA+B;QAChD,OAAO,cAAc,CAAA;IACvB,CAAC;IAES,gBAAgB;QACxB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACnE,CAAC;IAES,KAAK,CAAC,wBAAwB;QACtC,OAAO,EAAE,CAAA;IACX,CAAC;IAIS,YAAY,CAAC,UAA4B,EAAE,QAAgB;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvC,MAAM,SAAS,GAAyB,EAAE,CAAA;QAE1C,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,SAAS,CAAC,aAAa,GAAG,IAAA,SAAI,EAAC;gBAC7B,WAAW,EAAE,yEAAyE;gBACtF,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;oBACpB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;iBACxE,CAAC;aACH,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,SAAS,CAAC,gBAAgB,GAAG,IAAA,SAAI,EAAC;gBAChC,WAAW,EAAE,kDAAkD;gBAC/D,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;oBACpB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;oBACjB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;oBACnB,gBAAgB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;oBAChD,OAAO,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;iBAC7D,CAAC;aACH,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,SAAS,CAAC,GAAG,GAAG,IAAA,SAAI,EAAC;gBACnB,WAAW,EAAE,mCAAmC;gBAChD,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;gBAClC,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;gBAC5C,CAAC;aACF,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAES,KAAK,CAAC,oBAAoB,CAClC,OAAe,EACf,IAAoH,EACpH,QAAgB,EAChB,UAA6B;QAE7B,MAAM,gBAAgB,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAoB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAS,CAAA;QACzH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;QAC/D,CAAC;QAAC,MAAM,CAAC,CAAC,CAAC;QACX,IAAI,UAAU,EAAE,CAAC;YACf,2LAA2L;QAC7L,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAA;IACrG,CAAC;IAES,KAAK,CAAC,uBAAuB,CACrC,OAAe,EACf,IAAyG,EACzG,QAAgB,EAChB,WAA8B;QAE9B,MAAM,aAAa,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAoB,EAAE,OAAO,EAAE,wBAAwB,IAAI,CAAC,KAAK,cAAc,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAS,CAAA;QACxK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAA;IAC3G,CAAC;IAEM,KAAK,CAAC,cAAc,CACzB,aAA2B,EAC3B,iBAA2C,EAC3C,OAA+B;QAG/B,wBAAwB;QACxB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAU,iBAAiB,CAAC,CAAA;QAE7F,MAAM,eAAe,GAAsB,iBAAiB,EAAE,EAAE;YAC9D,CAAC,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE;YAC9B,CAAC,CAAC,iBAAiB,EAAE,GAAG;gBACtB,CAAC,CAAC,EAAE,GAAG,EAAE,iBAAiB,CAAC,GAAG,EAAE;gBAChC,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,CAAA;QAE/B,sBAAsB;QACtB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QAEtF,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAA,CAAC,mBAAmB;QAC1D,MAAM,OAAO,GAAG,IAAA,UAAE,GAAE,CAAA,CAAC,oBAAoB;QAEzC,8DAA8D;QAC9D,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;QAEzE,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,eAAe,EAAE,cAAc,EAAE,OAAO,CAAC,CAAA;QACnG,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,CAAA;QAEhC,IAAI,mBAAmB,GAAwB,IAAI,CAAA;QACnD,IAAI,eAAe,GAAyC,WAAW,CAAA;QAEvE,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;YAC7B,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACnE,IAAI,CAAC;oBACH,mBAAmB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAE;wBAChF,GAAG,mBAAmB;wBACtB,MAAM,EAAE,QAAQ;qBACjB,CAAC,CAAA;gBACJ,CAAC;gBACD,OAAO,UAAU,EAAE,CAAC;oBAClB,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,UAAU,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC;YAED,IAAI,eAAe,KAAK,WAAW,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;oBACjF,eAAe,GAAG,QAAQ,CAAA;gBAC5B,CAAC;gBACD,OAAO,cAAc,EAAE,CAAC;oBACtB,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,cAAc,CAAC,CAAA;gBACrE,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;YACxC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAgC,EAAE,EAAE;gBACtE,IAAI,UAAU,GAAG,CAAC,CAAA;gBAClB,MAAM,SAAS,GAAG,EAAE,CAAA;gBAEpB,uEAAuE;gBACvE,MAAM,MAAM,GAAmB,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;gBACjF,MAAM,SAAS,GAAG,cAAc,CAAC,EAAE,CAAA;gBAEnC,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE;oBACnD,SAAS;oBACT,WAAW,EAAE,MAAM,CAAC,MAAM;oBAC1B,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;wBAC/C,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC,CAAC;iBACJ,CAAC,CAAA;gBAEF,IAAI,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,EAAE;oBACrE,EAAE,EAAE,OAAO;oBACX,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;oBACtB,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAA;gBACF,mBAAmB,GAAG,aAAa,CAAA;gBAEnC,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAS,CAAC,CAAA;gBAC5E,OAAO,UAAU,GAAG,SAAS,EAAE,CAAC;oBAE9B,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;oBAExC,UAAU,EAAE,CAAA;oBAEZ,eAAe;oBACf,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAU,eAAe,CAAC,CAAA;oBACnF,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,EAAE,EAAS,CAAC,CAAA;oBAE5F,mDAAmD;oBACnD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;oBAE5D,iBAAiB;oBACjB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;oBAE9G,cAAc;oBACd,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAA;oBAE1E,0CAA0C;oBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAA;oBAClE,MAAM,KAAK,GAAyB,EAAE,GAAG,gBAAgB,EAAE,GAAG,SAAS,EAAE,CAAA;oBAEzE,4BAA4B;oBAC5B,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;wBACvB,KAAK,CAAC,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,SAAS,EAAS,CAAA;oBACpD,CAAC;oBAED,uCAAuC;oBACvC,MAAM,UAAU,GAAgD,EAAE,CAAA;oBAClE,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBACzD,IAAK,CAAS,CAAC,OAAO,EAAE,CAAC;4BACvB,UAAU,CAAC,IAAI,CAAC,GAAI,CAAS,CAAC,OAAsC,CAAA;wBACtE,CAAC;oBACH,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;oBACvC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;oBACtH,CAAC;oBACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;wBAC7B,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;oBAC5H,CAAC;oBAED,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC1C,OAAQ,CAAS,CAAC,OAAO,CAAA;oBAC3B,CAAC;oBAED,MAAM,gBAAgB,GAAmB,MAAM,IAAA,qCAA4B,EACzE,aAAa,CAAC,MAAM,KAAK,SAAS;wBAChC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,aAAa,CAAC;wBAC5B,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EACf,IAAI,CAAC,EAAE,CACR,CAAA;oBAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;oBAEjE,MAAM,eAAe,GAAQ,EAAE,CAAA;oBAC/B,MAAM,YAAY,GAAG,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,eAAe,KAAK,KAAK,CAAA;oBAElF,IAAI,YAAY,EAAE,CAAC;wBACjB,eAAe,CAAC,MAAM,GAAG;4BACvB,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,gBAAgB,EAAE,UAAU;yBAC7B,CAAA;wBACD,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE;4BACxC,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;4BACpC,eAAe;yBAChB,CAAC,CAAA;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;oBAClD,CAAC;oBAED,wEAAwE;oBACxE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAErC,MAAM,MAAM,GAAG,IAAA,eAAU,EAAC;wBACxB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;wBACpC,MAAM,EAAE,YAAY;wBACpB,QAAQ,EAAE,gBAAgB;wBAC1B,KAAK;wBACL,UAAU,EAAE,UAAU;wBACtB,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;4BACrB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;wBACnC,CAAC;wBACD,QAAQ,EAAE,IAAA,gBAAW,EAAC,QAAQ,CAAC;wBAC/B,sBAAsB,EAAE,IAAA,iBAAY,EAAC;4BACnC,SAAS,EAAE,EAAE;4BACb,QAAQ,EAAE,MAAM;yBACjB,CAAC;wBACF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC;qBACpE,CAAC,CAAA;oBAEF,MAAM,CAAC,aAAa,EAAE,CAAA;oBAEtB,iBAAiB;oBACjB,IAAI,aAA6C,CAAA;oBACjD,IAAI,YAAyC,CAAA;oBAC7C,MAAM,aAAa,GAAG,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wBAClE,aAAa,GAAG,OAAO,CAAA;wBACvB,YAAY,GAAG,MAAM,CAAA;oBACvB,CAAC,CAAC,CAAA;oBAEF,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;wBACxC,SAAS,EAAE,KAAK;wBAChB,iBAAiB,EAAE,GAAG,EAAE;4BACtB,OAAO,OAAO,CAAA;wBAChB,CAAC;wBACD,eAAe,CAAC,OAAO;4BACrB,OAAO;gCACL,OAAO,EAAE,OAAO;6BACjB,CAAA;wBACH,CAAC;wBACD,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;4BACzB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gCAClE,IAAI,EAAE,CAAC,CAAC,IAAI;gCACZ,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;oCAC/B,IAAI,EAAE,CAAC,CAAC,IAAI;oCACZ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;oCAC/B,YAAY,EAAE,CAAC,CAAC,IAAI,KAAK,WAAW;iCACrC,CAAC,CAAC;6BACJ,CAAC,CAAC,CAAC,CAAA;4BACJ,MAAM,SAAS,GAAG,IAAA,2CAAkC,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;4BACvE,aAAa,CAAC,SAAS,CAAC,CAAA;wBAC1B,CAAC;wBACD,OAAO,EAAE,CAAC,CAAU,EAAE,EAAE;4BACtB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;4BAChC,YAAY,CAAC,CAAC,CAAC,CAAA;4BACf,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;4BAC1D,OAAO,OAAO,CAAA;wBAChB,CAAC;qBACF,CAAC,CAAC,WAAW,CAAC,IAAI,eAAe,CAAC;wBACjC,SAAS,CAAC,KAAU,EAAE,UAAe;4BAEnC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gCAC3B,OAAO;4BACT,CAAC;4BAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gCACjC,OAAO;4BACT,CAAC;4BAED,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gCAChC,OAAM;4BACR,CAAC;4BAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gCAC5B,OAAO;4BACT,CAAC;4BAED,UAAU,CAAC,OAAO,CAAC,KAAY,CAAC,CAAA;wBAClC,CAAC;qBACF,CAAC,CAAC,CAAC,CAAA;oBAEJ,8BAA8B;oBAC9B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAA;oBAErC,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAU,EAAE,CAAM,EAAE,EAAE;wBACtE,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BAC7D,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;4BACrC,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC5E,CAAC;wBACD,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC,CAAC;oBAEP,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE;wBACtC,OAAO;wBACP,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;qBACpG,CAAC,CAAC;oBAEH,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;wBACtB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;wBAC5D,IAAI,oBAAoB,EAAE,CAAC;4BACzB,MAAK;wBACP,CAAC;wBACD,SAAQ;oBACV,CAAC;oBACD,MAAM,sBAAsB,GAAG;wBAC7B,GAAG,aAAa;wBAChB,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;qBACjF,CAAA;oBAED,IAAI,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAA;oBACrG,mBAAmB,GAAG,iBAAiB,CAAA;oBAEvC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAO,EAAE,EAAE;wBACzE,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE;4BACrC,OAAO;4BACP,UAAU,EAAE,EAAE,CAAC,UAAU;4BACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;yBACtB,CAAC,CAAA;wBAEF,IAAI,WAAW,GAAG,IAAI,CAAA;wBACtB,IAAI,WAAW,GAAG,UAAU,CAAA;wBAC5B,IAAI,UAAU,GAAQ,IAAI,CAAA;wBAC1B,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;4BACtC,IAAI,MAAM,EAAE,CAAC;gCACX,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;gCACjG,UAAU,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;gCAClC,WAAW,GAAG,UAAU,EAAE,OAAO,KAAK,KAAK,CAAA;gCAC3C,WAAW,GAAG,UAAU,EAAE,OAAO,IAAI,WAAW,CAAA;gCAChD,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;oCAC5C,UAAU,EAAE,EAAE,CAAC,UAAU;oCACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;oCACrB,OAAO,EAAE,WAAW;iCACrB,CAAC,CAAA;gCACF,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE;oCAC3C,UAAU,EAAE,EAAE,CAAC,UAAU;oCACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;oCACrB,MAAM,EAAE,UAAU;iCACnB,CAAC,CAAA;4BACJ,CAAC;wBACH,CAAC;wBACD,OAAO,GAAQ,EAAE,CAAC;4BAChB,WAAW,GAAG,KAAK,CAAA;4BACnB,WAAW,GAAG,GAAG,CAAC,OAAO,CAAA;4BACzB,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE;gCAC5C,UAAU,EAAE,EAAE,CAAC,UAAU;gCACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;gCACrB,KAAK,EAAE,GAAG;6BACX,CAAC,CAAA;wBACJ,CAAC;wBAED,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA;oBACrD,CAAC,CAAC,CAAC,CAAA;oBAEH,IAAI,aAAa,GAAG,KAAK,CAAA;oBACzB,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;oBACrE,MAAM,iBAAiB,GAAG,CAAC,GAAG,KAAK,CAAC,gBAAgB,EAAE,GAAG,uBAAuB,CAAC,CAAA;oBAEjF,KAAK,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,gBAAgB,EAAE,CAAC;wBAC5E,IAAI,CAAC;4BACH,IAAI,WAAW,EAAE,CAAC;gCAChB,UAAU,CAAC,KAAK,CAAC;oCACf,IAAI,EAAE,uBAAuB;oCAC7B,UAAU,EAAE,EAAE,CAAC,UAAU;oCACzB,MAAM,EAAE,UAAU;iCACZ,CAAC,CAAA;4BACX,CAAC;iCACI,CAAC;gCACJ,UAAU,CAAC,KAAK,CAAC;oCACf,IAAI,EAAE,mBAAmB;oCACzB,UAAU,EAAE,EAAE,CAAC,UAAU;oCACzB,SAAS,EAAE,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC;iCACnC,CAAC,CAAA;4BACX,CAAC;wBACH,CAAC;wBACD,OAAO,CAAC,EAAE,CAAC;4BACT,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,CAAC,CAAC,CAAA;wBAC3D,CAAC;wBAED,MAAM,aAAa,GAAG,iBAAiB,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAA;wBAC7D,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;4BAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC;gCACvE,IAAI,WAAW,EAAE,CAAC;oCAChB,OAAO;wCACL,GAAG,CAAC;wCACJ,KAAK,EAAE,kBAAkB;wCACzB,MAAM,EAAE,UAAU;qCACnB,CAAA;gCACH,CAAC;gCACD,OAAO;oCACL,GAAG,CAAC;oCACJ,KAAK,EAAE,cAAc;oCACrB,SAAS,EAAE,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC;iCAC1C,CAAA;4BACH,CAAC;4BACD,OAAO,CAAC,CAAA;wBACV,CAAC,CAAC,CAAA;wBAEF,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,EAAE;4BAC5E,EAAE,EAAE,iBAAiB,CAAC,EAAE;4BACxB,IAAI,EAAE,iBAAiB,CAAC,IAAI;4BAC5B,OAAO,EAAE,OAAO;4BAChB,SAAS,EAAE,iBAAiB,CAAC,SAAS;4BACtC,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;yBAChC,CAAC,CAAA;wBAEF,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;wBAEzC,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;4BACnC,EAAE,EAAE,iBAAiB,CAAC,EAAE;4BACxB,QAAQ,EAAE,EAAE;4BACZ,KAAK,EAAE,iBAAiB,CAAC,EAAE;4BAC3B,OAAO,EAAE,WAAW;4BACpB,OAAO,EAAE,WAAW;4BACpB,MAAM,EAAE,UAAU;yBACnB,CAAC,CAAA;wBAEF,IAAI,SAAS,GAAG,KAAK,CAAA;wBACrB,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;4BAC5D,IAAI,oBAAoB,EAAE,CAAC;gCACzB,SAAS,GAAG,IAAI,CAAA;4BAClB,CAAC;wBACH,CAAC;wBAED,IAAI,CAAC,SAAS,EAAE,CAAC;4BACf,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAC5C,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;gCAC5D,IAAI,oBAAoB,EAAE,CAAC;oCACzB,SAAS,GAAG,IAAI,CAAA;gCAClB,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,IAAI,SAAS,EAAE,CAAC;4BACd,UAAU,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAS,CAAC,CAAA;4BAC3D,aAAa,GAAG,IAAI,CAAA;4BACpB,MAAK;wBACP,CAAC;oBACH,CAAC;oBAED,aAAa,GAAG,iBAAiB,CAAA;oBAEjC,IAAI,aAAa,EAAE,CAAC;wBAClB,MAAK;oBACP,CAAC;gBACH,CAAC;gBACD,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,EAAE;oBACpE,GAAG,aAAa;oBAChB,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAA;gBACF,mBAAmB,GAAG,aAAa,CAAA;gBACnC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,EAAE,WAAW,EAAE,WAAW,CAAC,CAAA;oBACpF,eAAe,GAAG,WAAW,CAAA;gBAC/B,CAAC;gBACD,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;gBAC/D,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;gBACpC,KAAK,WAAW,EAAE,CAAA;gBAClB,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC/D,CAAC;YACD,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACnB,IAAI,eAAe,KAAK,WAAW,EAAE,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,EAAE,WAAW,EAAE,WAAW,CAAC,CAAA;wBACpF,eAAe,GAAG,WAAW,CAAA;oBAC/B,CAAC;oBACD,OAAO,cAAc,EAAE,CAAC;wBACtB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,cAAc,CAAC,CAAA;oBACzE,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YAC/B,CAAC;SACF,CAAC,CAAA;QAEF,mBAAmB;QAEnB,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,eAAe,CAAC;YAChF,SAAS,CAAC,KAAU,EAAE,UAAe;gBACnC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;oBAChC,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACjC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;oBACpE,OAAO;gBACT,CAAC;gBAED,UAAU,CAAC,OAAO,CAAC,KAAY,CAAC,CAAA;YAClC,CAAC;SACF,CAAC,CAAC,CAAA;QAEH,OAAO;YACL,SAAS,EAAE,cAAc,CAAC,EAAE;YAC5B,cAAc;YACd,eAAe,EAAE,OAAO;YACxB,MAAM,EAAE,wBAAwB;YAChC,WAAW;SACZ,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,QAAgB,EAAE,QAAoB;QACvE,sEAAsE;QACtE,OAAM;IACR,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,SAAuB;QAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC/C,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,MAAM,CAAA;YACf,CAAC;YACD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACzC,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;oBACxD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAA;YAC7C,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;;AArkBH,sBA0kBC;AA2DiB,sBAAK;AA5mBG,sBAAgB,GAAG,CAAC,eAAe,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAA;AAikBzF,SAAgB,KAAK,CAAU,MAA4B;IACzD,MAAM,eAAgB,SAAQ,KAAc;QAG1C;YACE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;YAHf,aAAQ,GAAG,MAAM,CAAA;QAIjC,CAAC;QAES,gBAAgB;YACxB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC5B,OAAO;oBACL,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,aAAa,IAAI,IAAI;oBAC5D,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,IAAI,IAAI;oBAClE,GAAG,EAAE,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,IAAI;iBACzC,CAAA;YACH,CAAC;YACD,OAAO,KAAK,CAAC,gBAAgB,EAAE,CAAA;QACjC,CAAC;QAES,KAAK,CAAC,iBAAiB,CAAC,OAA+B;YAC/D,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACrC,CAAC;QAES,KAAK,CAAC,UAAU,CAAC,OAA+B,EAAE,UAA4B;YACtF,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAC1C,CAAC;QAES,KAAK,CAAC,UAAU,CAAC,OAA+B;YACxD,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAChC,CAAC;QAES,QAAQ,CAAC,OAA+B;YAChD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACvC,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC9B,CAAC;YACD,OAAO,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAChD,CAAC;KACF;IACD,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;IACtC,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;AACtD,CAAC;AA6CD,SAAS,oBAAoB,CAC3B,MAAqC;IAErC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;IACvF,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAA;IAC5F,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACrF,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAA+B;IAE/B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;IACH,CAAC;IACD,OAAO,OAA4C,CAAA;AACrD,CAAC;AAED,SAAgB,WAAW,CAAC,EAA2B;IACrD,MAAM,iBAAiB,GAAG,CAA4C,WAAwB,EAAE,EAAE;QAGhG,MAAM,gBAAgB,GAAoC,CAAC,OAAO,EAAE,EAAE,CACpE,WAAW,CAAC,OAAiC,CAAC,CAAA;QAEhD,MAAM,WAAW,GAAkC;YACjD,EAAE;YACF,OAAO,EAAE,gBAAgB;SAC1B,CAAA;QAED,MAAM,OAAO,GAAgC;YACzC,YAAY,CAAC,YAAY;gBACvB,WAAW,CAAC,YAAY,GAAG,CAAC,OAAO,EAAE,EAAE,CACrC,YAAY,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAA;gBACnD,OAAO,OAAO,CAAA;YAChB,CAAC;YACC,KAAK,CAAC,YAAY;gBAChB,WAAW,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAC1C,YAAY,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,CAAA;gBAC/D,OAAO,OAAO,CAAA;YAChB,CAAC;YACD,KAAK,CAAC,KAAK;gBACP,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;oBAChC,WAAW,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE,EAAE,CAC9B,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAA;gBAC5C,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;gBAC3B,CAAC;gBACH,OAAO,OAAO,CAAA;YAChB,CAAC;YACD,IAAI,CAAC,OAAO;gBACV,WAAW,CAAC,IAAI,GAAG,OAAO,CAAA;gBAC1B,OAAO,OAAO,CAAA;YAChB,CAAC;YACD,gBAAgB,CAAC,SAAS;gBACxB,WAAW,CAAC,gBAAgB,GAAG,SAAS,CAAA;gBACxC,OAAO,OAAO,CAAA;YAChB,CAAC;YACD,MAAM;gBACJ,oBAAoB,CAAC,WAAW,CAAC,CAAA;gBACjC,OAAO,WAAW,CAAA;YACpB,CAAC;YACD,KAAK;gBACH,oBAAoB,CAAC,WAAW,CAAC,CAAA;gBACjC,OAAO,KAAK,CAAC,WAAW,CAAC,CAAA;YAC3B,CAAC;SACF,CAAA;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,OAAO;QACL,OAAO,EAAE,iBAAiB;QAC1B,UAAU,EAAE,iBAAiB;KAC9B,CAAA;AACH,CAAC","sourcesContent":["import { init, id, tx, lookup, InstaQLEntity } from \"@instantdb/admin\"\nimport { convertToModelMessages, createUIMessageStream, generateText, ModelMessage, smoothStream, stepCountIs, streamText, Tool, tool, UIMessageStreamWriter } from \"ai\"\nimport { openai } from \"@ai-sdk/openai\"\nimport { z } from \"zod\"\n\nimport { UIMessage } from 'ai';\nimport { initLogger } from \"braintrust\";\nimport { AgentService, ContextEvent, ContextIdentifier, StoredContext } from \"./service\";\nimport { ASSISTANT_MESSAGE_TYPE, convertEventsToModelMessages, convertEventToModelMessages, convertModelMessageToEvent, createAssistantEventFromUIMessages, createUserEventFromUIMessages, ResponseMessage, SYSTEM_MESSAGE_TYPE } from \"./events\";\n\n// Inicializar Braintrust logger\nconst logger = initLogger({\n projectName: \"pulzar platform\",\n apiKey: process.env.BRAINTRUST_API_KEY,\n});\n\n// Define your custom message type with data part schemas\nexport type AgentMessage = UIMessage<\n never, // metadata type\n {\n weather: {\n city: string;\n weather?: string;\n status: 'loading' | 'success';\n };\n notification: {\n message: string;\n level: 'info' | 'warning' | 'error';\n };\n } // data parts type\n>;\n\nexport interface AgentOptions {\n onEventCreated?: (event: any) => void | Promise<void>\n evaluateToolCalls?: (toolCalls: any[]) => Promise<{ success: boolean; message?: string }>\n onToolCallExecuted?: (executionEvent: any) => void | Promise<void>\n onEnd?: (lastEvent: ContextEvent) => void | { end?: boolean } | Promise<void | { end?: boolean }>\n}\n\nexport interface ProgressStreamOptions {\n reasoningEffort?: \"off\" | \"low\" | \"medium\" | \"high\"\n webSearch?: boolean\n}\n\nexport type DataStreamWriter = UIMessageStreamWriter<AgentMessage>\nconst createDataStream = createUIMessageStream;\n\n\nexport abstract class Story<Context> {\n protected db: ReturnType<typeof init>\n protected agentService: AgentService\n\n constructor(db: ReturnType<typeof init>, private opts: AgentOptions = {}) {\n this.db = db\n this.agentService = new AgentService(db)\n }\n\n protected abstract buildSystemPrompt(context: StoredContext<Context>, ...args: any[]): Promise<string> | string\n protected abstract buildTools(context: StoredContext<Context>, dataStream: DataStreamWriter): Promise<Record<string, Tool>>\n protected abstract initialize(context: StoredContext<Context>): Promise<Context>\n\n protected getModel(context: StoredContext<Context>) {\n return \"openai/gpt-5\"\n }\n\n protected includeBaseTools(): { createMessage: boolean; requestDirection: boolean; end: boolean } {\n return { createMessage: true, requestDirection: true, end: true }\n }\n\n protected async getFinalizationToolNames(): Promise<string[]> {\n return []\n }\n\n private static readonly FINAL_TOOL_NAMES = [\"createMessage\", \"requestDirection\", \"end\"]\n\n protected getBaseTools(dataStream: DataStreamWriter, threadId: string): Record<string, Tool> {\n const include = this.includeBaseTools()\n const baseTools: Record<string, Tool> = {}\n\n if (include.createMessage) {\n baseTools.createMessage = tool({\n description: \"Send a message to the user. Use for final confirmations or information.\",\n inputSchema: z.object({\n message: z.string().describe(\"Message for the user in markdown format\")\n }),\n })\n }\n\n if (include.requestDirection) {\n baseTools.requestDirection = tool({\n description: \"Ask a human for guidance when blocked or unsure.\",\n inputSchema: z.object({\n issue: z.string(),\n context: z.string(),\n suggestedActions: z.array(z.string()).optional(),\n urgency: z.enum([\"low\", \"medium\", \"high\"]).default(\"medium\"),\n }),\n })\n }\n\n if (include.end) {\n baseTools.end = tool({\n description: \"End the current interaction loop.\",\n inputSchema: z.object({}).strict(),\n execute: async () => {\n return { success: true, message: \"Ended\" }\n },\n })\n }\n\n return baseTools\n }\n\n protected async executeCreateMessage(\n eventId: string,\n args: { message: string; type: \"info\" | \"confirmation\" | \"warning\" | \"error\" | \"success\"; includeContext?: boolean },\n threadId: string,\n dataStream?: DataStreamWriter,\n ): Promise<any> {\n const assistantMessage = { id: eventId, role: \"assistant\" as const, content: args.message, createdAt: new Date() } as any\n try {\n await this.saveMessagesToThread(threadId, [assistantMessage])\n } catch { }\n if (dataStream) {\n //dataStream.writeData({ type: \"user-response\", message: args.message, responseType: args.type, includeContext: Boolean(args.includeContext), timestamp: new Date().toISOString() } as any)\n }\n return { success: true, message: args.message, data: { messageId: assistantMessage.id, threadId } }\n }\n\n protected async executeRequestDirection(\n eventId: string,\n args: { issue: string; context: string; suggestedActions?: string[]; urgency: \"low\" | \"medium\" | \"high\" },\n threadId: string,\n _dataStream?: DataStreamWriter,\n ): Promise<any> {\n const systemMessage = { id: eventId, role: \"assistant\" as const, content: `Direction requested: ${args.issue}\\nContext: ${args.context}`, createdAt: new Date() } as any\n return { success: true, message: \"Direction requested\", data: { messageId: systemMessage.id, threadId } }\n }\n\n public async progressStream(\n incomingEvent: ContextEvent,\n contextIdentifier: ContextIdentifier | null,\n options?: ProgressStreamOptions\n ) {\n\n // get or create context\n const currentContext = await this.agentService.getOrCreateContext<Context>(contextIdentifier)\n\n const contextSelector: ContextIdentifier = contextIdentifier?.id\n ? { id: contextIdentifier.id }\n : contextIdentifier?.key\n ? { key: contextIdentifier.key }\n : { id: currentContext.id }\n\n // save incoming event\n const triggerEvent = await this.agentService.saveEvent(contextSelector, incomingEvent)\n\n const triggerEventId = triggerEvent.id // trigger event id\n const eventId = id() // reaction event id\n\n // Set context status to \"streaming\" before creating execution\n await this.agentService.updateContextStatus(contextSelector, \"streaming\")\n\n // create execution and set context status\n const execution = await this.agentService.createExecution(contextSelector, triggerEventId, eventId)\n const executionId = execution.id\n\n let latestReactionEvent: ContextEvent | null = null\n let executionStatus: \"executing\" | \"completed\" | \"failed\" = \"executing\"\n\n const markFailure = async () => {\n if (latestReactionEvent && latestReactionEvent.status !== \"failed\") {\n try {\n latestReactionEvent = await this.agentService.updateEvent(latestReactionEvent.id, {\n ...latestReactionEvent,\n status: \"failed\",\n })\n }\n catch (eventError) {\n console.error(\"Failed to mark reaction event as failed\", eventError)\n }\n }\n\n if (executionStatus === \"executing\") {\n try {\n await this.agentService.completeExecution(contextSelector, executionId, \"failed\")\n executionStatus = \"failed\"\n }\n catch (executionError) {\n console.error(\"Failed to mark execution as failed\", executionError)\n }\n }\n }\n\n const dataStreamResult = createDataStream({\n execute: async ({ writer: dataStream }: { writer: DataStreamWriter }) => {\n let loopSafety = 0\n const MAX_LOOPS = 20\n\n // load previous events (already in chronological order from InstantDB)\n const events: ContextEvent[] = await this.agentService.getEvents(contextSelector)\n const contextId = currentContext.id\n \n console.log(\"[agent] Loaded events from InstantDB:\", {\n contextId,\n eventsCount: events.length,\n eventsPreview: events.slice(-3).map((e: any) => ({\n id: e.id,\n type: e.type,\n createdAt: e.createdAt\n }))\n })\n\n let reactionEvent = await this.agentService.saveEvent(contextSelector, {\n id: eventId,\n type: \"assistant\",\n channel: \"agent\",\n createdAt: new Date().toISOString(),\n content: { parts: [] },\n status: \"pending\",\n })\n latestReactionEvent = reactionEvent\n\n dataStream.write({ type: \"event-start\", data: { eventId: eventId } } as any)\n while (loopSafety < MAX_LOOPS) {\n\n dataStream.write({ type: \"start-step\" })\n\n loopSafety++\n\n // Read context\n const currentContext = await this.agentService.getContext<Context>(contextSelector)\n dataStream.write({ type: \"data-context-id\", data: { contextId: currentContext.id } } as any)\n\n // Initialize on each loop and get new context data\n const contextContent = await this.initialize(currentContext)\n\n // Update context\n const updatedContext = await this.agentService.updateContextContent({ id: currentContext.id }, contextContent)\n\n // Build tools\n const subclassToolsAll = await this.buildTools(updatedContext, dataStream)\n\n // Build base tools for agent loop control\n const baseTools = this.getBaseTools(dataStream, updatedContext.id)\n const tools: Record<string, Tool> = { ...subclassToolsAll, ...baseTools }\n\n // Add web search if enabled\n if (options?.webSearch) {\n tools.web_search = openai.tools.webSearch() as any\n }\n\n // Extract execute functions from tools\n const executeMap: Record<string, (args: any) => Promise<any>> = {}\n for (const [name, t] of Object.entries(subclassToolsAll)) {\n if ((t as any).execute) {\n executeMap[name] = (t as any).execute as (args: any) => Promise<any>\n }\n }\n\n const include = this.includeBaseTools()\n if (include.createMessage) {\n executeMap[\"createMessage\"] = (args: any) => this.executeCreateMessage(eventId, args, updatedContext.id, dataStream)\n }\n if (include.requestDirection) {\n executeMap[\"requestDirection\"] = (args: any) => this.executeRequestDirection(eventId, args, updatedContext.id, dataStream)\n }\n\n for (const [, t] of Object.entries(tools)) {\n delete (t as any).execute\n }\n\n const messagesForModel: ModelMessage[] = await convertEventsToModelMessages(\n reactionEvent.status !== \"pending\"\n ? [...events, reactionEvent]\n : [...events],\n this.db\n )\n\n const systemPrompt = await this.buildSystemPrompt(updatedContext)\n\n const providerOptions: any = {}\n const hasReasoning = options?.reasoningEffort && options.reasoningEffort !== \"off\"\n \n if (hasReasoning) {\n providerOptions.openai = {\n reasoningEffort: options.reasoningEffort,\n reasoningSummary: 'detailed',\n }\n console.log(\"[agent] Reasoning enabled:\", {\n reasoningEffort: options.reasoningEffort,\n model: this.getModel(updatedContext),\n providerOptions\n })\n } else {\n console.log(\"[agent] Reasoning disabled or off\")\n }\n\n // Allow more steps when using reasoning to give the model time to think\n const maxSteps = hasReasoning ? 5 : 1\n\n const result = streamText({\n model: this.getModel(updatedContext),\n system: systemPrompt,\n messages: messagesForModel,\n tools,\n toolChoice: \"required\",\n onStepFinish: (step) => {\n console.log(\"onStepFinish\", step)\n },\n stopWhen: stepCountIs(maxSteps),\n experimental_transform: smoothStream({\n delayInMs: 30,\n chunking: 'word',\n }),\n ...(Object.keys(providerOptions).length > 0 && { providerOptions }),\n })\n\n result.consumeStream()\n\n // create promise\n let resolveFinish!: (value: ContextEvent) => void\n let rejectFinish!: (reason?: unknown) => void\n const finishPromise = new Promise<ContextEvent>((resolve, reject) => {\n resolveFinish = resolve\n rejectFinish = reject\n })\n\n dataStream.merge(result.toUIMessageStream({\n sendStart: false,\n generateMessageId: () => {\n return eventId\n },\n messageMetadata(options) {\n return {\n eventId: eventId,\n }\n },\n onFinish: ({ messages }) => {\n console.log(\"[agent] Messages finished:\", messages.map((m: any) => ({\n role: m.role,\n parts: m.parts?.map((p: any) => ({\n type: p.type,\n text: p.text?.substring(0, 100),\n hasReasoning: p.type === \"reasoning\"\n }))\n })))\n const lastEvent = createAssistantEventFromUIMessages(eventId, messages)\n resolveFinish(lastEvent)\n },\n onError: (e: unknown) => {\n console.error(\"Agent error:\", e)\n rejectFinish(e)\n const message = e instanceof Error ? e.message : String(e)\n return message\n }\n }).pipeThrough(new TransformStream({\n transform(chunk: any, controller: any) {\n\n if (chunk.type === \"start\") {\n return;\n }\n\n if (chunk.type === \"finish-step\") {\n return;\n }\n\n if (chunk.type === \"start-step\") {\n return\n }\n\n if (chunk.type === \"finish\") {\n return;\n }\n\n controller.enqueue(chunk as any)\n }\n })))\n\n // wait for the on finish here\n const lastEvent = await finishPromise\n\n const toolCalls = lastEvent.content.parts.reduce((acc: any[], p: any) => {\n if (typeof p.type === \"string\" && p.type.startsWith(\"tool-\")) {\n const toolName = p.type.split(\"-\")[1]\n acc.push({ toolCallId: p.toolCallId, toolName: toolName, args: p.input });\n }\n return acc;\n }, []);\n\n console.log(\"agent.toolCalls.detected\", {\n eventId,\n toolCalls: toolCalls.map((call: any) => ({ toolCallId: call.toolCallId, toolName: call.toolName }))\n });\n\n if (!toolCalls.length) {\n const shouldEndInteraction = await this.callOnEnd(lastEvent)\n if (shouldEndInteraction) {\n break\n }\n continue\n }\n const reactionEventWithParts = {\n ...reactionEvent,\n content: { parts: [...reactionEvent.content.parts, ...lastEvent.content.parts] },\n }\n\n let currentEventState = await this.agentService.updateEvent(reactionEvent.id, reactionEventWithParts)\n latestReactionEvent = currentEventState\n\n const executionResults = await Promise.all(toolCalls.map(async (tc: any) => {\n console.log(\"agent.toolCall.selected\", {\n eventId,\n toolCallId: tc.toolCallId,\n toolName: tc.toolName\n })\n\n let execSuccess = true\n let execMessage = \"Executed\"\n let execResult: any = null\n try {\n const execFn = executeMap[tc.toolName]\n if (execFn) {\n console.log(\"agent.toolCall.execute.start\", { toolCallId: tc.toolCallId, toolName: tc.toolName })\n execResult = await execFn(tc.args)\n execSuccess = execResult?.success !== false\n execMessage = execResult?.message || execMessage\n console.log(\"agent.toolCall.execute.success\", {\n toolCallId: tc.toolCallId,\n toolName: tc.toolName,\n success: execSuccess\n })\n console.log(\"agent.toolCall.execute.result\", {\n toolCallId: tc.toolCallId,\n toolName: tc.toolName,\n result: execResult\n })\n }\n }\n catch (err: any) {\n execSuccess = false\n execMessage = err.message\n console.error(\"agent.toolCall.execute.error\", {\n toolCallId: tc.toolCallId,\n toolName: tc.toolName,\n error: err\n })\n }\n\n return { tc, execSuccess, execMessage, execResult }\n }))\n\n let exitOuterLoop = false\n const customFinalizationTools = await this.getFinalizationToolNames()\n const allFinalToolNames = [...Story.FINAL_TOOL_NAMES, ...customFinalizationTools]\n\n for (const { tc, execSuccess, execMessage, execResult } of executionResults) {\n try {\n if (execSuccess) {\n dataStream.write({\n type: \"tool-output-available\",\n toolCallId: tc.toolCallId,\n output: execResult,\n } as any)\n }\n else {\n dataStream.write({\n type: \"tool-output-error\",\n toolCallId: tc.toolCallId,\n errorText: String(execMessage || \"Error\"),\n } as any)\n }\n }\n catch (e) {\n console.error(\"Failed to write tool result to stream\", e)\n }\n\n const existingParts = currentEventState?.content?.parts || []\n const mergedParts = existingParts.map((p: any) => {\n if (p.type === `tool-${tc.toolName}` && p.toolCallId === tc.toolCallId) {\n if (execSuccess) {\n return {\n ...p,\n state: \"output-available\",\n output: execResult,\n }\n }\n return {\n ...p,\n state: \"output-error\",\n errorText: String(execMessage || \"Error\"),\n }\n }\n return p\n })\n\n currentEventState = await this.agentService.updateEvent(currentEventState.id, {\n id: currentEventState.id,\n type: currentEventState.type,\n channel: \"agent\",\n createdAt: currentEventState.createdAt,\n content: { parts: mergedParts },\n })\n\n dataStream.write({ type: \"finish-step\" })\n\n await this.opts.onToolCallExecuted?.({\n id: currentEventState.id,\n toolCall: tc,\n event: currentEventState.id,\n success: execSuccess,\n message: execMessage,\n result: execResult,\n })\n\n let shouldEnd = false\n if (!execSuccess) {\n const shouldEndInteraction = await this.callOnEnd(lastEvent)\n if (shouldEndInteraction) {\n shouldEnd = true\n }\n }\n\n if (!shouldEnd) {\n if (allFinalToolNames.includes(tc.toolName)) {\n const shouldEndInteraction = await this.callOnEnd(lastEvent)\n if (shouldEndInteraction) {\n shouldEnd = true\n }\n }\n }\n\n if (shouldEnd) {\n dataStream.write({ type: \"finish\", override: true } as any)\n exitOuterLoop = true\n break\n }\n }\n\n reactionEvent = currentEventState\n\n if (exitOuterLoop) {\n break\n }\n }\n reactionEvent = await this.agentService.updateEvent(reactionEvent.id, {\n ...reactionEvent,\n status: \"completed\",\n })\n latestReactionEvent = reactionEvent\n try {\n await this.agentService.completeExecution(contextSelector, executionId, \"completed\")\n executionStatus = \"completed\"\n }\n catch (error) {\n console.error(\"Failed to mark execution as completed\", error)\n }\n },\n onError: (error) => {\n console.error(\"Agent error:\", error)\n void markFailure()\n return error instanceof Error ? error.message : String(error)\n },\n onFinish: async () => {\n if (executionStatus === \"executing\") {\n try {\n await this.agentService.completeExecution(contextSelector, executionId, \"completed\")\n executionStatus = \"completed\"\n }\n catch (executionError) {\n console.error(\"Failed to finalize execution on finish\", executionError)\n }\n }\n console.log(\"Agent finished\")\n }\n })\n\n // start the stream\n\n const dataStreamFilteredResult = dataStreamResult.pipeThrough(new TransformStream({\n transform(chunk: any, controller: any) {\n if (chunk.type === \"start\") {\n console.log(\"start\", chunk.data)\n return;\n }\n\n if (chunk.type === \"event-start\") {\n controller.enqueue({ type: \"start\", messageId: chunk.data.eventId })\n return;\n }\n\n controller.enqueue(chunk as any)\n }\n }))\n\n return {\n contextId: currentContext.id,\n triggerEventId,\n reactionEventId: eventId,\n stream: dataStreamFilteredResult,\n executionId,\n }\n }\n\n private async saveMessagesToThread(threadId: string, messages: Array<any>) {\n // Placeholder for persistence hook. Not implemented in current scope.\n return\n }\n\n private async callOnEnd(lastEvent: ContextEvent): Promise<boolean> {\n if (!this.opts.onEnd) {\n return true\n }\n\n try {\n const result = await this.opts.onEnd(lastEvent)\n if (typeof result === \"boolean\") {\n return result\n }\n if (result && typeof result === \"object\") {\n if (Object.prototype.hasOwnProperty.call(result, \"end\")) {\n return Boolean(result.end)\n }\n }\n return true\n } catch (error) {\n console.error(\"onEnd callback failed\", error)\n return true\n }\n }\n\n\n\n\n}\n\nexport interface AgentConfig<Context> {\n db: ReturnType<typeof init>\n context: (context: StoredContext<Context>) => Promise<Context> | Context\n systemPrompt: (context: StoredContext<Context>) => Promise<string> | string\n tools: (context: StoredContext<Context>, dataStream: DataStreamWriter) => Promise<Record<string, Tool>> | Record<string, Tool>\n model?: string | ((context: StoredContext<Context>) => string)\n opts?: AgentOptions\n includeBaseTools?: { createMessage?: boolean; requestDirection?: boolean; end?: boolean }\n}\n\nexport type AgentInstance<Context> = Story<Context> & {\n readonly __config: AgentConfig<Context>\n}\n\nexport function agent<Context>(config: AgentConfig<Context>): AgentInstance<Context> {\n class FunctionalAgent extends Story<Context> {\n public readonly __config = config\n\n constructor() {\n super(config.db, config.opts)\n }\n\n protected includeBaseTools(): { createMessage: boolean; requestDirection: boolean; end: boolean } {\n if (config.includeBaseTools) {\n return {\n createMessage: config.includeBaseTools.createMessage ?? true,\n requestDirection: config.includeBaseTools.requestDirection ?? true,\n end: config.includeBaseTools.end ?? true,\n }\n }\n return super.includeBaseTools()\n }\n\n protected async buildSystemPrompt(context: StoredContext<Context>) {\n return config.systemPrompt(context)\n }\n\n protected async buildTools(context: StoredContext<Context>, dataStream: DataStreamWriter) {\n return config.tools(context, dataStream)\n }\n\n protected async initialize(context: StoredContext<Context>) {\n return config.context(context)\n }\n\n protected getModel(context: StoredContext<Context>) {\n if (typeof config.model === 'function') {\n return config.model(context)\n }\n return config.model || super.getModel(context)\n }\n }\n const instance = new FunctionalAgent()\n return Object.assign(instance, { __config: config })\n}\n\n// Alias para retrocompatibilidad\nexport { Story as Agent }\n\ntype InitializedStoredContext<Context> = StoredContext<Context> & { content: Context }\n\ntype BuilderSystemPrompt<Context> = (\n context: InitializedStoredContext<Context>\n) => Promise<string> | string\n\ntype BuilderTools<Context> = (\n context: InitializedStoredContext<Context>,\n dataStream: DataStreamWriter\n) => Promise<Record<string, Tool>> | Record<string, Tool>\n\ntype BuilderModel<Context> =\n | string\n | ((context: InitializedStoredContext<Context>) => string)\n\ntype BuilderIncludeBaseTools = { createMessage?: boolean; requestDirection?: boolean; end?: boolean }\n\ntype FluentAgentBuilder<Context> = {\n systemPrompt(fn: BuilderSystemPrompt<Context>): FluentAgentBuilder<Context>\n tools(fn: BuilderTools<Context>): FluentAgentBuilder<Context>\n model(model: BuilderModel<Context>): FluentAgentBuilder<Context>\n opts(opts: AgentOptions): FluentAgentBuilder<Context>\n includeBaseTools(baseTools: BuilderIncludeBaseTools): FluentAgentBuilder<Context>\n config(): AgentConfig<Context>\n build(): AgentInstance<Context>\n}\n\ntype AnyContextInitializer = (context: StoredContext<any>) => Promise<any> | any\n\ntype InferContextFromInitializer<I extends AnyContextInitializer> = Awaited<ReturnType<I>>\n\ntype CreateAgentEntry = {\n context<Initializer extends AnyContextInitializer>(\n initializer: Initializer\n ): FluentAgentBuilder<InferContextFromInitializer<Initializer>>\n initialize<Initializer extends AnyContextInitializer>(\n initializer: Initializer\n ): FluentAgentBuilder<InferContextFromInitializer<Initializer>>\n}\n\nfunction assertConfigComplete<Context>(\n config: Partial<AgentConfig<Context>>\n): asserts config is AgentConfig<Context> {\n if (!config.db) {\n throw new Error(\"createAgent: Debes proporcionar db como parámetro.\")\n }\n\n if (!config.context) {\n throw new Error(\"createAgent: Debes definir context() antes de construir el agente.\")\n }\n\n if (!config.systemPrompt) {\n throw new Error(\"createAgent: Debes definir systemPrompt() antes de construir el agente.\")\n }\n\n if (!config.tools) {\n throw new Error(\"createAgent: Debes definir tools() antes de construir el agente.\")\n }\n}\n\nfunction ensureInitializedContext<Context>(\n context: StoredContext<Context>\n): InitializedStoredContext<Context> {\n if (!context.content) {\n throw new Error(\n \"createAgent: context() debe devolver datos antes de usar systemPrompt/tools.\"\n )\n }\n return context as InitializedStoredContext<Context>\n}\n\nexport function createAgent(db: ReturnType<typeof init>): CreateAgentEntry {\n const initializeBuilder = <Initializer extends AnyContextInitializer>(initializer: Initializer) => {\n type Context = InferContextFromInitializer<Initializer>\n\n const typedInitializer: AgentConfig<Context>[\"context\"] = (context) =>\n initializer(context as StoredContext<Context>)\n\n const fluentState: Partial<AgentConfig<Context>> = {\n db,\n context: typedInitializer,\n }\n\n const builder: FluentAgentBuilder<Context> = {\n systemPrompt(systemPrompt) {\n fluentState.systemPrompt = (context) =>\n systemPrompt(ensureInitializedContext(context))\n return builder\n },\n tools(toolsFactory) {\n fluentState.tools = (context, dataStream) =>\n toolsFactory(ensureInitializedContext(context), dataStream)\n return builder\n },\n model(model) {\n if (typeof model === \"function\") {\n fluentState.model = (context) =>\n model(ensureInitializedContext(context))\n } else {\n fluentState.model = model\n }\n return builder\n },\n opts(options) {\n fluentState.opts = options\n return builder\n },\n includeBaseTools(baseTools) {\n fluentState.includeBaseTools = baseTools\n return builder\n },\n config() {\n assertConfigComplete(fluentState)\n return fluentState\n },\n build() {\n assertConfigComplete(fluentState)\n return agent(fluentState)\n },\n }\n\n return builder\n }\n\n return {\n context: initializeBuilder,\n initialize: initializeBuilder,\n }\n}\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-parser.js","sourceRoot":"","sources":["../src/document-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"document-parser.js","sourceRoot":"","sources":["../src/document-parser.ts"],"names":[],"mappings":"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","sourcesContent":["\r\nimport { id, init } from '@instantdb/admin';\r\n\r\n\r\nconst LLAMA_CLOUD_BASE_URL = 'https://api.cloud.llamaindex.ai/api/v1';\r\n\r\ninterface DocumentPage {\r\n id: string;\r\n text: string;\r\n}\r\n\r\nexport interface DocumentToProcess {\r\n buffer: Buffer;\r\n fileName: string;\r\n path: string;\r\n fileId: string;\r\n}\r\n\r\ninterface LlamaParseUploadResponse {\r\n id: string;\r\n status: string;\r\n}\r\n\r\ninterface LlamaParseStatusResponse {\r\n status: string;\r\n}\r\n\r\ninterface LlamaParseResultResponse {\r\n markdown?: string;\r\n pages?: Array<{ page: number; text: string; }>;\r\n}\r\n\r\n/**\r\n * Sube un archivo a LlamaCloud para procesamiento\r\n */\r\nasync function uploadToLlamaCloud(buffer: Buffer, fileName: string): Promise<string> {\r\n const formData = new FormData();\r\n \r\n const uint8Array = new Uint8Array(buffer);\r\n const blob = new Blob([uint8Array], { type: 'application/pdf' });\r\n formData.append('file', blob, fileName);\r\n formData.append('parse_mode', 'parse_page_with_llm');\r\n formData.append('high_res_ocr', 'true');\r\n formData.append('adaptive_long_table', 'true');\r\n formData.append('outlined_table_extraction', 'true');\r\n formData.append('output_tables_as_HTML', 'true');\r\n\r\n const response = await fetch(`${LLAMA_CLOUD_BASE_URL}/parsing/upload`, {\r\n method: 'POST',\r\n headers: {\r\n 'Authorization': `Bearer ${process.env.LLAMA_CLOUD_API_KEY}`,\r\n },\r\n body: formData\r\n });\r\n\r\n if (!response.ok) {\r\n const errorText = await response.text();\r\n throw new Error(`LlamaCloud upload failed: ${response.status} ${errorText}`);\r\n }\r\n\r\n const result = await response.json() as unknown as LlamaParseUploadResponse;\r\n return result.id;\r\n}\r\n\r\n/**\r\n * Obtiene el estado del job de procesamiento\r\n */\r\nasync function getJobStatus(jobId: string): Promise<LlamaParseStatusResponse> {\r\n const response = await fetch(`${LLAMA_CLOUD_BASE_URL}/parsing/job/${jobId}`, {\r\n method: 'GET',\r\n headers: {\r\n 'Authorization': `Bearer ${process.env.LLAMA_CLOUD_API_KEY}`,\r\n }\r\n });\r\n\r\n if (!response.ok) {\r\n const errorText = await response.text();\r\n throw new Error(`LlamaCloud status fetch failed: ${response.status} ${errorText}`);\r\n }\r\n\r\n return await response.json() as unknown as LlamaParseStatusResponse;\r\n}\r\n\r\n/**\r\n * Obtiene el resultado del procesamiento de LlamaCloud\r\n */\r\nasync function getParseResult(jobId: string): Promise<LlamaParseResultResponse> {\r\n const response = await fetch(`${LLAMA_CLOUD_BASE_URL}/parsing/job/${jobId}/result/markdown`, {\r\n method: 'GET',\r\n headers: {\r\n 'Authorization': `Bearer ${process.env.LLAMA_CLOUD_API_KEY}`,\r\n }\r\n });\r\n\r\n if (!response.ok) {\r\n const errorText = await response.text();\r\n throw new Error(`LlamaCloud result fetch failed: ${response.status} ${errorText}`);\r\n }\r\n\r\n return await response.json() as unknown as LlamaParseResultResponse;\r\n}\r\n\r\n/**\r\n * Espera hasta que el procesamiento esté completo\r\n */\r\nasync function waitForProcessing(jobId: string, maxAttempts: number = 60): Promise<LlamaParseResultResponse> {\r\n for (let attempt = 0; attempt < maxAttempts; attempt++) {\r\n const statusResponse = await getJobStatus(jobId);\r\n \r\n console.log(`Job ${jobId} status: ${statusResponse.status} (attempt ${attempt + 1}/${maxAttempts})`);\r\n \r\n if (statusResponse.status === 'SUCCESS' || statusResponse.status === 'COMPLETED') {\r\n return await getParseResult(jobId);\r\n }\r\n \r\n if (statusResponse.status === 'ERROR' || statusResponse.status === 'FAILED') {\r\n throw new Error(`LlamaCloud processing failed with status: ${statusResponse.status}`);\r\n }\r\n \r\n await new Promise(resolve => setTimeout(resolve, 2000));\r\n }\r\n \r\n throw new Error('LlamaCloud processing timeout');\r\n}\r\n\r\n/**\r\n * Procesa un documento utilizando LlamaParse y almacena el resultado en la base de datos\r\n */\r\nexport async function parseAndStoreDocument(\r\n db: any,\r\n buffer: Buffer,\r\n fileName: string,\r\n path: string,\r\n fileId: string\r\n): Promise<string> {\r\n try {\r\n const existingDocument = await db.query({\r\n documents: {\r\n $: {\r\n where: { 'file.id': fileId }\r\n },\r\n file: {}\r\n }\r\n });\r\n\r\n if (existingDocument.documents && existingDocument.documents.length > 0) {\r\n const docId = existingDocument.documents[0].id;\r\n console.log(`Documento ya existe para el archivo ${fileName}: ${docId}`);\r\n return docId;\r\n }\r\n\r\n console.log(`Procesando nuevo documento: ${fileName}`);\r\n\r\n const jobId = await uploadToLlamaCloud(buffer, fileName);\r\n console.log(`Documento subido a LlamaCloud con job ID: ${jobId}`);\r\n\r\n const result = await waitForProcessing(jobId);\r\n \r\n const pages: DocumentPage[] = [];\r\n \r\n if (result.markdown) {\r\n pages.push({\r\n id: id(),\r\n text: result.markdown\r\n });\r\n }\r\n \r\n if (result.pages && result.pages.length > 0) {\r\n for (const page of result.pages) {\r\n pages.push({\r\n id: id(),\r\n text: page.text\r\n });\r\n }\r\n }\r\n\r\n if (pages.length === 0) {\r\n throw new Error('No se pudo extraer contenido del documento');\r\n }\r\n\r\n const documentId = id();\r\n await db.transact([\r\n db.tx.documents[documentId].update({\r\n content: { pages },\r\n processedAt: new Date().toISOString()\r\n }),\r\n db.tx.documents[documentId].link({\r\n file: fileId\r\n })\r\n ]);\r\n\r\n console.log(`Documento procesado con éxito: ${fileName} -> ${documentId}`);\r\n return documentId;\r\n } catch (error) {\r\n console.error(`Error al procesar el documento ${fileName}:`, error);\r\n throw error;\r\n }\r\n}\r\n\r\n/**\r\n * Procesa un conjunto de documentos en segundo plano\r\n * Puede ser utilizado con after() en Next.js o en cualquier contexto de procesamiento asíncrono\r\n */\r\nexport async function processBatchDocuments(db: any, documents: DocumentToProcess[]): Promise<string[]> {\r\n try {\r\n const promises = documents.map(doc =>\r\n parseAndStoreDocument(db, doc.buffer, doc.fileName, doc.path, doc.fileId)\r\n );\r\n\r\n const results = await Promise.all(promises);\r\n console.log('Todos los documentos procesados correctamente');\r\n return results;\r\n } catch (error) {\r\n console.error('Error en el procesamiento por lotes de documentos:', error);\r\n throw error;\r\n }\r\n} "]}
|
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":";;AAEA,sDASC;AAED,8BAcC;AA3BD,+CAAsC;AAE/B,KAAK,UAAU,qBAAqB,CAAC,MAAsH;IAChK,UAAU,CAAA;IACV,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,oBAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,iBAAiB;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC/D,OAAO,MAAM,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/D,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,SAAS,CAAC,MAA4C;IAC1E,UAAU,CAAA;IACV,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,oBAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK;YAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACzD,IAAI,OAAO,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;QACvD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YAChG,OAAO,EAAE,GAAG,EAAE,OAAO,CAAE,MAAc,CAAC,GAAG,CAAC,EAAE,CAAA;QAC9C,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":";;AAEA,sDASC;AAED,8BAcC;AA3BD,+CAAsC;AAE/B,KAAK,UAAU,qBAAqB,CAAC,MAAsH;IAChK,UAAU,CAAA;IACV,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,oBAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,iBAAiB;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC/D,OAAO,MAAM,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/D,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,SAAS,CAAC,MAA4C;IAC1E,UAAU,CAAA;IACV,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,oBAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK;YAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;QAC/C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACzD,IAAI,OAAO,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;QACvD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YAChG,OAAO,EAAE,GAAG,EAAE,OAAO,CAAE,MAAc,CAAC,GAAG,CAAC,EAAE,CAAA;QAC9C,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;AACH,CAAC","sourcesContent":["import { engine } from \"./storyEngine\"\r\n\r\nexport async function evaluateToolCallsStep(params: { storyKey: string; toolCalls: Array<{ toolCallId: string; toolName: string; args: any }>; contextId: string }) {\r\n \"use step\"\r\n try {\r\n const rt = engine.get(params.storyKey)\r\n if (!rt?.callbacks?.evaluateToolCalls) return { success: true }\r\n return await rt.callbacks.evaluateToolCalls(params.toolCalls)\r\n } catch (error: any) {\r\n return { success: false, message: error?.message ?? String(error) }\r\n }\r\n}\r\n\r\nexport async function onEndStep(params: { storyKey: string; lastEvent: any }) {\r\n \"use step\"\r\n try {\r\n const rt = engine.get(params.storyKey)\r\n if (!rt?.callbacks?.onEnd) return { end: true }\r\n const result = await rt.callbacks.onEnd(params.lastEvent)\r\n if (typeof result === \"boolean\") return { end: result }\r\n if (result && typeof result === \"object\" && Object.prototype.hasOwnProperty.call(result, \"end\")) {\r\n return { end: Boolean((result as any).end) }\r\n }\r\n return { end: true }\r\n } catch {\r\n return { end: true }\r\n }\r\n}\r\n\r\n\r\n"]}
|
package/dist/events.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { init } from "@instantdb/admin";
|
|
1
2
|
import { type ModelMessage, type UIMessage } from "ai";
|
|
2
3
|
import type { ContextEvent } from "./service";
|
|
3
4
|
export declare const USER_MESSAGE_TYPE = "user.message";
|
|
@@ -9,8 +10,8 @@ export declare const EMAIL_CHANNEL = "email";
|
|
|
9
10
|
export declare function createUserEventFromUIMessages(messages: UIMessage[]): ContextEvent;
|
|
10
11
|
export declare function createAssistantEventFromUIMessages(eventId: string, messages: UIMessage[]): ContextEvent;
|
|
11
12
|
export declare function convertToUIMessage(event: ContextEvent): UIMessage;
|
|
12
|
-
export declare function convertEventsToModelMessages(events: ContextEvent[]): Promise<ModelMessage[]>;
|
|
13
|
-
export declare function convertEventToModelMessages(event: ContextEvent): Promise<ModelMessage[]>;
|
|
13
|
+
export declare function convertEventsToModelMessages(events: ContextEvent[], db: ReturnType<typeof init>): Promise<ModelMessage[]>;
|
|
14
|
+
export declare function convertEventToModelMessages(event: ContextEvent, db: ReturnType<typeof init>): Promise<ModelMessage[]>;
|
|
14
15
|
export type AIMessage = {
|
|
15
16
|
id: string;
|
|
16
17
|
role: "user" | "assistant" | "system";
|
package/dist/events.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,IAAI,EAA6B,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAA0B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,IAAI,CAAA;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAG7C,eAAO,MAAM,iBAAiB,iBAAiB,CAAA;AAC/C,eAAO,MAAM,sBAAsB,sBAAsB,CAAA;AACzD,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,eAAO,MAAM,WAAW,QAAQ,CAAA;AAChC,eAAO,MAAM,aAAa,aAAa,CAAA;AACvC,eAAO,MAAM,aAAa,UAAU,CAAA;AAEpC,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,YAAY,CAgBjF;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,YAAY,CAgBvG;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,CAkBjE;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,YAAY,EAAE,EACtB,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,GAC1B,OAAO,CAAC,YAAY,EAAE,CAAC,CAOzB;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,YAAY,EACnB,EAAE,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,GAC1B,OAAO,CAAC,YAAY,EAAE,CAAC,CA8BzB;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,YAAY,CAwBlG"}
|
package/dist/events.js
CHANGED
|
@@ -10,10 +10,6 @@ exports.convertModelMessageToEvent = convertModelMessageToEvent;
|
|
|
10
10
|
const admin_1 = require("@instantdb/admin");
|
|
11
11
|
const ai_1 = require("ai");
|
|
12
12
|
const document_parser_1 = require("./document-parser");
|
|
13
|
-
const db = (0, admin_1.init)({
|
|
14
|
-
appId: process.env.NEXT_PUBLIC_INSTANT_APP_ID,
|
|
15
|
-
adminToken: process.env.INSTANT_APP_ADMIN_TOKEN,
|
|
16
|
-
});
|
|
17
13
|
exports.USER_MESSAGE_TYPE = "user.message";
|
|
18
14
|
exports.ASSISTANT_MESSAGE_TYPE = "assistant.message";
|
|
19
15
|
exports.SYSTEM_MESSAGE_TYPE = "system.message";
|
|
@@ -69,22 +65,23 @@ function convertToUIMessage(event) {
|
|
|
69
65
|
}
|
|
70
66
|
};
|
|
71
67
|
}
|
|
72
|
-
async function convertEventsToModelMessages(events) {
|
|
68
|
+
async function convertEventsToModelMessages(events, db) {
|
|
73
69
|
const results = [];
|
|
74
70
|
for (const event of events) {
|
|
75
|
-
const messages = await convertEventToModelMessages(event);
|
|
71
|
+
const messages = await convertEventToModelMessages(event, db);
|
|
76
72
|
results.push(messages);
|
|
77
73
|
}
|
|
78
74
|
return results.flat();
|
|
79
75
|
}
|
|
80
|
-
async function convertEventToModelMessages(event) {
|
|
76
|
+
async function convertEventToModelMessages(event, db) {
|
|
81
77
|
// convert files in message
|
|
82
78
|
// const files = event.content.parts.filter(part => part.type === "file")
|
|
83
79
|
// 1. copy event to new . we will manipulate the parts
|
|
84
80
|
// 2. each file part will be converted using convertFilePart
|
|
85
81
|
const convertedParts = await Promise.all((event.content?.parts || []).map(async (part) => {
|
|
86
|
-
|
|
87
|
-
|
|
82
|
+
// Process file parts - check for type === "file" OR presence of url/mimeType (which indicates a file)
|
|
83
|
+
if (part?.type === "file" || (part?.url && typeof part.url === "string") || part?.mimeType || part?.mediaType) {
|
|
84
|
+
return await convertFilePart(part, db);
|
|
88
85
|
}
|
|
89
86
|
return [part];
|
|
90
87
|
}));
|
|
@@ -123,39 +120,112 @@ function convertModelMessageToEvent(eventId, message) {
|
|
|
123
120
|
createdAt: message.timestamp.toISOString(),
|
|
124
121
|
};
|
|
125
122
|
}
|
|
126
|
-
async function convertFilePart(part) {
|
|
127
|
-
// file
|
|
128
|
-
//
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
//
|
|
133
|
-
|
|
134
|
-
const fileId = fileIdMatch ? fileIdMatch[1] : null;
|
|
135
|
-
if (!fileId) {
|
|
136
|
-
return [part];
|
|
137
|
-
}
|
|
123
|
+
async function convertFilePart(part, db) {
|
|
124
|
+
// Convert file parts to text using parseAndStoreDocument
|
|
125
|
+
// Uses providerMetadata.instant.fileId if available, otherwise falls back to URL lookup
|
|
126
|
+
// Get fileId and filePath from providerMetadata
|
|
127
|
+
const fileId = part.providerMetadata?.instant?.fileId || null;
|
|
128
|
+
const filePath = part.providerMetadata?.instant?.path || null;
|
|
129
|
+
// If we have a fileId, query by ID. Otherwise, try by path or URL
|
|
130
|
+
let fileRecord = undefined;
|
|
138
131
|
try {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
132
|
+
if (fileId) {
|
|
133
|
+
const fileQuery = await db.query({
|
|
134
|
+
$files: {
|
|
135
|
+
$: {
|
|
136
|
+
where: {
|
|
137
|
+
id: fileId,
|
|
138
|
+
},
|
|
139
|
+
limit: 1,
|
|
144
140
|
},
|
|
145
|
-
|
|
141
|
+
document: {},
|
|
146
142
|
},
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
}
|
|
150
|
-
|
|
143
|
+
});
|
|
144
|
+
fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined;
|
|
145
|
+
}
|
|
146
|
+
else if (filePath) {
|
|
147
|
+
// Try to find by path
|
|
148
|
+
const fileQuery = await db.query({
|
|
149
|
+
$files: {
|
|
150
|
+
$: {
|
|
151
|
+
where: {
|
|
152
|
+
path: filePath,
|
|
153
|
+
},
|
|
154
|
+
limit: 1,
|
|
155
|
+
},
|
|
156
|
+
document: {},
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined;
|
|
160
|
+
}
|
|
161
|
+
else if (part.url.startsWith("http://") || part.url.startsWith("https://")) {
|
|
162
|
+
// For HTTP/HTTPS URLs, try to find by URL
|
|
163
|
+
const fileQuery = await db.query({
|
|
164
|
+
$files: {
|
|
165
|
+
$: {
|
|
166
|
+
where: {
|
|
167
|
+
url: part.url,
|
|
168
|
+
},
|
|
169
|
+
limit: 1,
|
|
170
|
+
},
|
|
171
|
+
document: {},
|
|
172
|
+
},
|
|
173
|
+
});
|
|
174
|
+
fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined;
|
|
175
|
+
}
|
|
176
|
+
// If we still don't have a file record and have a URL, fetch and process it
|
|
177
|
+
if (!fileRecord && (part.url.startsWith("http://") || part.url.startsWith("https://"))) {
|
|
178
|
+
// Try to fetch the file directly and process it
|
|
179
|
+
const fileResponse = await fetch(part.url);
|
|
180
|
+
if (fileResponse.ok) {
|
|
181
|
+
const buffer = await fileResponse.arrayBuffer();
|
|
182
|
+
const contentType = part.mediaType || fileResponse.headers.get("content-type") || "application/octet-stream";
|
|
183
|
+
const fileName = part.filename || "file";
|
|
184
|
+
// Use a temporary path if we don't have one
|
|
185
|
+
const tempPath = filePath || `/temp/${Date.now()}-${fileName}`;
|
|
186
|
+
const documentId = await (0, document_parser_1.parseAndStoreDocument)(db, Buffer.from(buffer), tempPath, fileName, (0, admin_1.id)());
|
|
187
|
+
const documentQuery = await db.query({
|
|
188
|
+
documents: {
|
|
189
|
+
$: {
|
|
190
|
+
where: {
|
|
191
|
+
id: documentId,
|
|
192
|
+
},
|
|
193
|
+
limit: 1,
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
});
|
|
197
|
+
const documentRecord = Array.isArray(documentQuery.documents) ? documentQuery.documents[0] : undefined;
|
|
198
|
+
const parts = [];
|
|
199
|
+
parts.push({
|
|
200
|
+
type: "text",
|
|
201
|
+
text: `User attached a file.\nFile Name: "${fileName}"\nMedia Type: ${contentType}`,
|
|
202
|
+
});
|
|
203
|
+
if (documentRecord?.content && Array.isArray(documentRecord.content.pages)) {
|
|
204
|
+
const pages = documentRecord.content.pages;
|
|
205
|
+
const pageTexts = pages
|
|
206
|
+
.map((page, index) => {
|
|
207
|
+
const text = typeof page.text === "string" ? page.text : "";
|
|
208
|
+
return `\n\n--- Page ${index + 1} ---\n\n${text}`;
|
|
209
|
+
})
|
|
210
|
+
.join("");
|
|
211
|
+
if (pageTexts.length > 0) {
|
|
212
|
+
parts.push({
|
|
213
|
+
type: "text",
|
|
214
|
+
text: `Document transcription for "${fileName}":${pageTexts}`,
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return parts;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
151
221
|
if (!fileRecord) {
|
|
152
|
-
|
|
222
|
+
throw new Error(`File not found: ${fileId || filePath || part.url}`);
|
|
153
223
|
}
|
|
154
224
|
let documentRecord = fileRecord.document;
|
|
155
225
|
if (!documentRecord || (Array.isArray(documentRecord) && documentRecord.length === 0)) {
|
|
156
226
|
const fileResponse = await fetch(fileRecord.url);
|
|
157
227
|
if (!fileResponse.ok) {
|
|
158
|
-
|
|
228
|
+
throw new Error(`Failed to fetch file: HTTP ${fileResponse.status} ${fileResponse.statusText}`);
|
|
159
229
|
}
|
|
160
230
|
const buffer = await fileResponse.arrayBuffer();
|
|
161
231
|
const documentId = await (0, document_parser_1.parseAndStoreDocument)(db, Buffer.from(buffer), fileRecord.path, fileRecord.path, fileRecord.id);
|
|
@@ -198,7 +268,7 @@ async function convertFilePart(part) {
|
|
|
198
268
|
}
|
|
199
269
|
catch (error) {
|
|
200
270
|
console.error("convertFilePart error", error);
|
|
201
|
-
|
|
271
|
+
throw error;
|
|
202
272
|
}
|
|
203
273
|
}
|
|
204
274
|
//# sourceMappingURL=events.js.map
|
package/dist/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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","sourcesContent":["import { id, init, type InstantAdminDatabase } from \"@instantdb/admin\"\nimport { convertToModelMessages, type ModelMessage, type UIMessage } from \"ai\"\nimport type { ContextEvent } from \"./service\"\nimport { parseAndStoreDocument } from \"./document-parser\"\n\nexport const USER_MESSAGE_TYPE = \"user.message\"\nexport const ASSISTANT_MESSAGE_TYPE = \"assistant.message\"\nexport const SYSTEM_MESSAGE_TYPE = \"system.message\"\n\nexport const WEB_CHANNEL = \"web\"\nexport const AGENT_CHANNEL = \"whatsapp\"\nexport const EMAIL_CHANNEL = \"email\"\n\nexport function createUserEventFromUIMessages(messages: UIMessage[]): ContextEvent {\n if (!Array.isArray(messages) || messages.length === 0) {\n throw new Error(\"Missing messages to create event\")\n }\n\n const lastMessage = messages[messages.length - 1]\n\n return {\n id: lastMessage.id,\n type: USER_MESSAGE_TYPE,\n channel: WEB_CHANNEL,\n content: {\n parts: lastMessage.parts,\n },\n createdAt: new Date().toISOString(),\n }\n}\n\nexport function createAssistantEventFromUIMessages(eventId: string, messages: UIMessage[]): ContextEvent {\n if (!Array.isArray(messages) || messages.length === 0) {\n throw new Error(\"Missing messages to create event\")\n }\n\n const lastMessage = messages[messages.length - 1]\n\n return {\n id: eventId,\n type: ASSISTANT_MESSAGE_TYPE,\n channel: WEB_CHANNEL,\n content: {\n parts: lastMessage.parts,\n },\n createdAt: new Date().toISOString(),\n }\n}\n\nexport function convertToUIMessage(event: ContextEvent): UIMessage {\n let role: \"user\" | \"assistant\"\n if (event.type === USER_MESSAGE_TYPE) {\n role = \"user\"\n } else {\n role = \"assistant\"\n }\n\n return {\n id: event.id,\n role: role,\n parts: event.content.parts,\n metadata: {\n channel: event.channel,\n type: event.type,\n createdAt: event.createdAt,\n }\n }\n}\n\nexport async function convertEventsToModelMessages(\n events: ContextEvent[],\n db: ReturnType<typeof init>\n): Promise<ModelMessage[]> {\n const results: ModelMessage[][] = []\n for (const event of events) {\n const messages = await convertEventToModelMessages(event, db)\n results.push(messages)\n }\n return results.flat()\n}\n\nexport async function convertEventToModelMessages(\n event: ContextEvent,\n db: ReturnType<typeof init>\n): Promise<ModelMessage[]> {\n\n // convert files in message\n // const files = event.content.parts.filter(part => part.type === \"file\")\n // 1. copy event to new . we will manipulate the parts\n // 2. each file part will be converted using convertFilePart\n\n const convertedParts = await Promise.all(\n (event.content?.parts || []).map(async (part: any) => {\n // Process file parts - check for type === \"file\" OR presence of url/mimeType (which indicates a file)\n if (part?.type === \"file\" || (part?.url && typeof part.url === \"string\") || part?.mimeType || part?.mediaType) {\n return await convertFilePart(part, db)\n }\n return [part]\n }),\n )\n\n const newEvent: ContextEvent = {\n ...event,\n content: {\n ...event.content,\n parts: convertedParts.flat(),\n },\n }\n\n // convert event to convertToModelMessages compatible\n let message = convertToUIMessage(newEvent)\n\n // use ai sdk helper\n return convertToModelMessages([message])\n}\n\nexport type AIMessage = {\n id: string;\n role: \"user\" | \"assistant\" | \"system\";\n content: string;\n createdAt: Date;\n}\n\nexport type ResponseMessage = {\n id: string;\n timestamp: Date;\n modelId: string;\n headers?: Record<string, string>;\n message: ModelMessage\n}\n\nexport function convertModelMessageToEvent(eventId: string, message: ResponseMessage): ContextEvent {\n\n let type;\n switch (message.message.role) {\n case \"user\":\n type = USER_MESSAGE_TYPE;\n break;\n case \"assistant\":\n type = ASSISTANT_MESSAGE_TYPE;\n break;\n case \"system\":\n type = SYSTEM_MESSAGE_TYPE;\n break;\n }\n\n return {\n id: eventId,\n type: type,\n channel: WEB_CHANNEL,\n content: {\n parts: message.message.content,\n },\n createdAt: message.timestamp.toISOString(),\n }\n}\n\n\nasync function convertFilePart(\n part: any,\n db: ReturnType<typeof init>\n): Promise<any[]> {\n // Convert file parts to text using parseAndStoreDocument\n // Uses providerMetadata.instant.fileId if available, otherwise falls back to URL lookup\n \n // Get fileId and filePath from providerMetadata\n const fileId = part.providerMetadata?.instant?.fileId || null\n const filePath = part.providerMetadata?.instant?.path || null\n\n // If we have a fileId, query by ID. Otherwise, try by path or URL\n let fileRecord: any = undefined\n\n try {\n if (fileId) {\n const fileQuery: any = await db.query({\n $files: {\n $: {\n where: {\n id: fileId,\n },\n limit: 1,\n },\n document: {},\n },\n } as any)\n fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined\n } else if (filePath) {\n // Try to find by path\n const fileQuery: any = await db.query({\n $files: {\n $: {\n where: {\n path: filePath,\n },\n limit: 1,\n },\n document: {},\n },\n } as any)\n fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined\n } else if (part.url.startsWith(\"http://\") || part.url.startsWith(\"https://\")) {\n // For HTTP/HTTPS URLs, try to find by URL\n const fileQuery: any = await db.query({\n $files: {\n $: {\n where: {\n url: part.url,\n },\n limit: 1,\n },\n document: {},\n },\n } as any)\n fileRecord = Array.isArray(fileQuery.$files) ? fileQuery.$files[0] : undefined\n }\n\n // If we still don't have a file record and have a URL, fetch and process it\n if (!fileRecord && (part.url.startsWith(\"http://\") || part.url.startsWith(\"https://\"))) {\n // Try to fetch the file directly and process it\n const fileResponse = await fetch(part.url)\n if (fileResponse.ok) {\n const buffer = await fileResponse.arrayBuffer()\n const contentType = part.mediaType || fileResponse.headers.get(\"content-type\") || \"application/octet-stream\"\n const fileName = part.filename || \"file\"\n \n // Use a temporary path if we don't have one\n const tempPath = filePath || `/temp/${Date.now()}-${fileName}`\n \n const documentId = await parseAndStoreDocument(\n db,\n Buffer.from(buffer),\n tempPath,\n fileName,\n id(), // Generate a temporary ID\n )\n\n const documentQuery: any = await db.query({\n documents: {\n $: {\n where: {\n id: documentId,\n },\n limit: 1,\n },\n },\n } as any)\n\n const documentRecord = Array.isArray(documentQuery.documents) ? documentQuery.documents[0] : undefined\n\n const parts: any[] = []\n parts.push({\n type: \"text\",\n text: `User attached a file.\\nFile Name: \"${fileName}\"\\nMedia Type: ${contentType}`,\n })\n\n if (documentRecord?.content && Array.isArray(documentRecord.content.pages)) {\n const pages = documentRecord.content.pages\n const pageTexts = pages\n .map((page: Record<string, unknown>, index: number) => {\n const text = typeof page.text === \"string\" ? page.text : \"\"\n return `\\n\\n--- Page ${index + 1} ---\\n\\n${text}`\n })\n .join(\"\")\n\n if (pageTexts.length > 0) {\n parts.push({\n type: \"text\",\n text: `Document transcription for \"${fileName}\":${pageTexts}`,\n })\n }\n }\n\n return parts\n }\n }\n\n if (!fileRecord) {\n throw new Error(`File not found: ${fileId || filePath || part.url}`)\n }\n\n let documentRecord = fileRecord.document as any\n if (!documentRecord || (Array.isArray(documentRecord) && documentRecord.length === 0)) {\n const fileResponse = await fetch(fileRecord.url as string)\n if (!fileResponse.ok) {\n throw new Error(`Failed to fetch file: HTTP ${fileResponse.status} ${fileResponse.statusText}`)\n }\n\n const buffer = await fileResponse.arrayBuffer()\n const documentId = await parseAndStoreDocument(\n db,\n Buffer.from(buffer),\n fileRecord.path as string,\n fileRecord.path as string,\n fileRecord.id as string,\n )\n\n const documentQuery: any = await db.query({\n documents: {\n $: {\n where: {\n id: documentId,\n },\n limit: 1,\n },\n },\n } as any)\n\n documentRecord = Array.isArray(documentQuery.documents) ? documentQuery.documents[0] : undefined\n }\n\n const parts: any[] = []\n\n const fileName = documentRecord && typeof documentRecord === \"object\" && \"fileName\" in documentRecord\n ? String(documentRecord.fileName)\n : String(fileRecord.path || \"Unknown\")\n\n parts.push({\n type: \"text\",\n text: `User attached a file.\\nFile ID: ${fileRecord.id}\\nFile Name: \"${fileName}\"\\nMedia Type: ${part.mediaType || \"unknown\"}`,\n })\n\n if (documentRecord?.content && Array.isArray(documentRecord.content.pages)) {\n const pages = documentRecord.content.pages\n const pageTexts = pages\n .map((page: Record<string, unknown>, index: number) => {\n const text = typeof page.text === \"string\" ? page.text : \"\"\n return `\\n\\n--- Page ${index + 1} ---\\n\\n${text}`\n })\n .join(\"\")\n\n if (pageTexts.length > 0) {\n parts.push({\n type: \"text\",\n text: `Document transcription for File ID ${fileRecord.id}:${pageTexts}`,\n })\n }\n }\n\n return parts\n } catch (error) {\n console.error(\"convertFilePart error\", error)\n throw error\n }\n}\n"]}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iCASgB;AARd,8FAAA,KAAK,OAAA;AAML,oGAAA,WAAW,OAAA;AACX,8FAAA,KAAK,OAAA;AAGP,qCAAwC;AAA/B,uGAAA,YAAY,OAAA;AAGrB,mCAAsC;AAA7B,qGAAA,WAAW,OAAA;AAEpB,mCAOiB;AANf,2GAAA,iBAAiB,OAAA;AACjB,gHAAA,sBAAsB,OAAA;AACtB,6GAAA,mBAAmB,OAAA;AACnB,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iCASgB;AARd,8FAAA,KAAK,OAAA;AAML,oGAAA,WAAW,OAAA;AACX,8FAAA,KAAK,OAAA;AAGP,qCAAwC;AAA/B,uGAAA,YAAY,OAAA;AAGrB,mCAAsC;AAA7B,qGAAA,WAAW,OAAA;AAEpB,mCAOiB;AANf,2GAAA,iBAAiB,OAAA;AACjB,gHAAA,sBAAsB,OAAA;AACtB,6GAAA,mBAAmB,OAAA;AACnB,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA","sourcesContent":["export {\n agent,\n type AgentConfig,\n type AgentInstance,\n type AgentOptions,\n type ProgressStreamOptions,\n type DataStreamWriter,\n createAgent,\n Agent,\n} from \"./agent\"\n\nexport { AgentService } from \"./service\"\nexport type { ContextIdentifier, StoredContext, ContextEvent } from \"./service\"\n\nexport { storyDomain } from \"./schema\"\n\nexport {\n USER_MESSAGE_TYPE,\n ASSISTANT_MESSAGE_TYPE,\n SYSTEM_MESSAGE_TYPE,\n WEB_CHANNEL,\n AGENT_CHANNEL,\n EMAIL_CHANNEL,\n} from \"./events\""]}
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { i } from \"@instantdb/core\";\nimport { domain } from \"@ekairos/domain\";\n\nconst entities = {\n context_contexts: i.entity({\n createdAt: i.date(),\n updatedAt: i.date().optional(),\n type: i.string().optional(),\n key: i.string().optional().indexed().unique(),\n status: i.string().optional().indexed(), // open | streaming | closed\n content: i.any().optional(),\n }),\n context_events: i.entity({\n channel: i.string().indexed(),\n createdAt: i.date().indexed(),\n type: i.string().optional().indexed(),\n content: i.any().optional(),\n status: i.string().optional().indexed(),\n }),\n story_executions: i.entity({\n createdAt: i.date(),\n updatedAt: i.date().optional(),\n status: i.string().optional().indexed(), // executing | completed | failed\n }),\n} as const;\n\nconst links = {\n storyEventsContext: {\n forward: { on: \"context_events\", has: \"one\", label: \"context\" },\n reverse: { on: \"context_contexts\", has: \"many\", label: \"events\" },\n },\n // Executions belong to a context\n storyExecutionsContext: {\n forward: { on: \"story_executions\", has: \"one\", label: \"context\" },\n reverse: { on: \"context_contexts\", has: \"many\", label: \"executions\" },\n },\n // Current execution pointer on a context\n storyContextsCurrentExecution: {\n forward: { on: \"context_contexts\", has: \"one\", label: \"currentExecution\" },\n reverse: { on: \"story_executions\", has: \"one\", label: \"currentOf\" },\n },\n // Link execution to its trigger event\n storyExecutionsTrigger: {\n forward: { on: \"story_executions\", has: \"one\", label: \"trigger\" },\n reverse: { on: \"context_events\", has: \"many\", label: \"executionsAsTrigger\" },\n },\n // Link execution to its reaction event\n storyExecutionsReaction: {\n forward: { on: \"story_executions\", has: \"one\", label: \"reaction\" },\n reverse: { on: \"context_events\", has: \"many\", label: \"executionsAsReaction\" },\n },\n} as const;\n\nconst rooms = {} as const;\n\nexport const storyDomain = domain({ entities, links, rooms });\n\n\n\n"]}
|
package/dist/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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","sourcesContent":["import { id, init, InstaQLEntity, lookup } from \"@instantdb/admin\"\nimport { storyDomain } from \"./schema\"\n\nexport type StoredContext<Context> = Omit<InstaQLEntity<typeof storyDomain, 'context_contexts'>, 'content'> & { content: Context | null }\nexport type ContextIdentifier = { id: string; key?: never } | { key: string; id?: never }\n\nexport type ContextEvent = InstaQLEntity<typeof storyDomain, 'context_events'> & { content: any }\n\nexport type StreamChunk = {\n type: string\n messageId?: string\n content?: string\n [key: string]: unknown\n}\n\nexport class AgentService {\n\n private db: ReturnType<typeof init>\n\n constructor(db: ReturnType<typeof init>) {\n this.db = db\n }\n\n public async getOrCreateContext<C>(contextIdentifier: ContextIdentifier | null): Promise<StoredContext<C>> {\n if (!contextIdentifier) {\n return this.createContext<C>()\n }\n\n let context = await this.getContext<C>(contextIdentifier)\n if (!context) {\n return this.createContext<C>(contextIdentifier.key ? { key: contextIdentifier.key } : null, contextIdentifier.id)\n } else {\n return context\n }\n }\n\n public async createContext<C>(contextKey?: { key: string } | null, contextId?: string): Promise<StoredContext<C>> {\n let contextData: { createdAt: Date; content: Record<string, unknown>; key: string | null; status: \"open\" } = {\n createdAt: new Date(),\n content: {},\n key: null,\n status: \"open\"\n }\n\n const newContextId = contextId ?? id()\n if (contextKey?.key) {\n contextData = {\n ...contextData,\n key: contextKey.key\n }\n }\n\n await this.db.transact([\n this.db.tx.context_contexts[newContextId].create(contextData)\n ])\n return this.getContext<C>({ id: newContextId })\n }\n\n public async getContext<C>(contextIdentifier: ContextIdentifier): Promise<StoredContext<C>> {\n let context;\n try {\n if (contextIdentifier.id) {\n const tRes = await this.db.query({\n context_contexts: {\n $: { where: { id: contextIdentifier.id }, limit: 1 }\n }\n })\n context = tRes.context_contexts?.[0]\n }\n\n if (contextIdentifier.key) {\n const tRes = await this.db.query({\n context_contexts: {\n $: { where: { key: contextIdentifier.key } }\n }\n })\n context = tRes.context_contexts?.[0]\n }\n\n return context as unknown as StoredContext<C>\n } catch (error: any) {\n console.error(\"Error getting context\", error)\n throw new Error(\"Error getting context: \" + error.message)\n }\n }\n\n public async updateContextContent<C>(contextIdentifier: ContextIdentifier, content: C): Promise<StoredContext<C>> {\n\n const contextDBIdentifier = contextIdentifier.id ?? lookup(\"key\", contextIdentifier.key)\n\n await this.db.transact([\n this.db.tx.context_contexts[contextDBIdentifier].update({\n content: content,\n updatedAt: new Date()\n })\n ])\n\n return this.getContext<C>(contextIdentifier)\n }\n\n public async saveEvent(contextIdentifier: ContextIdentifier, event: ContextEvent): Promise<ContextEvent> {\n const txs = [\n this.db.tx.context_events[event.id].create({\n ...event,\n status: \"stored\"\n })\n ]\n\n if (contextIdentifier.id) {\n txs.push(this.db.tx.context_events[event.id].link({ context: contextIdentifier.id }))\n } else {\n txs.push(this.db.tx.context_events[event.id].link({ context: lookup(\"key\", contextIdentifier.key) }))\n }\n\n await this.db.transact(txs)\n\n return await this.getEvent(event.id)\n }\n\n public async createExecution(contextIdentifier: ContextIdentifier, triggerEventId: string, reactionEventId: string): Promise<{ id: string }> {\n const executionId = id()\n const execCreate = this.db.tx.story_executions[executionId].create({\n createdAt: new Date(),\n status: \"executing\",\n })\n\n const txs: any[] = [execCreate]\n\n if (contextIdentifier.id) {\n txs.push(this.db.tx.story_executions[executionId].link({ context: contextIdentifier.id }))\n txs.push(this.db.tx.context_contexts[contextIdentifier.id].link({ currentExecution: executionId }))\n } else {\n const ctxLookup = lookup(\"key\", contextIdentifier.key)\n txs.push(this.db.tx.story_executions[executionId].link({ context: ctxLookup }))\n txs.push(this.db.tx.context_contexts[ctxLookup].link({ currentExecution: executionId }))\n }\n\n txs.push(this.db.tx.story_executions[executionId].link({ trigger: triggerEventId }))\n txs.push(this.db.tx.story_executions[executionId].link({ reaction: reactionEventId }))\n\n await this.db.transact(txs)\n\n return { id: executionId }\n }\n\n public async updateContextStatus(contextIdentifier: ContextIdentifier, status: \"open\" | \"streaming\" | \"closed\"): Promise<void> {\n const txs: any[] = []\n \n if (contextIdentifier.id) {\n txs.push(this.db.tx.context_contexts[contextIdentifier.id].update({ status, updatedAt: new Date() }))\n } else {\n txs.push(this.db.tx.context_contexts[lookup(\"key\", contextIdentifier.key)].update({ status, updatedAt: new Date() }))\n }\n\n await this.db.transact(txs)\n }\n\n public async completeExecution(contextIdentifier: ContextIdentifier, executionId: string, status: \"completed\" | \"failed\"): Promise<void> {\n const txs: any[] = []\n txs.push(this.db.tx.story_executions[executionId].update({ status, updatedAt: new Date() }))\n\n // Update context status to \"open\" when execution completes\n if (contextIdentifier.id) {\n txs.push(this.db.tx.context_contexts[contextIdentifier.id].update({ status: \"open\", updatedAt: new Date() }))\n // optionally unlink currentExecution if desired\n } else {\n txs.push(this.db.tx.context_contexts[lookup(\"key\", contextIdentifier.key)].update({ status: \"open\", updatedAt: new Date() }))\n }\n\n await this.db.transact(txs)\n }\n\n public async updateEvent(eventId: string, event: ContextEvent): Promise<ContextEvent> {\n await this.db.transact([\n this.db.tx.context_events[eventId].update(event)\n ])\n return await this.getEvent(eventId)\n }\n\n public async getEvent(eventId: string): Promise<ContextEvent> {\n const event = await this.db.query({\n context_events: {\n $: { where: { id: eventId } }\n }\n })\n return event.context_events?.[0] as ContextEvent\n }\n\n public async getEvents(contextIdentifier: ContextIdentifier): Promise<ContextEvent[]> {\n\n let contextWhere;\n if (contextIdentifier.id) {\n contextWhere = { context: contextIdentifier.id }\n } else {\n contextWhere = { context: lookup(\"key\", contextIdentifier.key) }\n }\n\n const events = await this.db.query({\n context_events: {\n $: {\n where: contextWhere,\n limit: 30,\n order: {\n createdAt: 'asc',\n },\n }\n }\n })\n return events.context_events as ContextEvent[]\n }\n\n public async readEventStream(stream: ReadableStream): Promise<{\n eventId: string | undefined\n chunks: StreamChunk[]\n persistedEvent: any\n }> {\n const reader = stream.getReader()\n const chunks: StreamChunk[] = []\n let firstChunk: StreamChunk | undefined\n\n while (true) {\n const { value, done } = await reader.read()\n if (done) {\n break\n }\n const currentChunk = value as StreamChunk\n if (!firstChunk) {\n firstChunk = currentChunk\n }\n chunks.push(currentChunk)\n }\n\n if (!firstChunk) {\n throw new Error(\"No chunks received from stream\")\n }\n\n const eventId = firstChunk.messageId\n\n const query = await this.db.query({\n context_events: {\n $: {\n where: { id: eventId },\n limit: 1,\n fields: [\"id\", \"channel\", \"type\", \"status\", \"createdAt\", \"content\"],\n },\n },\n })\n\n const persistedEvent = Array.isArray(query.context_events) ? query.context_events[0] : undefined\n\n return {\n eventId,\n chunks,\n persistedEvent,\n }\n }\n}"]}
|
package/dist/steps/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/steps/ai.ts"],"names":[],"mappings":";;AAkEA,oDA8GC;AAhLD,2BAA6D;AAC7D,2CAAuC;AACvC,6BAAuB;AACvB,4CAAqC;AACrC,sCAA8D;AAgC9D,SAAS,YAAY,CAAC,KAAkB;IACtC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACrD,KAAK,QAAQ;YACX,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACrD,KAAK,SAAS;YACZ,OAAO,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACtD,KAAK,OAAO;YACV,IAAI,CAAC,KAAK,CAAC,KAAK;gBAAE,OAAO,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;YAC3E,OAAO,OAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QAC7E,KAAK,QAAQ;YACX,OAAO,OAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9G,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;QACtC;YACE,OAAO,OAAC,CAAC,GAAG,EAAE,CAAA;IAClB,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,MAAwB;IAC7C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;IACrE,MAAM,KAAK,GAAiC,EAAE,CAAA;IAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;QAChC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;IACvD,CAAC;IACD,MAAM,GAAG,GAAG,OAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3B,OAAO,GAAG,CAAA;AACZ,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,MAK1C;IACC,UAAU,CAAA;IAEV,4DAA4D;IAC5D,MAAM,KAAK,GAAyB,EAAE,CAAA;IACtC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IAElH,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACrD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,SAAI,EAAC;YACxB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,WAAW,EAAE,WAAW;SACzB,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;QAC9B,KAAK,CAAC,aAAa,GAAG,IAAA,SAAI,EAAC;YACzB,WAAW,EAAE,yEAAyE;YACtF,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;SAC5E,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;QACjC,KAAK,CAAC,gBAAgB,GAAG,IAAA,SAAI,EAAC;YAC5B,WAAW,EAAE,kDAAkD;YAC/D,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAC,QAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;SAChL,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC;QACpB,KAAK,CAAC,GAAG,GAAG,IAAA,SAAI,EAAC;YACf,WAAW,EAAE,mCAAmC;YAChD,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;SACnC,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,eAAe,GAAQ,EAAE,CAAA;IAC/B,IAAI,MAAM,CAAC,OAAO,EAAE,eAAe,EAAE,CAAC;QACpC,eAAe,CAAC,MAAM,GAAG;YACvB,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;YAC/C,gBAAgB,EAAE,UAAU;SAC7B,CAAA;IACH,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,eAAU,EAAC;QACxB,KAAK,EAAE,IAAA,eAAM,EAAC,aAAa,CAAC;QAC5B,MAAM,EAAE,MAAM,CAAC,YAAY;QAC3B,QAAQ,EAAE,EAAE;QACZ,KAAK;QACL,UAAU,EAAE,UAAU;QACtB,QAAQ,EAAE,IAAA,gBAAW,EAAC,CAAC,CAAC;QACxB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC;KACpE,CAAC,CAAA;IAEF,MAAM,CAAC,aAAa,EAAE,CAAA;IAEtB,IAAI,aAAoC,CAAA;IACxC,IAAI,YAAyC,CAAA;IAC7C,MAAM,aAAa,GAAG,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACzD,aAAa,GAAG,OAAO,CAAA;QACvB,YAAY,GAAG,MAAM,CAAA;IACvB,CAAC,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,IAAA,UAAE,GAAE,CAAA;IAEpB,MAAM;SACH,iBAAiB,CAAC;QACjB,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,GAAG,EAAE,CAAC,OAAO;QAChC,eAAe;YACb,OAAO,EAAE,OAAO,EAAE,CAAA;QACpB,CAAC;QACD,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACzB,MAAM,SAAS,GAAG,IAAA,2CAAkC,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YACvE,aAAa,CAAC,SAAS,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,EAAE,CAAC,CAAU,EAAE,EAAE;YACtB,YAAY,CAAC,CAAC,CAAC,CAAA;YACf,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC1D,OAAO,OAAO,CAAA;QAChB,CAAC;KACF,CAAC;SACD,WAAW,CACV,IAAI,eAAe,CAAC;QAClB,SAAS,CAAC,KAAU,EAAE,UAAe;YACnC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAM;YAClC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;gBAAE,OAAM;YACxC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;gBAAE,OAAM;YACvC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAM;YACnC,UAAU,CAAC,OAAO,CAAC,KAAY,CAAC,CAAA;QAClC,CAAC;KACF,CAAC,CACH,CAAA;IAEH,MAAM,SAAS,GAAG,MAAM,aAAa,CAAA;IAErC,MAAM,SAAS,GAA+D,EAAE,CAAA;IAChF,IAAI,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7D,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrC,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;YACvE,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,CAAC;IAEX,OAAO,EAAE,SAAS,EAAE,CAAA;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/steps/ai.ts"],"names":[],"mappings":"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","sourcesContent":["import { streamText, tool, type Tool, stepCountIs } from \"ai\"\r\nimport { openai } from \"@ai-sdk/openai\"\r\nimport { z } from \"zod\"\r\nimport { id } from \"@instantdb/admin\"\r\nimport { createAssistantEventFromUIMessages } from \"../events\"\r\n\r\ntype PrimitiveType = \"string\" | \"number\" | \"boolean\" | \"object\" | \"array\"\r\n\r\ntype FieldSchema = {\r\n type: PrimitiveType\r\n description?: string\r\n required?: boolean\r\n properties?: Record<string, FieldSchema>\r\n items?: FieldSchema\r\n}\r\n\r\ntype StepInputSchema = {\r\n type: \"object\"\r\n description?: string\r\n properties?: Record<string, FieldSchema>\r\n}\r\n\r\ntype StoryActionSpec = {\r\n name: string\r\n description: string\r\n implementationKey: string\r\n inputSchema?: StepInputSchema\r\n finalize?: boolean\r\n}\r\n\r\ntype StoryOptions = {\r\n reasoningEffort?: \"low\" | \"medium\" | \"high\"\r\n webSearch?: boolean\r\n includeBaseTools?: { createMessage?: boolean; requestDirection?: boolean; end?: boolean }\r\n}\r\n\r\nfunction zodFromField(field: FieldSchema): z.ZodTypeAny {\r\n switch (field.type) {\r\n case \"string\":\r\n return z.string().describe(field.description ?? \"\")\r\n case \"number\":\r\n return z.number().describe(field.description ?? \"\")\r\n case \"boolean\":\r\n return z.boolean().describe(field.description ?? \"\")\r\n case \"array\":\r\n if (!field.items) return z.array(z.any()).describe(field.description ?? \"\")\r\n return z.array(zodFromField(field.items)).describe(field.description ?? \"\")\r\n case \"object\":\r\n return z.object(Object.fromEntries(Object.entries(field.properties ?? {}).map(([k, v]) => [k, zodFromField(v)])))\r\n .describe(field.description ?? \"\")\r\n default:\r\n return z.any()\r\n }\r\n}\r\n\r\nfunction zodFromSchema(schema?: StepInputSchema): z.ZodTypeAny {\r\n if (!schema || schema.type !== \"object\") return z.object({}).strict()\r\n const shape: Record<string, z.ZodTypeAny> = {}\r\n for (const [name, field] of Object.entries(schema.properties ?? {})) {\r\n const base = zodFromField(field)\r\n shape[name] = field.required ? base : base.optional()\r\n }\r\n const obj = z.object(shape)\r\n return obj\r\n}\r\n\r\nexport async function runReasoningOnceStep(params: {\r\n contextId: string\r\n systemPrompt: string\r\n actions: StoryActionSpec[]\r\n options: StoryOptions\r\n}): Promise<{ toolCalls: Array<{ toolCallId: string; toolName: string; args: any }> }> {\r\n \"use step\"\r\n\r\n // Construir tools para el modelo sin ejecutar (sin execute)\r\n const tools: Record<string, Tool> = {}\r\n const includeBase = params.options?.includeBaseTools || { createMessage: true, requestDirection: true, end: true }\r\n \r\n for (const action of params.actions) {\r\n const inputSchema = zodFromSchema(action.inputSchema)\r\n tools[action.name] = tool({\r\n description: action.description,\r\n inputSchema: inputSchema,\r\n })\r\n }\r\n \r\n if (includeBase.createMessage) {\r\n tools.createMessage = tool({\r\n description: \"Send a message to the user. Use for final confirmations or information.\",\r\n inputSchema: z.object({ message: z.string().describe(\"Markdown content\") }),\r\n })\r\n }\r\n if (includeBase.requestDirection) {\r\n tools.requestDirection = tool({\r\n description: \"Ask a human for guidance when blocked or unsure.\",\r\n inputSchema: z.object({ issue: z.string(), context: z.string(), suggestedActions: z.array(z.string()).optional(), urgency: z.enum([\"low\",\"medium\",\"high\"]).default(\"medium\") }),\r\n })\r\n }\r\n if (includeBase.end) {\r\n tools.end = tool({\r\n description: \"End the current interaction loop.\",\r\n inputSchema: z.object({}).strict(),\r\n })\r\n }\r\n\r\n const providerOptions: any = {}\r\n if (params.options?.reasoningEffort) {\r\n providerOptions.openai = {\r\n reasoningEffort: params.options.reasoningEffort,\r\n reasoningSummary: \"detailed\",\r\n }\r\n }\r\n\r\n const result = streamText({\r\n model: openai(\"gpt-4o-mini\"),\r\n system: params.systemPrompt,\r\n messages: [],\r\n tools,\r\n toolChoice: \"required\",\r\n stopWhen: stepCountIs(1),\r\n ...(Object.keys(providerOptions).length > 0 && { providerOptions }),\r\n })\r\n\r\n result.consumeStream()\r\n\r\n let resolveFinish!: (value: any) => void\r\n let rejectFinish!: (reason?: unknown) => void\r\n const finishPromise = new Promise<any>((resolve, reject) => {\r\n resolveFinish = resolve\r\n rejectFinish = reject\r\n })\r\n\r\n const eventId = id()\r\n\r\n result\r\n .toUIMessageStream({\r\n sendStart: false,\r\n generateMessageId: () => eventId,\r\n messageMetadata() {\r\n return { eventId }\r\n },\r\n onFinish: ({ messages }) => {\r\n const lastEvent = createAssistantEventFromUIMessages(eventId, messages)\r\n resolveFinish(lastEvent)\r\n },\r\n onError: (e: unknown) => {\r\n rejectFinish(e)\r\n const message = e instanceof Error ? e.message : String(e)\r\n return message\r\n },\r\n })\r\n .pipeThrough(\r\n new TransformStream({\r\n transform(chunk: any, controller: any) {\r\n if (chunk.type === \"start\") return\r\n if (chunk.type === \"finish-step\") return\r\n if (chunk.type === \"start-step\") return\r\n if (chunk.type === \"finish\") return\r\n controller.enqueue(chunk as any)\r\n },\r\n })\r\n )\r\n\r\n const lastEvent = await finishPromise\r\n\r\n const toolCalls: Array<{ toolCallId: string; toolName: string; args: any }> = []\r\n try {\r\n for (const p of lastEvent.content.parts || []) {\r\n if (typeof p.type === \"string\" && p.type.startsWith(\"tool-\")) {\r\n const toolName = p.type.split(\"-\")[1]\r\n toolCalls.push({ toolCallId: p.toolCallId, toolName, args: p.input })\r\n }\r\n }\r\n } catch { }\r\n\r\n return { toolCalls }\r\n}\r\n\r\n\r\n"]}
|
package/dist/steps/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/steps/base.ts"],"names":[],"mappings":";;AAEA,sDA6BC;AA/BD,yCAA8C;AAEvC,KAAK,UAAU,qBAAqB,CAAC,MAAmE;IAC7G,UAAU,CAAA;IACV,wCAAwC;IACxC,MAAM,IAAI,GAAG,IAAA,4BAAiB,EAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACxD,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QAClC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;QACrE,CAAC;IACH,CAAC;IACD,iEAAiE;IACjE,sFAAsF;IACtF,IAAI,CAAC;QACH,MAAM,OAAO,GAAI,UAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,EAAE,OAAuC,CAAA;QAC/G,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBACrD,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACnD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;oBAC5F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAA;AACnF,CAAC"}
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/steps/base.ts"],"names":[],"mappings":";;AAEA,sDA6BC;AA/BD,yCAA8C;AAEvC,KAAK,UAAU,qBAAqB,CAAC,MAAmE;IAC7G,UAAU,CAAA;IACV,wCAAwC;IACxC,MAAM,IAAI,GAAG,IAAA,4BAAiB,EAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACxD,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAClF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QAClC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;QACrE,CAAC;IACH,CAAC;IACD,iEAAiE;IACjE,sFAAsF;IACtF,IAAI,CAAC;QACH,MAAM,OAAO,GAAI,UAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,EAAE,OAAuC,CAAA;QAC/G,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBACrD,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACnD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;oBAC5F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAA;AACnF,CAAC","sourcesContent":["import { getRegisteredStep } from \"./registry\"\r\n\r\nexport async function executeRegisteredStep(params: { implementationKey: string; contextId: string; args: any }) {\r\n \"use step\"\r\n // 1) Intentar step registrado explícito\r\n const step = getRegisteredStep(params.implementationKey)\r\n if (step) {\r\n try {\r\n const result = await step({ contextId: params.contextId, ...(params.args ?? {}) })\r\n return { success: true, result }\r\n } catch (error: any) {\r\n return { success: false, message: error?.message ?? String(error) }\r\n }\r\n }\r\n // 2) Intentar acción runtime desde storyEngine (no serializable)\r\n // Buscamos una story que tenga esta implementación (acceso directo al símbolo global)\r\n try {\r\n const stories = (globalThis as any)[Symbol.for(\"PULZAR_STORY_ENGINE\")]?.stories as Map<string, any> | undefined\r\n if (stories) {\r\n for (const [, rt] of stories) {\r\n const action = rt.actions?.[params.implementationKey]\r\n if (action && typeof action.execute === \"function\") {\r\n const result = await action.execute({ contextId: params.contextId, ...(params.args ?? {}) })\r\n return { success: true, result }\r\n }\r\n }\r\n }\r\n } catch (error: any) {\r\n return { success: false, message: error?.message ?? String(error) }\r\n }\r\n return { success: false, message: `Step not found: ${params.implementationKey}` }\r\n}\r\n\r\n\r\n"]}
|
package/dist/steps/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/steps/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,uCAAoB;AACpB,yCAAsB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/steps/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,uCAAoB;AACpB,yCAAsB","sourcesContent":["export * from \"./registry\"\r\nexport * from \"./ai\"\r\nexport * from \"./base\"\r\n\r\n\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/steps/registry.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,iEAAiE;;AAcjE,oCAIC;AAED,8CAEC;AAED,kDAEC;AAtBD,MAAM,2BAA2B,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAEtE,SAAS,WAAW;IAClB,MAAM,CAAC,GAAG,UAAiB,CAAA;IAC3B,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,EAAE,CAAC;QACpC,CAAC,CAAC,2BAA2B,CAAC,GAAG,IAAI,GAAG,EAA0B,CAAA;IACpE,CAAC;IACD,OAAO,CAAC,CAAC,2BAA2B,CAAgC,CAAA;AACtE,CAAC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,EAAkB;IAC1D,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAClF,IAAI,OAAO,EAAE,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC1E,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED,SAAgB,iBAAiB,CAAC,GAAW;IAC3C,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC/B,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;AACzC,CAAC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/steps/registry.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,iEAAiE;;AAcjE,oCAIC;AAED,8CAEC;AAED,kDAEC;AAtBD,MAAM,2BAA2B,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAEtE,SAAS,WAAW;IAClB,MAAM,CAAC,GAAG,UAAiB,CAAA;IAC3B,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,EAAE,CAAC;QACpC,CAAC,CAAC,2BAA2B,CAAC,GAAG,IAAI,GAAG,EAA0B,CAAA;IACpE,CAAC;IACD,OAAO,CAAC,CAAC,2BAA2B,CAAgC,CAAA;AACtE,CAAC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,EAAkB;IAC1D,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAClF,IAAI,OAAO,EAAE,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC1E,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED,SAAgB,iBAAiB,CAAC,GAAW;IAC3C,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC/B,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;AACzC,CAAC","sourcesContent":["// Registro simple de steps por clave de implementación\r\n// Cada step debe ser una función que internamente use \"use step\"\r\n\r\nexport type RegisteredStep = (args: any) => Promise<any>\r\n\r\nconst GLOBAL_STEP_REGISTRY_SYMBOL = Symbol.for(\"PULZAR_STEP_REGISTRY\")\r\n\r\nfunction getRegistry(): Map<string, RegisteredStep> {\r\n const g = globalThis as any\r\n if (!g[GLOBAL_STEP_REGISTRY_SYMBOL]) {\r\n g[GLOBAL_STEP_REGISTRY_SYMBOL] = new Map<string, RegisteredStep>()\r\n }\r\n return g[GLOBAL_STEP_REGISTRY_SYMBOL] as Map<string, RegisteredStep>\r\n}\r\n\r\nexport function registerStep(key: string, fn: RegisteredStep) {\r\n if (!key || typeof key !== \"string\") throw new Error(\"registerStep: key inválida\")\r\n if (typeof fn !== \"function\") throw new Error(\"registerStep: fn inválida\")\r\n getRegistry().set(key, fn)\r\n}\r\n\r\nexport function getRegisteredStep(key: string): RegisteredStep | undefined {\r\n return getRegistry().get(key)\r\n}\r\n\r\nexport function listRegisteredSteps(): string[] {\r\n return Array.from(getRegistry().keys())\r\n}\r\n\r\n\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampleStep.js","sourceRoot":"","sources":["../../src/steps/sampleStep.ts"],"names":[],"mappings":";;AACA,gCAeC;AAfM,KAAK,UAAU,UAAU,CAAC,KAAa;IAC5C,UAAU,CAAC;IACX,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"sampleStep.js","sourceRoot":"","sources":["../../src/steps/sampleStep.ts"],"names":[],"mappings":";;AACA,gCAeC;AAfM,KAAK,UAAU,UAAU,CAAC,KAAa;IAC5C,UAAU,CAAC;IACX,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["\nexport async function sampleStep(input: string): Promise<string> {\n \"use step\";\n if (input == null) {\n throw new Error(\"input is required\");\n }\n\n const trimmed = input.trim();\n\n if (trimmed.length === 0) {\n throw new Error(\"input must contain characters\");\n }\n\n const result = trimmed.toUpperCase();\n\n return result;\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steps-context.js","sourceRoot":"","sources":["../src/steps-context.ts"],"names":[],"mappings":";;AAIA,8CAcC;AAED,sDAMC;AA1BD,uCAA2D;AAC3D,4CAAuC;AACvC,qCAAsC;AAE/B,KAAK,UAAU,iBAAiB,CAAC,MAA0D;IAChG,UAAU,CAAA;IACV,mEAAmE;IACnE,sEAAsE;IACtE,MAAM,EAAE,GAAG,IAAA,YAAI,EAAC;QACd,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,0BAAoC;QACvD,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAiC;QACzD,MAAM,EAAE,oBAAW,CAAC,MAAM,EAAE;KAC7B,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,CAAA;IAEpC,MAAM,QAAQ,GAA6B,MAAM,CAAC,OAAO,CAAA;IACzD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAM,QAAQ,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;IAClF,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE,CAAA;AAC9B,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,MAAgD;IAC1F,UAAU,CAAA;IACV,uFAAuF;IACvF,kFAAkF;IAClF,MAAM,YAAY,GAAG,GAAG,MAAM,CAAC,SAAS,6BAA6B,MAAM,CAAC,SAAS,EAAE,CAAA;IACvF,OAAO,YAAY,CAAA;AACrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"steps-context.js","sourceRoot":"","sources":["../src/steps-context.ts"],"names":[],"mappings":";;AAIA,8CAcC;AAED,sDAMC;AA1BD,uCAA2D;AAC3D,4CAAuC;AACvC,qCAAsC;AAE/B,KAAK,UAAU,iBAAiB,CAAC,MAA0D;IAChG,UAAU,CAAA;IACV,mEAAmE;IACnE,sEAAsE;IACtE,MAAM,EAAE,GAAG,IAAA,YAAI,EAAC;QACd,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,0BAAoC;QACvD,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAiC;QACzD,MAAM,EAAE,oBAAW,CAAC,MAAM,EAAE;KAC7B,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,CAAA;IAEpC,MAAM,QAAQ,GAA6B,MAAM,CAAC,OAAO,CAAA;IACzD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAM,QAAQ,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;IAClF,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE,CAAA;AAC9B,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,MAAgD;IAC1F,UAAU,CAAA;IACV,uFAAuF;IACvF,kFAAkF;IAClF,MAAM,YAAY,GAAG,GAAG,MAAM,CAAC,SAAS,6BAA6B,MAAM,CAAC,SAAS,EAAE,CAAA;IACvF,OAAO,YAAY,CAAA;AACrB,CAAC","sourcesContent":["import { AgentService, ContextIdentifier } from \"./service\"\nimport { init } from \"@instantdb/admin\"\nimport { storyDomain } from \"./schema\"\n\nexport async function ensureContextStep(params: { key: string; context: ContextIdentifier | null }) {\n \"use step\"\n // Note: This function should receive db as parameter in the future\n // For now, we create a temporary instance (this is a legacy function)\n const db = init({\n appId: process.env.NEXT_PUBLIC_INSTANT_APP_ID as string,\n adminToken: process.env.INSTANT_APP_ADMIN_TOKEN as string,\n schema: storyDomain.schema()\n })\n const service = new AgentService(db)\n\n const selector: ContextIdentifier | null = params.context\n const ctx = await service.getOrCreateContext<any>(selector ?? { key: params.key })\n return { contextId: ctx.id }\n}\n\nexport async function buildSystemPromptStep(params: { contextId: string; narrative: string }) {\n \"use step\"\n // Por ahora el prompt es plano, concatenando narrativa y metadatos básicos de contexto\n // No modificar prompts de negocio existentes; este es un prompt genérico de Story\n const systemPrompt = `${params.narrative}\\n\\n[context]\\ncontextId: ${params.contextId}`\n return systemPrompt\n}\n\n\n"]}
|
package/dist/story.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"story.js","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":";;AAiEA,sBAuDC;AA9DD,uEAAuE;AACvE,uFAAuF;AACvF,mDAA0E;AAC1E,mCAAiD;AACjD,uCAAoD;AAEpD,gFAAgF;AAChF,SAAgB,KAAK,CAAC,GAAW,EAAE,MAAmB;IACpD,6EAA6E;IAC7E,OAAO,KAAK,UAAU,QAAQ,CAAC,IAAqB;QAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAA;QAE/C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iCAAiB,EAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC,CAAA;QAEtF,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,OAAO,SAAS,GAAG,QAAQ,EAAE,CAAC;YAC5B,SAAS,EAAE,CAAA;YAEX,MAAM,YAAY,GAAG,MAAM,IAAA,qCAAqB,EAAC;gBAC/C,SAAS;gBACT,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC,CAAA;YAEF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,yBAAoB,EAAC;gBAC/C,SAAS;gBACT,YAAY;gBACZ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;aAC9B,CAAC,CAAA;YAEF,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,MAAK;YACP,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAClC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAY,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAA;gBACjE,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,QAAQ,CAAW,CAAA;gBAC9E,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAqB,EAAC;oBACzC,iBAAiB;oBACjB,SAAS;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI;iBACd,CAAC,CAAA;gBACF,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;YAC/B,CAAC,CAAC,CACH,CAAA;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAA2C,EAAE,EAAE;gBACxF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;gBACjD,MAAM,gBAAgB,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC;oBAC5E,CAAC,CAAC,CAAC,MAAM,CAAC,OAAQ,CAAC,YAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;oBACvD,CAAC,CAAC,KAAK,CAAA;gBACT,OAAO,eAAe,IAAI,gBAAgB,CAAA;YAC5C,CAAC,CAAC,CAAA;YAEF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,WAAoB,EAAE,CAAA;IACpD,CAAC,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"story.js","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":";;AAiEA,sBAuDC;AA9DD,uEAAuE;AACvE,uFAAuF;AACvF,mDAA0E;AAC1E,mCAAiD;AACjD,uCAAoD;AAEpD,gFAAgF;AAChF,SAAgB,KAAK,CAAC,GAAW,EAAE,MAAmB;IACpD,6EAA6E;IAC7E,OAAO,KAAK,UAAU,QAAQ,CAAC,IAAqB;QAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAA;QAE/C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iCAAiB,EAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC,CAAA;QAEtF,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,OAAO,SAAS,GAAG,QAAQ,EAAE,CAAC;YAC5B,SAAS,EAAE,CAAA;YAEX,MAAM,YAAY,GAAG,MAAM,IAAA,qCAAqB,EAAC;gBAC/C,SAAS;gBACT,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC,CAAA;YAEF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,yBAAoB,EAAC;gBAC/C,SAAS;gBACT,YAAY;gBACZ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;aAC9B,CAAC,CAAA;YAEF,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,MAAK;YACP,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAClC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAY,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAA;gBACjE,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,iBAAiB,IAAI,EAAE,CAAC,QAAQ,CAAW,CAAA;gBAC9E,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAqB,EAAC;oBACzC,iBAAiB;oBACjB,SAAS;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI;iBACd,CAAC,CAAA;gBACF,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;YAC/B,CAAC,CAAC,CACH,CAAA;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAA2C,EAAE,EAAE;gBACxF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;gBACjD,MAAM,gBAAgB,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC;oBAC5E,CAAC,CAAC,CAAC,MAAM,CAAC,OAAQ,CAAC,YAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;oBACvD,CAAC,CAAC,KAAK,CAAA;gBACT,OAAO,eAAe,IAAI,gBAAgB,CAAA;YAC5C,CAAC,CAAC,CAAA;YAEF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,WAAoB,EAAE,CAAA;IACpD,CAAC,CAAA;AACH,CAAC","sourcesContent":["import type { ContextIdentifier } from \"./service\"\r\n\r\n// NOTA: Este módulo implementa un generador de workflows durables basado en Steps.\r\n// Importante: el workflow (función retornada) usa la directiva \"use workflow\" y\r\n// todas las operaciones con efectos (DB, IA, etc.) ocurren dentro de steps (\"use step\").\r\n\r\n// Tipos serializables para describir acciones (tools)\r\nexport type PrimitiveType = \"string\" | \"number\" | \"boolean\" | \"object\" | \"array\"\r\n\r\nexport type FieldSchema = {\r\n type: PrimitiveType\r\n description?: string\r\n required?: boolean\r\n properties?: Record<string, FieldSchema>\r\n items?: FieldSchema\r\n}\r\n\r\nexport type StepInputSchema = {\r\n type: \"object\"\r\n description?: string\r\n properties?: Record<string, FieldSchema>\r\n}\r\n\r\nexport type StoryActionSpec = {\r\n name: string\r\n description: string\r\n // Clave del step ejecutor registrado en registry (ej: \"dataset.executeCommand\")\r\n implementationKey: string\r\n // Esquema de entrada serializable (convertible a zod en el step)\r\n inputSchema?: StepInputSchema\r\n // Si true, al ejecutar esta acción se puede finalizar el loop\r\n finalize?: boolean\r\n // Runtime-only (no serializable): ejecutor directo para engine\r\n execute?: (args: any & { contextId?: string }) => Promise<any>\r\n}\r\n\r\nexport type StoryOptions = {\r\n reasoningEffort?: \"low\" | \"medium\" | \"high\"\r\n webSearch?: boolean\r\n maxLoops?: number\r\n finalActions?: string[]\r\n includeBaseTools?: { createMessage?: boolean; requestDirection?: boolean; end?: boolean }\r\n}\r\n\r\nexport type StoryConfig = {\r\n narrative: string\r\n actions: StoryActionSpec[]\r\n options?: StoryOptions\r\n}\r\n\r\nexport type StoryStartArgs = {\r\n context?: ContextIdentifier | null\r\n trigger?: any | null\r\n}\r\n\r\n// Resultados mínimos del loop de IA\r\ntype ToolCall = { toolCallId: string; toolName: string; args: any }\r\n\r\n// Steps (se resuelven en tiempo de ejecución del step, no en workflow)\r\n// Se importan como referencias; su lógica corre con \"use step\" dentro de cada función.\r\nimport { ensureContextStep, buildSystemPromptStep } from \"./steps-context\"\r\nimport { runReasoningOnceStep } from \"./steps/ai\"\r\nimport { executeRegisteredStep } from \"./steps/base\"\r\n\r\n// story(): genera una función workflow que orquesta los steps de manera durable\r\nexport function story(key: string, config: StoryConfig) {\r\n // Retorna una función que orquesta la iteración del workflow (sin directiva)\r\n return async function runStory(args?: StoryStartArgs) {\r\n const maxLoops = config.options?.maxLoops ?? 10\r\n\r\n const { contextId } = await ensureContextStep({ key, context: args?.context ?? null })\r\n\r\n let loopCount = 0\r\n while (loopCount < maxLoops) {\r\n loopCount++\r\n\r\n const systemPrompt = await buildSystemPromptStep({\r\n contextId,\r\n narrative: config.narrative,\r\n })\r\n\r\n const { toolCalls } = await runReasoningOnceStep({\r\n contextId,\r\n systemPrompt,\r\n actions: config.actions,\r\n options: config.options ?? {},\r\n })\r\n\r\n if (!toolCalls || toolCalls.length === 0) {\r\n break\r\n }\r\n\r\n const executions = await Promise.all(\r\n toolCalls.map(async (tc: ToolCall) => {\r\n const action = config.actions.find((a) => a.name === tc.toolName)\r\n const implementationKey = (action?.implementationKey || tc.toolName) as string\r\n const result = await executeRegisteredStep({\r\n implementationKey,\r\n contextId,\r\n args: tc.args,\r\n })\r\n return { tc, action, result }\r\n })\r\n )\r\n\r\n const shouldEnd = executions.some(({ action }: { action: StoryActionSpec | undefined }) => {\r\n const isFinalByAction = Boolean(action?.finalize)\r\n const isFinalByOptions = action && Array.isArray(config.options?.finalActions)\r\n ? (config.options!.finalActions!).includes(action.name)\r\n : false\r\n return isFinalByAction || isFinalByOptions\r\n })\r\n\r\n if (shouldEnd) {\r\n break\r\n }\r\n }\r\n\r\n return { contextId, status: \"completed\" as const }\r\n }\r\n}\r\n\r\nexport type { StoryActionSpec as StoryAction, StoryOptions as StoryConfigOptions }\r\n\r\n\r\n"]}
|
package/dist/storyEngine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storyEngine.js","sourceRoot":"","sources":["../src/storyEngine.ts"],"names":[],"mappings":";;;AAkCA,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;AAMpE,SAAS,eAAe;IACtB,MAAM,CAAC,GAAG,UAAiB,CAAA;IAC3B,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,CAAC;QACnC,CAAC,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAG,EAAwB,EAAE,CAAA;IAC9E,CAAC;IACD,OAAO,CAAC,CAAC,0BAA0B,CAAgB,CAAA;AACrD,CAAC;AAEY,QAAA,MAAM,GAAG;IACpB,QAAQ,CAAC,KAAuH;QAC9H,MAAM,cAAc,GAAuC,EAAE,CAAA;QAC7D,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,OAAQ,CAAS,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC7C,cAAc,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG;oBAC9C,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI;oBAChD,OAAO,EAAE,CAAE,CAAS,CAAC,OAAO,CAAgC;iBAC7D,CAAA;YACH,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAiB;YAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAA;QACD,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO;YACL,KAAK,EAAE,CAAC,GAAW,EAAmB,EAAE;gBACtC,MAAM,EAAE,GAAG,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC7C,IAAI,CAAC,EAAE;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAA;gBACxD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;iBACvC,CAAC,CAAC,CAAA;gBACH,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;YACxF,CAAC;SACF,CAAA;IACH,CAAC;IACD,GAAG,CAAC,GAAW;QACb,OAAO,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;CACF,CAAA"}
|
|
1
|
+
{"version":3,"file":"storyEngine.js","sourceRoot":"","sources":["../src/storyEngine.ts"],"names":[],"mappings":";;;AAkCA,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;AAMpE,SAAS,eAAe;IACtB,MAAM,CAAC,GAAG,UAAiB,CAAA;IAC3B,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,CAAC;QACnC,CAAC,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAG,EAAwB,EAAE,CAAA;IAC9E,CAAC;IACD,OAAO,CAAC,CAAC,0BAA0B,CAAgB,CAAA;AACrD,CAAC;AAEY,QAAA,MAAM,GAAG;IACpB,QAAQ,CAAC,KAAuH;QAC9H,MAAM,cAAc,GAAuC,EAAE,CAAA;QAC7D,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,OAAQ,CAAS,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC7C,cAAc,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG;oBAC9C,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI;oBAChD,OAAO,EAAE,CAAE,CAAS,CAAC,OAAO,CAAgC;iBAC7D,CAAA;YACH,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAiB;YAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAA;QACD,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO;YACL,KAAK,EAAE,CAAC,GAAW,EAAmB,EAAE;gBACtC,MAAM,EAAE,GAAG,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC7C,IAAI,CAAC,EAAE;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAA;gBACxD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;iBACvC,CAAC,CAAC,CAAA;gBACH,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;YACxF,CAAC;SACF,CAAA;IACH,CAAC;IACD,GAAG,CAAC,GAAW;QACb,OAAO,eAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;CACF,CAAA","sourcesContent":["import { StoryActionSpec } from \"./story\"\r\n\r\nexport type StoryRuntimeAction = {\r\n name: string\r\n implementationKey: string\r\n execute: (args: any & { contextId?: string }) => Promise<any>\r\n}\r\n\r\nexport type StoryRuntimeCallbacks = {\r\n onToolCallExecuted?: (executionEvent: {\r\n toolCall: { toolCallId: string; toolName: string; args: any }\r\n success: boolean\r\n message?: string\r\n result?: any\r\n contextId: string\r\n }) => void | Promise<void>\r\n evaluateToolCalls?: (toolCalls: any[]) => Promise<{ success: boolean; message?: string }>\r\n onEnd?: (lastEvent: any) => void | { end?: boolean } | Promise<void | { end?: boolean }>\r\n}\r\n\r\nexport type StoryRuntime = {\r\n key: string\r\n narrative: string\r\n actions: Record<string, StoryRuntimeAction>\r\n callbacks?: StoryRuntimeCallbacks\r\n}\r\n\r\nexport type StoryDescriptor = {\r\n key: string\r\n narrative: string\r\n actions: Array<Pick<StoryActionSpec, \"name\" | \"description\" | \"inputSchema\" | \"finalize\" | \"implementationKey\">>\r\n options?: any\r\n}\r\n\r\nconst GLOBAL_STORY_ENGINE_SYMBOL = Symbol.for(\"PULZAR_STORY_ENGINE\")\r\n\r\ntype EngineState = {\r\n stories: Map<string, StoryRuntime>\r\n}\r\n\r\nfunction getGlobalEngine(): EngineState {\r\n const g = globalThis as any\r\n if (!g[GLOBAL_STORY_ENGINE_SYMBOL]) {\r\n g[GLOBAL_STORY_ENGINE_SYMBOL] = { stories: new Map<string, StoryRuntime>() }\r\n }\r\n return g[GLOBAL_STORY_ENGINE_SYMBOL] as EngineState\r\n}\r\n\r\nexport const engine = {\r\n register(story: { key: string; narrative: string; actions: StoryActionSpec[]; callbacks?: StoryRuntimeCallbacks; options?: any }) {\r\n const runtimeActions: Record<string, StoryRuntimeAction> = {}\r\n for (const a of story.actions) {\r\n if (typeof (a as any).execute === \"function\") {\r\n runtimeActions[a.implementationKey || a.name] = {\r\n name: a.name,\r\n implementationKey: a.implementationKey || a.name,\r\n execute: ((a as any).execute) as (args: any) => Promise<any>,\r\n }\r\n }\r\n }\r\n const runtime: StoryRuntime = {\r\n key: story.key,\r\n narrative: story.narrative,\r\n actions: runtimeActions,\r\n callbacks: story.callbacks,\r\n }\r\n getGlobalEngine().stories.set(story.key, runtime)\r\n return {\r\n story: (key: string): StoryDescriptor => {\r\n const rt = getGlobalEngine().stories.get(key)\r\n if (!rt) throw new Error(`Story not registered: ${key}`)\r\n const actions = story.actions.map((a) => ({\r\n name: a.name,\r\n description: a.description,\r\n inputSchema: a.inputSchema,\r\n finalize: a.finalize,\r\n implementationKey: a.implementationKey,\r\n }))\r\n return { key: story.key, narrative: story.narrative, actions, options: story.options }\r\n }\r\n }\r\n },\r\n get(key: string): StoryRuntime | undefined {\r\n return getGlobalEngine().stories.get(key)\r\n }\r\n}\r\n\r\n\r\n"]}
|
package/dist/storyRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storyRunner.js","sourceRoot":"","sources":["../src/storyRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"storyRunner.js","sourceRoot":"","sources":["../src/storyRunner.ts"],"names":[],"mappings":"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","sourcesContent":["import { engine, type StoryDescriptor } from \"./storyEngine\"\r\nimport { ensureContextStep, buildSystemPromptStep } from \"./steps-context\"\r\nimport { runReasoningOnceStep } from \"./steps/ai\"\r\nimport { executeRegisteredStep } from \"./steps/base\"\r\n\r\ntype ToolCall = { toolCallId: string; toolName: string; args: any }\r\n\r\nexport async function storyRunner(serialized: StoryDescriptor, args?: { context?: any }) {\r\n \"use workflow\"\r\n\r\n const maxLoops = 10\r\n\r\n const { contextId } = await ensureContextStep({ key: serialized.key, context: args?.context ?? null })\r\n\r\n let loopCount = 0\r\n while (loopCount < maxLoops) {\r\n loopCount++\r\n\r\n const systemPrompt = await buildSystemPromptStep({\r\n contextId,\r\n narrative: serialized.narrative,\r\n })\r\n\r\n const { toolCalls } = await runReasoningOnceStep({\r\n contextId,\r\n systemPrompt,\r\n actions: serialized.actions.map((a) => ({\r\n name: a.name,\r\n description: a.description,\r\n implementationKey: a.implementationKey || a.name,\r\n inputSchema: a.inputSchema,\r\n finalize: a.finalize,\r\n })),\r\n options: { reasoningEffort: \"medium\" },\r\n })\r\n\r\n if (!toolCalls || toolCalls.length === 0) {\r\n break\r\n }\r\n\r\n const rt = engine.get(serialized.key)\r\n if (!rt) throw new Error(`Story runtime not found for key=${serialized.key}`)\r\n\r\n const executions = await Promise.all(\r\n toolCalls.map(async (tc: ToolCall) => {\r\n const implKey = tc.toolName\r\n const action = rt.actions[implKey]\r\n if (action && typeof action.execute === \"function\") {\r\n // Ejecutar en el runtime local (no serializable) dentro de un step wrapper\r\n return await executeRegisteredStep({ implementationKey: implKey, contextId, args: tc.args })\r\n }\r\n // fallback: ejecutar step registrado directo si existe\r\n return await executeRegisteredStep({ implementationKey: implKey, contextId, args: tc.args })\r\n })\r\n )\r\n\r\n const shouldEnd = executions.some((_r: any, i: number) => {\r\n const a = serialized.actions.find((x) => (x.implementationKey || x.name) === toolCalls[i].toolName)\r\n return Boolean(a?.finalize)\r\n })\r\n if (shouldEnd) break\r\n }\r\n\r\n return { success: true, contextId }\r\n}\r\n\r\n\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC","sourcesContent":["export * from \"./sampleWorkflow\";"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampleWorkflow.js","sourceRoot":"","sources":["../../src/workflows/sampleWorkflow.ts"],"names":[],"mappings":";;AAcA,wCAqBC;AAnCD,oDAAiD;AAc1C,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,cAAc,CAAC;IACf,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAEvB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,CAAC;IAEzC,OAAO;QACL,EAAE,EAAE,IAAI;QACR,QAAQ,EAAE,mBAAmB;QAC7B,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,oBAAoB,SAAS,EAAE;QACtC,aAAa,EAAE,IAAI;KACpB,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"sampleWorkflow.js","sourceRoot":"","sources":["../../src/workflows/sampleWorkflow.ts"],"names":[],"mappings":";;AAcA,wCAqBC;AAnCD,oDAAiD;AAc1C,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,cAAc,CAAC;IACf,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAEvB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,CAAC;IAEzC,OAAO;QACL,EAAE,EAAE,IAAI;QACR,QAAQ,EAAE,mBAAmB;QAC7B,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,oBAAoB,SAAS,EAAE;QACtC,aAAa,EAAE,IAAI;KACpB,CAAC;AACJ,CAAC","sourcesContent":["import { sampleStep } from \"../steps/sampleStep\";\n\nexport interface SampleWorkflowInput {\n text: string;\n}\n\nexport interface SampleWorkflowOutput {\n ok: boolean;\n workflow: string;\n echo: string;\n upper: string;\n stepProcessed: boolean;\n}\n\nexport async function sampleWorkflow(input: SampleWorkflowInput): Promise<SampleWorkflowOutput> {\n \"use workflow\";\n if (input == null) {\n throw new Error(\"input is required\");\n }\n\n const { text } = input;\n\n if (text == null) {\n throw new Error(\"text is required\");\n }\n\n const uppercase = await sampleStep(text);\n\n return {\n ok: true,\n workflow: 'library:workbench',\n echo: text,\n upper: `[STEP-PROCESSED] ${uppercase}`,\n stepProcessed: true,\n };\n}"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ekairos/story",
|
|
3
|
-
"version": "1.18.
|
|
3
|
+
"version": "1.18.5-beta.0",
|
|
4
4
|
"description": "Pulzar Story - Workflow-based AI Stories",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -27,12 +27,13 @@
|
|
|
27
27
|
"scripts": {
|
|
28
28
|
"build": "tsc -p tsconfig.json",
|
|
29
29
|
"dev": "tsc -p tsconfig.json --watch",
|
|
30
|
+
"watch": "tsc -p tsconfig.json --watch",
|
|
30
31
|
"clean": "node -e \"require('fs').rmSync('dist', {recursive:true, force:true})\"",
|
|
31
32
|
"typecheck": "tsc --noEmit"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {
|
|
34
35
|
"@ai-sdk/openai": "^2.0.52",
|
|
35
|
-
"@ekairos/domain": "^1.18.
|
|
36
|
+
"@ekairos/domain": "^1.18.5-beta.0",
|
|
36
37
|
"@instantdb/admin": "^0.22.13",
|
|
37
38
|
"@instantdb/core": "^0.22.13",
|
|
38
39
|
"@vercel/sandbox": "^0.0.23",
|