@qotaq/lalphgram 0.1.7 → 0.1.8
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/cjs/lib/StreamJsonParser.js +2 -2
- package/dist/cjs/lib/StreamJsonParser.js.map +1 -1
- package/dist/cjs/services/ChatMachine.js +9 -2
- package/dist/cjs/services/ChatMachine.js.map +1 -1
- package/dist/cjs/services/LalphConfig.js +18 -1
- package/dist/cjs/services/LalphConfig.js.map +1 -1
- package/dist/cjs/services/LinearSdkClient.js +13 -5
- package/dist/cjs/services/LinearSdkClient.js.map +1 -1
- package/dist/cjs/services/PlanSession.js +44 -5
- package/dist/cjs/services/PlanSession.js.map +1 -1
- package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js +7 -3
- package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js.map +1 -1
- package/dist/cjs/services/TaskTracker/LinearTracker.js +5 -1
- package/dist/cjs/services/TaskTracker/LinearTracker.js.map +1 -1
- package/dist/cjs/shim/main.js +4 -1
- package/dist/cjs/shim/main.js.map +1 -1
- package/dist/dts/lib/StreamJsonParser.d.ts +2 -1
- package/dist/dts/lib/StreamJsonParser.d.ts.map +1 -1
- package/dist/dts/services/AutoMerge.d.ts +1 -1
- package/dist/dts/services/ChatMachine.d.ts +1 -1
- package/dist/dts/services/ChatMachine.d.ts.map +1 -1
- package/dist/dts/services/EventLoop.d.ts +2 -2
- package/dist/dts/services/LalphConfig.d.ts +1 -0
- package/dist/dts/services/LalphConfig.d.ts.map +1 -1
- package/dist/dts/services/LinearSdkClient.d.ts +1 -0
- package/dist/dts/services/LinearSdkClient.d.ts.map +1 -1
- package/dist/dts/services/PlanOverviewUploaderMap.d.ts +1 -1
- package/dist/dts/services/PlanSession.d.ts.map +1 -1
- package/dist/dts/services/PullRequestTracker.d.ts +1 -1
- package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts +2 -1
- package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts.map +1 -1
- package/dist/dts/services/TaskTracker/LinearTracker.d.ts +2 -1
- package/dist/dts/services/TaskTracker/LinearTracker.d.ts.map +1 -1
- package/dist/dts/services/TrackerLayerMap.d.ts +1 -1
- package/dist/dts/shim/main.d.ts +1 -1
- package/dist/dts/shim/main.d.ts.map +1 -1
- package/dist/esm/lib/StreamJsonParser.js +1 -1
- package/dist/esm/lib/StreamJsonParser.js.map +1 -1
- package/dist/esm/services/ChatMachine.js +9 -2
- package/dist/esm/services/ChatMachine.js.map +1 -1
- package/dist/esm/services/LalphConfig.js +19 -2
- package/dist/esm/services/LalphConfig.js.map +1 -1
- package/dist/esm/services/LinearSdkClient.js +13 -5
- package/dist/esm/services/LinearSdkClient.js.map +1 -1
- package/dist/esm/services/PlanSession.js +44 -5
- package/dist/esm/services/PlanSession.js.map +1 -1
- package/dist/esm/services/TaskTracker/GitHubIssueTracker.js +7 -3
- package/dist/esm/services/TaskTracker/GitHubIssueTracker.js.map +1 -1
- package/dist/esm/services/TaskTracker/LinearTracker.js +5 -1
- package/dist/esm/services/TaskTracker/LinearTracker.js.map +1 -1
- package/dist/esm/shim/main.js +4 -1
- package/dist/esm/shim/main.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/StreamJsonParser.ts +1 -1
- package/src/services/ChatMachine.ts +11 -3
- package/src/services/LalphConfig.ts +37 -2
- package/src/services/LinearSdkClient.ts +6 -1
- package/src/services/PlanSession.ts +57 -6
- package/src/services/TaskTracker/GitHubIssueTracker.ts +10 -3
- package/src/services/TaskTracker/LinearTracker.ts +4 -1
- package/src/shim/main.ts +4 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanSession.js","names":["Command","CommandExecutor","FileSystem","Path","Context","Data","Effect","Exit","Layer","Option","Queue","Ref","Schema","Scope","Stream","AskUserQuestionInput","parseNdjsonMessages","AppContext","PlanSessionError","TaggedError","PlanTextOutput","TaggedClass","PlanCompleted","PlanFailed","PlanQuestion","PlanSpecCreated","PlanSpecUpdated","PlanAnalysisReady","PlanAwaitingInput","PlanSession","Tag","PlanCommandBuilder","stripAnsi","text","replace","WriteToolInput","Struct","file_path","String","EditToolInput","NotebookEditToolInput","notebook_path","decodeWriteInput","decodeUnknown","decodeEditInput","decodeNotebookInput","isSpecFile","path","includes","endsWith","isAnalysisFile","decodeAskInput","PlanSessionLive","scoped","gen","fs","pathService","appContext","executor","buildCommand","sessionRef","make","none","idleRef","specsDirRef","eventQueue","unbounded","seenFilePaths","Set","closeActiveSession","current","get","isSome","close","value","scope","void","set","addFinalizer","start","planText","projectId","message","cause","tempDir","join","configDir","makeDirectory","recursive","pipe","mapError","err","tempFile","Date","now","writeFileString","cmd","processScope","process","provideService","extend","stdinQueue","some","log","annotateLogs","fromQueue","run","stdin","catchAll","logError","forkDaemon","encoder","TextEncoder","offer","encode","decoder","TextDecoder","pendingTextRef","flushPendingText","pending","textLength","length","detectFileEvent","block","filePathResult","name","input","fail","option","fp","dirname","filePath","seen","has","update","s","processContentBlock","messageId","hasAskUser","type","askParsed","orElseSucceed","questions","undefined","tool","processAssistantMessage","msg","content","id","b","routeMessage","messageType","subtype","JSON","stringify","stdout","map","chunk","decode","tap","chunkLength","preview","slice","mapEffect","runDrain","tapError","stderr","flatMap","lines","split","filter","line","trim","fromIterable","exitCode","answer","isNone","sendFollowUp","interrupt","approve","reject","isActive","isIdle","readSpecFile","fileName","specsDir","readFileString","readFeatureAnalysis","analysis","services","test","readBugAnalysis","readRefactorAnalysis","readDefaultAnalysis","events","of","service"],"sources":["../../../src/services/PlanSession.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAIA,SAASA,OAAO,EAAEC,eAAe,EAAEC,UAAU,EAAEC,IAAI,QAAQ,kBAAkB;AAC7E,SAASC,OAAO,EAAEC,IAAI,EAAEC,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAEC,GAAG,EAAEC,MAAM,EAAEC,KAAK,EAAEC,MAAM,QAAQ,QAAQ;AAEtG,SAASC,oBAAoB,EAAEC,mBAAmB,QAAQ,4BAA4B;AACtF,SAASC,UAAU,QAAQ,iBAAiB;AAE5C;;;;AAIA,OAAM,MAAOC,gBAAiB,sBAAQb,IAAI,CAACc,WAAW,CAAC,kBAAkB,CAGvE;AAEF;;;;AAIA,OAAM,MAAOC,cAAe,sBAAQf,IAAI,CAACgB,WAAW,CAAC,gBAAgB,CAEnE;AAEF;;;;AAIA,OAAM,MAAOC,aAAc,sBAAQjB,IAAI,CAACgB,WAAW,CAAC,eAAe,CAEjE;AAEF;;;;AAIA,OAAM,MAAOE,UAAW,sBAAQlB,IAAI,CAACgB,WAAW,CAAC,YAAY,CAE3D;AAEF;;;;AAIA,OAAM,MAAOG,YAAa,sBAAQnB,IAAI,CAACgB,WAAW,CAAC,cAAc,CAO/D;AAEF;;;;AAIA,OAAM,MAAOI,eAAgB,sBAAQpB,IAAI,CAACgB,WAAW,CAAC,iBAAiB,CAErE;AAEF;;;;AAIA,OAAM,MAAOK,eAAgB,sBAAQrB,IAAI,CAACgB,WAAW,CAAC,iBAAiB,CAErE;AAEF;;;;AAIA,OAAM,MAAOM,iBAAkB,sBAAQtB,IAAI,CAACgB,WAAW,CAAC,mBAAmB,CAEzE;AAEF;;;;AAIA,OAAM,MAAOO,iBAAkB,sBAAQvB,IAAI,CAACgB,WAAW,CAAC,mBAAmB,CAAwB;AAiDnG;;;;AAIA,OAAM,MAAOQ,WAAY,sBAAQzB,OAAO,CAAC0B,GAAG,CAAC,aAAa,CAAC,EAGxD;AAEH;;;;;AAKA,OAAM,MAAOC,kBAAmB,sBAAQ3B,OAAO,CAAC0B,GAAG,CAAC,oBAAoB,CAAC,EAGtE;AAEH,MAAME,SAAS,GAAIC,IAAY;AAC7B;AACAA,IAAI,CAACC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;AAE/C,MAAMC,cAAc,gBAAGvB,MAAM,CAACwB,MAAM,CAAC;EAAEC,SAAS,EAAEzB,MAAM,CAAC0B;AAAM,CAAE,CAAC;AAClE,MAAMC,aAAa,gBAAG3B,MAAM,CAACwB,MAAM,CAAC;EAAEC,SAAS,EAAEzB,MAAM,CAAC0B;AAAM,CAAE,CAAC;AACjE,MAAME,qBAAqB,gBAAG5B,MAAM,CAACwB,MAAM,CAAC;EAAEK,aAAa,EAAE7B,MAAM,CAAC0B;AAAM,CAAE,CAAC;AAE7E,MAAMI,gBAAgB,gBAAG9B,MAAM,CAAC+B,aAAa,CAACR,cAAc,CAAC;AAC7D,MAAMS,eAAe,gBAAGhC,MAAM,CAAC+B,aAAa,CAACJ,aAAa,CAAC;AAC3D,MAAMM,mBAAmB,gBAAGjC,MAAM,CAAC+B,aAAa,CAACH,qBAAqB,CAAC;AAEvE,MAAMM,UAAU,GAAIC,IAAY,IAC7B,CAACA,IAAI,CAACC,QAAQ,CAAC,SAAS,CAAC,IAAID,IAAI,CAACC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAACD,IAAI,CAACE,QAAQ,CAAC,aAAa,CAAC,IACzFF,IAAI,CAACE,QAAQ,CAAC,kBAAkB,CAAC;AAEnC,MAAMC,cAAc,GAAIH,IAAY,IAClCA,IAAI,CAACE,QAAQ,CAAC,oBAAoB,CAAC,IAAIF,IAAI,CAACE,QAAQ,CAAC,qBAAqB,CAAC;AAE7E,MAAME,cAAc,gBAAGvC,MAAM,CAAC+B,aAAa,CAAC5B,oBAAoB,CAAC;AAEjE;;;;AAIA,OAAO,MAAMqC,eAAe,gBAAG5C,KAAK,CAAC6C,MAAM,CACzCxB,WAAW,eACXvB,MAAM,CAACgD,GAAG,CAAC,aAAS;EAClB,MAAMC,EAAE,GAAG,OAAOrD,UAAU,CAACA,UAAU;EACvC,MAAMsD,WAAW,GAAG,OAAOrD,IAAI,CAACA,IAAI;EACpC,MAAMsD,UAAU,GAAG,OAAOxC,UAAU;EACpC,MAAMyC,QAAQ,GAAG,OAAOzD,eAAe,CAACA,eAAe;EACvD,MAAM0D,YAAY,GAAG,OAAO5B,kBAAkB;EAC9C,MAAM6B,UAAU,GAAG,OAAOjD,GAAG,CAACkD,IAAI,CAA+BpD,MAAM,CAACqD,IAAI,EAAE,CAAC;EAC/E,MAAMC,OAAO,GAAG,OAAOpD,GAAG,CAACkD,IAAI,CAAC,KAAK,CAAC;EACtC,MAAMG,WAAW,GAAG,OAAOrD,GAAG,CAACkD,IAAI,CAAwBpD,MAAM,CAACqD,IAAI,EAAE,CAAC;EACzE,MAAMG,UAAU,GAAG,OAAOvD,KAAK,CAACwD,SAAS,EAAa;EACtD,MAAMC,aAAa,GAAG,OAAOxD,GAAG,CAACkD,IAAI,CAAsB,IAAIO,GAAG,EAAE,CAAC;EAErE,MAAMC,kBAAkB,GAAG/D,MAAM,CAACgD,GAAG,CAAC,aAAS;IAC7C,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAAC+D,MAAM,CAACF,OAAO,CAAC,EAAE;MAC1B,OAAOzD,KAAK,CAAC4D,KAAK,CAACH,OAAO,CAACI,KAAK,CAACC,KAAK,EAAEpE,IAAI,CAACqE,IAAI,CAAC;MAClD,OAAOjE,GAAG,CAACkE,GAAG,CAACjB,UAAU,EAAEnD,MAAM,CAACqD,IAAI,EAAE,CAAC;IAC3C;EACF,CAAC,CAAC;EAEF,OAAOxD,MAAM,CAACwE,YAAY,CAAC,MAAMT,kBAAkB,CAAC;EAEpD,MAAMU,KAAK,GAAGA,CACZC,QAAgB,EAChBC,SAA8B,KAE9B3E,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClB,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAAC+D,MAAM,CAACF,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,kCAAkC;QAC3CC,KAAK,EAAE;OACR,CAAC;IACJ;IAEA,OAAOxE,GAAG,CAACkE,GAAG,CAACV,aAAa,EAAE,IAAIC,GAAG,EAAE,CAAC;IACxC,OAAOzD,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,KAAK,CAAC;IAC9B,OAAOpD,GAAG,CAACkE,GAAG,CAACb,WAAW,EAAEvD,MAAM,CAACqD,IAAI,EAAE,CAAC;IAE1C,MAAMsB,OAAO,GAAG5B,WAAW,CAAC6B,IAAI,CAAC5B,UAAU,CAAC6B,SAAS,EAAE,KAAK,CAAC;IAC7D,OAAO/B,EAAE,CAACgC,aAAa,CAACH,OAAO,EAAE;MAAEI,SAAS,EAAE;IAAI,CAAE,CAAC,CAACC,IAAI,CACxDnF,MAAM,CAACoF,QAAQ,CAAEC,GAAG,IAClB,IAAIzE,gBAAgB,CAAC;MAAEgE,OAAO,EAAE,8BAA8B5C,MAAM,CAACqD,GAAG,CAAC,EAAE;MAAER,KAAK,EAAEQ;IAAG,CAAE,CAAC,CAC3F,CACF;IAED,MAAMC,QAAQ,GAAGpC,WAAW,CAAC6B,IAAI,CAACD,OAAO,EAAE,QAAQS,IAAI,CAACC,GAAG,EAAE,KAAK,CAAC;IACnE,OAAOvC,EAAE,CAACwC,eAAe,CAACH,QAAQ,EAAEZ,QAAQ,CAAC,CAACS,IAAI,CAChDnF,MAAM,CAACoF,QAAQ,CAAEC,GAAG,IAClB,IAAIzE,gBAAgB,CAAC;MAAEgE,OAAO,EAAE,8BAA8B5C,MAAM,CAACqD,GAAG,CAAC,EAAE;MAAER,KAAK,EAAEQ;IAAG,CAAE,CAAC,CAC3F,CACF;IAED,MAAMK,GAAG,GAAGrC,YAAY,CAACiC,QAAQ,CAAC;IAElC,MAAMK,YAAY,GAAG,OAAOpF,KAAK,CAACgD,IAAI,EAAE;IAExC,MAAMqC,OAAO,GAAG,OAAOlG,OAAO,CAAC+E,KAAK,CAACiB,GAAG,CAAC,CAACP,IAAI,CAC5CnF,MAAM,CAAC6F,cAAc,CAAClG,eAAe,CAACA,eAAe,EAAEyD,QAAQ,CAAC,EAChE7C,KAAK,CAACuF,MAAM,CAACH,YAAY,CAAC,EAC1B3F,MAAM,CAACoF,QAAQ,CAAEC,GAAG,IAClB,IAAIzE,gBAAgB,CAAC;MAAEgE,OAAO,EAAE,+BAA+B5C,MAAM,CAACqD,GAAG,CAAC,EAAE;MAAER,KAAK,EAAEQ;IAAG,CAAE,CAAC,CAC5F,CACF;IAED,MAAMU,UAAU,GAAG,OAAO3F,KAAK,CAACwD,SAAS,EAAc;IACvD,OAAOvD,GAAG,CAACkE,GAAG,CAACjB,UAAU,EAAEnD,MAAM,CAAC6F,IAAI,CAAC;MAAEJ,OAAO;MAAEvB,KAAK,EAAEsB,YAAY;MAAEI;IAAU,CAAE,CAAC,CAAC;IACrF,OAAO/F,MAAM,CAACiG,GAAG,CAAC,8BAA8B,CAAC,CAACd,IAAI,CACpDnF,MAAM,CAACkG,YAAY,CAAC;MAAEZ;IAAQ,CAAE,CAAC,CAClC;IAED,OAAO9E,MAAM,CAAC2F,SAAS,CAACJ,UAAU,CAAC,CAACZ,IAAI,CACtC3E,MAAM,CAAC4F,GAAG,CAACR,OAAO,CAACS,KAAK,CAAC,EACzBrG,MAAM,CAACsG,QAAQ,CAAEjB,GAAG,IAAKrF,MAAM,CAACuG,QAAQ,CAAC,sBAAsBvE,MAAM,CAACqD,GAAG,CAAC,EAAE,CAAC,CAAC,EAC9ErF,MAAM,CAACwG,UAAU,CAClB;IAED,IAAI7B,SAAS,IAAI,IAAI,EAAE;MACrB,MAAM8B,OAAO,GAAG,IAAIC,WAAW,EAAE;MACjC,OAAOtG,KAAK,CAACuG,KAAK,CAACZ,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACjC,SAAS,GAAG,IAAI,CAAC,CAAC;MAChE,OAAO3E,MAAM,CAACiG,GAAG,CAAC,gCAAgC,CAAC,CAACd,IAAI,CACtDnF,MAAM,CAACkG,YAAY,CAAC;QAAEvB;MAAS,CAAE,CAAC,CACnC;IACH;IAEA,MAAMkC,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,MAAMC,cAAc,GAAG,OAAO1G,GAAG,CAACkD,IAAI,CACpCpD,MAAM,CAACqD,IAAI,EAAE,CACd;IAED,MAAMwD,gBAAgB,GAAGhH,MAAM,CAACgD,GAAG,CAAC,aAAS;MAC3C,MAAMiE,OAAO,GAAG,OAAO5G,GAAG,CAAC4D,GAAG,CAAC8C,cAAc,CAAC;MAC9C,IAAI5G,MAAM,CAAC+D,MAAM,CAAC+C,OAAO,CAAC,EAAE;QAC1B,OAAOjH,MAAM,CAACiG,GAAG,CAAC,8BAA8B,CAAC,CAACd,IAAI,CACpDnF,MAAM,CAACkG,YAAY,CAAC;UAAEgB,UAAU,EAAElF,MAAM,CAACiF,OAAO,CAAC7C,KAAK,CAACzC,IAAI,CAACwF,MAAM;QAAC,CAAE,CAAC,CACvE;QACD,OAAO/G,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAI7C,cAAc,CAAC;UAAEa,IAAI,EAAEsF,OAAO,CAAC7C,KAAK,CAACzC;QAAI,CAAE,CAAC,CAAC;QAChF,OAAOtB,GAAG,CAACkE,GAAG,CAACwC,cAAc,EAAE5G,MAAM,CAACqD,IAAI,EAAE,CAAC;MAC/C;IACF,CAAC,CAAC;IAEF,MAAM4D,eAAe,GAAIC,KAA+B,IACtDrH,MAAM,CAACgD,GAAG,CAAC,aAAS;MAClB,MAAMsE,cAAc,GAAG,OAAOtH,MAAM,CAACgD,GAAG,CAAC,aAAS;QAChD,QAAQqE,KAAK,CAACE,IAAI;UAChB,KAAK,OAAO;YACV,OAAO,CAAC,OAAOnF,gBAAgB,CAACiF,KAAK,CAACG,KAAK,CAAC,EAAEzF,SAAS;UACzD,KAAK,MAAM;YACT,OAAO,CAAC,OAAOO,eAAe,CAAC+E,KAAK,CAACG,KAAK,CAAC,EAAEzF,SAAS;UACxD,KAAK,cAAc;YACjB,OAAO,CAAC,OAAOQ,mBAAmB,CAAC8E,KAAK,CAACG,KAAK,CAAC,EAAErF,aAAa;UAChE;YACE,OAAO,OAAOnC,MAAM,CAACyH,IAAI,CAAC,yBAAyB,CAAC;QACxD;MACF,CAAC,CAAC,CAACtC,IAAI,CAACnF,MAAM,CAAC0H,MAAM,CAAC;MACtB,IAAIvH,MAAM,CAAC+D,MAAM,CAACoD,cAAc,CAAC,EAAE;QACjC,MAAMK,EAAE,GAAGL,cAAc,CAAClD,KAAK;QAC/B,IAAIuD,EAAE,CAACjF,QAAQ,CAAC,SAAS,CAAC,IAAIiF,EAAE,CAACjF,QAAQ,CAAC,UAAU,CAAC,EAAE;UACrD,OAAOrC,GAAG,CAACkE,GAAG,CAACb,WAAW,EAAEvD,MAAM,CAAC6F,IAAI,CAAC9C,WAAW,CAAC0E,OAAO,CAACD,EAAE,CAAC,CAAC,CAAC;QACnE;QACA,IAAI/E,cAAc,CAAC+E,EAAE,CAAC,EAAE;UACtB,OAAO3H,MAAM,CAACiG,GAAG,CAAC,wBAAwB,CAAC,CAACd,IAAI,CAC9CnF,MAAM,CAACkG,YAAY,CAAC;YAAE2B,QAAQ,EAAEF;UAAE,CAAE,CAAC,CACtC;UACD,OAAOvH,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAItC,iBAAiB,CAAC;YAAEwG,QAAQ,EAAEF;UAAE,CAAE,CAAC,CAAC;QACzE,CAAC,MAAM,IAAInF,UAAU,CAACmF,EAAE,CAAC,EAAE;UACzB,MAAMG,IAAI,GAAG,OAAOzH,GAAG,CAAC4D,GAAG,CAACJ,aAAa,CAAC;UAC1C,IAAIiE,IAAI,CAACC,GAAG,CAACJ,EAAE,CAAC,EAAE;YAChB,OAAO3H,MAAM,CAACiG,GAAG,CAAC,mBAAmB,CAAC,CAACd,IAAI,CACzCnF,MAAM,CAACkG,YAAY,CAAC;cAAE2B,QAAQ,EAAEF;YAAE,CAAE,CAAC,CACtC;YACD,OAAOvH,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAIvC,eAAe,CAAC;cAAEyG,QAAQ,EAAEF;YAAE,CAAE,CAAC,CAAC;UACvE,CAAC,MAAM;YACL,OAAOtH,GAAG,CAAC2H,MAAM,CAACnE,aAAa,EAAGoE,CAAC,IAAK,IAAInE,GAAG,CAAC,CAAC,GAAGmE,CAAC,EAAEN,EAAE,CAAC,CAAC,CAAC;YAC5D,OAAO3H,MAAM,CAACiG,GAAG,CAAC,mBAAmB,CAAC,CAACd,IAAI,CACzCnF,MAAM,CAACkG,YAAY,CAAC;cAAE2B,QAAQ,EAAEF;YAAE,CAAE,CAAC,CACtC;YACD,OAAOvH,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAIxC,eAAe,CAAC;cAAE0G,QAAQ,EAAEF;YAAE,CAAE,CAAC,CAAC;UACvE;QACF;MACF;IACF,CAAC,CAAC;IAEJ,MAAMO,mBAAmB,GAAGA,CAACb,KAA+B,EAAEc,SAAiB,EAAEC,UAAmB,KAClGpI,MAAM,CAACgD,GAAG,CAAC,aAAS;MAClB,IAAIqE,KAAK,CAACgB,IAAI,KAAK,MAAM,IAAIhB,KAAK,CAAC1F,IAAI,IAAI,IAAI,IAAIyG,UAAU,EAAE;QAC7D,OAAOpI,MAAM,CAACiG,GAAG,CAAC,gDAAgD,CAAC;MACrE,CAAC,MAAM,IAAIoB,KAAK,CAACgB,IAAI,KAAK,MAAM,IAAIhB,KAAK,CAAC1F,IAAI,IAAI,IAAI,EAAE;QACtD,OAAO3B,MAAM,CAACiG,GAAG,CAAC,sBAAsB,CAAC,CAACd,IAAI,CAC5CnF,MAAM,CAACkG,YAAY,CAAC;UAAEgB,UAAU,EAAElF,MAAM,CAACqF,KAAK,CAAC1F,IAAI,CAACwF,MAAM,CAAC;UAAEgB;QAAS,CAAE,CAAC,CAC1E;QACD,OAAO9H,GAAG,CAACkE,GAAG,CAACwC,cAAc,EAAE5G,MAAM,CAAC6F,IAAI,CAAC;UAAEmC,SAAS;UAAExG,IAAI,EAAE0F,KAAK,CAAC1F;QAAI,CAAE,CAAC,CAAC;MAC9E,CAAC,MAAM,IAAI0F,KAAK,CAACgB,IAAI,KAAK,UAAU,IAAIhB,KAAK,CAACE,IAAI,KAAK,yBAAyB,EAAE;QAChF,OAAOvH,MAAM,CAACiG,GAAG,CAAC,sDAAsD,CAAC;QACzE,OAAO5F,GAAG,CAACkE,GAAG,CAACwC,cAAc,EAAE5G,MAAM,CAACqD,IAAI,EAAE,CAAC;QAC7C,MAAM8E,SAAS,GAAG,OAAOzF,cAAc,CAACwE,KAAK,CAACG,KAAK,CAAC,CAACrC,IAAI,CACvDnF,MAAM,CAACuI,aAAa,CAAC,OAAO;UAAEC,SAAS,EAAEC;QAAS,CAAE,CAAC,CAAC,CACvD;QACD,IAAIH,SAAS,CAACE,SAAS,IAAI,IAAI,IAAIF,SAAS,CAACE,SAAS,CAACrB,MAAM,GAAG,CAAC,EAAE;UACjE,OAAO/G,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAIzC,YAAY,CAAC;YAAEsH,SAAS,EAAEF,SAAS,CAACE;UAAS,CAAE,CAAC,CAAC;QACtF;MACF,CAAC,MAAM,IAAInB,KAAK,CAACgB,IAAI,KAAK,UAAU,IAAIhB,KAAK,CAACE,IAAI,IAAI,IAAI,EAAE;QAC1D,OAAOvH,MAAM,CAACiG,GAAG,CAAC,cAAc,CAAC,CAACd,IAAI,CACpCnF,MAAM,CAACkG,YAAY,CAAC;UAAEwC,IAAI,EAAErB,KAAK,CAACE;QAAI,CAAE,CAAC,CAC1C;QACD,OAAOH,eAAe,CAACC,KAAK,CAAC;MAC/B;IACF,CAAC,CAAC;IAEJ,MAAMsB,uBAAuB,GAAIC,GAAsB,IACrD5I,MAAM,CAACgD,GAAG,CAAC,aAAS;MAClB,MAAM6F,OAAO,GAAGD,GAAG,CAAChE,OAAO,EAAEiE,OAAO;MACpC,IAAIA,OAAO,IAAI,IAAI,EAAE;MACrB,MAAMV,SAAS,GAAGS,GAAG,CAAChE,OAAO,EAAEkE,EAAE,IAAI,EAAE;MACvC,MAAM7B,OAAO,GAAG,OAAO5G,GAAG,CAAC4D,GAAG,CAAC8C,cAAc,CAAC;MAC9C,IAAI5G,MAAM,CAAC+D,MAAM,CAAC+C,OAAO,CAAC,IAAIA,OAAO,CAAC7C,KAAK,CAAC+D,SAAS,KAAKA,SAAS,EAAE;QACnE,OAAOnB,gBAAgB;MACzB;MACA,MAAMoB,UAAU,GAAGS,OAAO,CAAC7C,IAAI,CAC5B+C,CAAC,IAAKA,CAAC,CAACV,IAAI,KAAK,UAAU,IAAIU,CAAC,CAACxB,IAAI,KAAK,yBAAyB,CACrE;MACD,KAAK,MAAMF,KAAK,IAAIwB,OAAO,EAAE;QAC3B,OAAOX,mBAAmB,CAACb,KAAK,EAAEc,SAAS,EAAEC,UAAU,CAAC;MAC1D;IACF,CAAC,CAAC;IAEJ,MAAMY,YAAY,GAAIJ,GAAsB,IAC1C5I,MAAM,CAACgD,GAAG,CAAC,aAAS;MAClB,OAAOhD,MAAM,CAACiG,GAAG,CAAC,4BAA4B,CAAC,CAACd,IAAI,CAClDnF,MAAM,CAACkG,YAAY,CAAC;QAClB+C,WAAW,EAAEL,GAAG,CAACP,IAAI;QACrB,IAAIO,GAAG,CAACM,OAAO,IAAI,IAAI,GAAG;UAAEA,OAAO,EAAEN,GAAG,CAACM;QAAO,CAAE,GAAG,EAAE;OACxD,CAAC,CACH;MACD,IAAIN,GAAG,CAACP,IAAI,KAAK,YAAY,EAAE;QAC7B,OAAOrI,MAAM,CAACiG,GAAG,CAAC,8CAA8C,CAAC;QACjE,MAAMQ,OAAO,GAAG,IAAIC,WAAW,EAAE;QACjC,OAAOtG,KAAK,CAACuG,KAAK,CAACZ,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACuC,IAAI,CAACC,SAAS,CAAC;UAAEf,IAAI,EAAE;QAAY,CAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7F;MACF;MACA,IAAIO,GAAG,CAACP,IAAI,KAAK,QAAQ,EAAE;QACzB,OAAOrB,gBAAgB;QACvB,OAAO3G,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,IAAI,CAAC;QAC7B,OAAOrD,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAIrC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACzD,OAAOtB,MAAM,CAACiG,GAAG,CAAC,yBAAyB,CAAC;QAC5C;MACF;MACA,IAAI2C,GAAG,CAACP,IAAI,KAAK,WAAW,IAAIO,GAAG,CAAChE,OAAO,EAAEiE,OAAO,IAAI,IAAI,EAAE;QAC5D,OAAO7B,gBAAgB;QACvB;MACF;MACA,OAAO2B,uBAAuB,CAACC,GAAG,CAAC;IACrC,CAAC,CAAC;IAEJ,OAAOhD,OAAO,CAACyD,MAAM,CAAClE,IAAI,CACxB3E,MAAM,CAAC8I,GAAG,CAAEC,KAAK,IAAK1C,OAAO,CAAC2C,MAAM,CAACD,KAAK,CAAC,CAAC,EAC5C/I,MAAM,CAACiJ,GAAG,CAAEF,KAAK,IACfvJ,MAAM,CAACiG,GAAG,CAAC,uBAAuB,CAAC,CAACd,IAAI,CACtCnF,MAAM,CAACkG,YAAY,CAAC;MAAEwD,WAAW,EAAE1H,MAAM,CAACuH,KAAK,CAACpC,MAAM,CAAC;MAAEwC,OAAO,EAAEJ,KAAK,CAACK,KAAK,CAAC,CAAC,EAAE,GAAG;IAAC,CAAE,CAAC,CACzF,CACF,EACDpJ,MAAM,CAAC8I,GAAG,CAAC5H,SAAS,CAAC,EACrBlB,MAAM,CAAC8I,GAAG,CAAE3H,IAAI,IAAKA,IAAI,CAACC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAC/ClB,mBAAmB,EACnBF,MAAM,CAACqJ,SAAS,CAACb,YAAY,CAAC,EAC9BxI,MAAM,CAACsJ,QAAQ,EACf9J,MAAM,CAACyJ,GAAG,CAAC,MAAMzC,gBAAgB,CAAC,EAClChH,MAAM,CAACyJ,GAAG,CAAC,MAAMzJ,MAAM,CAACiG,GAAG,CAAC,yBAAyB,CAAC,CAAC,EACvDjG,MAAM,CAAC+J,QAAQ,CAAE1E,GAAG,IAClBjF,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAI1C,UAAU,CAAC;MAAE2D,OAAO,EAAE,wBAAwB5C,MAAM,CAACqD,GAAG,CAAC;IAAE,CAAE,CAAC,CAAC,CAC5F,EACDrF,MAAM,CAACsG,QAAQ,CAAEjB,GAAG,IAAKrF,MAAM,CAACuG,QAAQ,CAAC,wBAAwBvE,MAAM,CAACqD,GAAG,CAAC,EAAE,CAAC,CAAC,EAChFrF,MAAM,CAACwG,UAAU,CAClB;IAED,OAAOZ,OAAO,CAACoE,MAAM,CAAC7E,IAAI,CACxB3E,MAAM,CAAC8I,GAAG,CAAEC,KAAK,IAAK1C,OAAO,CAAC2C,MAAM,CAACD,KAAK,CAAC,CAAC,EAC5C/I,MAAM,CAACiJ,GAAG,CAAEF,KAAK,IACfvJ,MAAM,CAACiG,GAAG,CAAC,uBAAuB,CAAC,CAACd,IAAI,CACtCnF,MAAM,CAACkG,YAAY,CAAC;MAAEwD,WAAW,EAAE1H,MAAM,CAACuH,KAAK,CAACpC,MAAM,CAAC;MAAEwC,OAAO,EAAEJ,KAAK,CAACK,KAAK,CAAC,CAAC,EAAE,GAAG;IAAC,CAAE,CAAC,CACzF,CACF,EACDpJ,MAAM,CAAC8I,GAAG,CAAC5H,SAAS,CAAC,EACrBlB,MAAM,CAACyJ,OAAO,CAAEtI,IAAI,IAAI;MACtB,MAAMuI,KAAK,GAAGvI,IAAI,CAACwI,KAAK,CAAC,IAAI,CAAC,CAACC,MAAM,CAAEC,IAAI,IAAKA,IAAI,CAACC,IAAI,EAAE,CAACnD,MAAM,GAAG,CAAC,CAAC;MACvE,OAAO3G,MAAM,CAAC+J,YAAY,CAACL,KAAK,CAAC;IACnC,CAAC,CAAC,EACF1J,MAAM,CAACqJ,SAAS,CAAEQ,IAAI,IACpBrK,MAAM,CAACiG,GAAG,CAAC,sCAAsC,CAAC,CAACd,IAAI,CACrDnF,MAAM,CAACkG,YAAY,CAAC;MAAEmE,IAAI,EAAEA,IAAI,CAACT,KAAK,CAAC,CAAC,EAAE,GAAG;IAAC,CAAE,CAAC,CAClD,CACF,EACDpJ,MAAM,CAACsJ,QAAQ,EACf9J,MAAM,CAACyJ,GAAG,CAAC,MAAMzJ,MAAM,CAACiG,GAAG,CAAC,yBAAyB,CAAC,CAAC,EACvDjG,MAAM,CAAC+J,QAAQ,CAAE1E,GAAG,IAClBjF,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAI1C,UAAU,CAAC;MAAE2D,OAAO,EAAE,wBAAwB5C,MAAM,CAACqD,GAAG,CAAC;IAAE,CAAE,CAAC,CAAC,CAC5F,EACDrF,MAAM,CAACsG,QAAQ,CAAEjB,GAAG,IAAKrF,MAAM,CAACuG,QAAQ,CAAC,wBAAwBvE,MAAM,CAACqD,GAAG,CAAC,EAAE,CAAC,CAAC,EAChFrF,MAAM,CAACwG,UAAU,CAClB;IAED,OAAOxG,MAAM,CAACgD,GAAG,CAAC,aAAS;MACzB,MAAMwH,QAAQ,GAAG,OAAO5E,OAAO,CAAC4E,QAAQ;MACxC,OAAOxK,MAAM,CAACiG,GAAG,CAAC,6BAA6B,CAAC,CAACd,IAAI,CACnDnF,MAAM,CAACkG,YAAY,CAAC;QAAEsE,QAAQ,EAAExI,MAAM,CAACwI,QAAQ;MAAC,CAAE,CAAC,CACpD;MACD,OAAOnK,GAAG,CAACkE,GAAG,CAACjB,UAAU,EAAEnD,MAAM,CAACqD,IAAI,EAAE,CAAC;MACzC,OAAOjD,KAAK,CAAC4D,KAAK,CAACwB,YAAY,EAAE1F,IAAI,CAACqE,IAAI,CAAC;MAC3C,IAAIkG,QAAQ,KAAK,CAAC,EAAE;QAClB,OAAOpK,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAI3C,aAAa,CAAC;UAAEwJ;QAAQ,CAAE,CAAC,CAAC;MACjE,CAAC,MAAM;QACL,OAAOpK,KAAK,CAACuG,KAAK,CAChBhD,UAAU,EACV,IAAI1C,UAAU,CAAC;UAAE2D,OAAO,EAAE,+BAA+B5C,MAAM,CAACwI,QAAQ,CAAC;QAAE,CAAE,CAAC,CAC/E;MACH;IACF,CAAC,CAAC,CAACrF,IAAI,CACLnF,MAAM,CAAC+J,QAAQ,CAAE1E,GAAG,IAClBrF,MAAM,CAACgD,GAAG,CAAC,aAAS;MAClB,OAAO3C,GAAG,CAACkE,GAAG,CAACjB,UAAU,EAAEnD,MAAM,CAACqD,IAAI,EAAE,CAAC;MACzC,OAAOpD,KAAK,CAACuG,KAAK,CAAChD,UAAU,EAAE,IAAI1C,UAAU,CAAC;QAAE2D,OAAO,EAAE,kBAAkB5C,MAAM,CAACqD,GAAG,CAAC;MAAE,CAAE,CAAC,CAAC;IAC9F,CAAC,CAAC,CACH,EACDrF,MAAM,CAACsG,QAAQ,CAAEjB,GAAG,IAAKrF,MAAM,CAACuG,QAAQ,CAAC,kBAAkBvE,MAAM,CAACqD,GAAG,CAAC,EAAE,CAAC,CAAC,EAC1ErF,MAAM,CAACwG,UAAU,CAClB;EACH,CAAC,CAAC;EAEJ,MAAMiE,MAAM,GAAI9I,IAAY,IAC1B3B,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClB,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAACuK,MAAM,CAAC1G,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,wBAAwB;QACjCC,KAAK,EAAE;OACR,CAAC;IACJ;IACA,MAAM4B,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,OAAOrG,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,KAAK,CAAC;IAC9B,OAAOrD,KAAK,CAACuG,KAAK,CAAC3C,OAAO,CAACI,KAAK,CAAC2B,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACjF,IAAI,GAAG,IAAI,CAAC,CAAC;EAC3E,CAAC,CAAC;EAEJ,MAAMgJ,YAAY,GAAIhJ,IAAY,IAChC3B,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClB,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAACuK,MAAM,CAAC1G,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,wBAAwB;QACjCC,KAAK,EAAE;OACR,CAAC;IACJ;IACA,MAAM4B,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,OAAOrG,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,KAAK,CAAC;IAC9B,MAAM4G,IAAI,GAAGlB,IAAI,CAACC,SAAS,CAAC;MAAEf,IAAI,EAAE,WAAW;MAAE1G;IAAI,CAAE,CAAC,GAAG,IAAI;IAC/D,OAAOvB,KAAK,CAACuG,KAAK,CAAC3C,OAAO,CAACI,KAAK,CAAC2B,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACyD,IAAI,CAAC,CAAC;EACpE,CAAC,CAAC;EAEJ,MAAMO,SAAS,GAAIjJ,IAAY,IAC7B3B,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClB,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAACuK,MAAM,CAAC1G,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,wBAAwB;QACjCC,KAAK,EAAE;OACR,CAAC;IACJ;IACA,MAAM4B,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,OAAOrG,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,KAAK,CAAC;IAC9B,MAAM4G,IAAI,GAAGlB,IAAI,CAACC,SAAS,CAAC;MAAEf,IAAI,EAAE,gBAAgB;MAAE1G;IAAI,CAAE,CAAC,GAAG,IAAI;IACpE,OAAOvB,KAAK,CAACuG,KAAK,CAAC3C,OAAO,CAACI,KAAK,CAAC2B,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACyD,IAAI,CAAC,CAAC;EACpE,CAAC,CAAC;EAEJ,MAAMQ,OAAO,GAAG7K,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClC,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAACuK,MAAM,CAAC1G,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,wBAAwB;QACjCC,KAAK,EAAE;OACR,CAAC;IACJ;IACA,MAAM4B,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,OAAOrG,GAAG,CAACkE,GAAG,CAACd,OAAO,EAAE,KAAK,CAAC;IAC9B,OAAOrD,KAAK,CAACuG,KAAK,CAAC3C,OAAO,CAACI,KAAK,CAAC2B,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACuC,IAAI,CAACC,SAAS,CAAC;MAAEf,IAAI,EAAE;IAAc,CAAE,CAAC,GAAG,IAAI,CAAC,CAAC;EAC/G,CAAC,CAAC;EAEF,MAAMyC,MAAM,GAAG9K,MAAM,CAACgD,GAAG,CAAC,aAAS;IACjC,MAAMgB,OAAO,GAAG,OAAO3D,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC;IAC1C,IAAInD,MAAM,CAACuK,MAAM,CAAC1G,OAAO,CAAC,EAAE;MAC1B,OAAO,OAAO,IAAIpD,gBAAgB,CAAC;QACjCgE,OAAO,EAAE,wBAAwB;QACjCC,KAAK,EAAE;OACR,CAAC;IACJ;IACA,MAAM4B,OAAO,GAAG,IAAIC,WAAW,EAAE;IACjC,OAAOtG,KAAK,CAACuG,KAAK,CAAC3C,OAAO,CAACI,KAAK,CAAC2B,UAAU,EAAEU,OAAO,CAACG,MAAM,CAACuC,IAAI,CAACC,SAAS,CAAC;MAAEf,IAAI,EAAE;IAAY,CAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3G,OAAOtE,kBAAkB;EAC3B,CAAC,CAAC;EAEF,MAAMgH,QAAQ,GAAG1K,GAAG,CAAC4D,GAAG,CAACX,UAAU,CAAC,CAAC6B,IAAI,CAACnF,MAAM,CAACsJ,GAAG,CAACnJ,MAAM,CAAC+D,MAAM,CAAC,CAAC;EACpE,MAAM8G,MAAM,GAAG3K,GAAG,CAAC4D,GAAG,CAACR,OAAO,CAAC;EAE/B,MAAMwH,YAAY,GAAIC,QAAgB,IACpClL,MAAM,CAACgD,GAAG,CAAC,aAAS;IAClB,MAAMmI,QAAQ,GAAG,OAAO9K,GAAG,CAAC4D,GAAG,CAACP,WAAW,CAAC;IAC5C,IAAIvD,MAAM,CAACuK,MAAM,CAACS,QAAQ,CAAC,EAAE;MAC3B,OAAO,OAAO,IAAIvK,gBAAgB,CAAC;QAAEgE,OAAO,EAAE,6BAA6B;QAAEC,KAAK,EAAE;MAAI,CAAE,CAAC;IAC7F;IACA,MAAMgD,QAAQ,GAAG3E,WAAW,CAAC6B,IAAI,CAACoG,QAAQ,CAAC/G,KAAK,EAAE8G,QAAQ,CAAC;IAC3D,OAAO,OAAOjI,EAAE,CAACmI,cAAc,CAACvD,QAAQ,CAAC,CAAC1C,IAAI,CAC5CnF,MAAM,CAACoF,QAAQ,CAAEC,GAAG,IAClB,IAAIzE,gBAAgB,CAAC;MAAEgE,OAAO,EAAE,kBAAkBsG,QAAQ,KAAKlJ,MAAM,CAACqD,GAAG,CAAC,EAAE;MAAER,KAAK,EAAEQ;IAAG,CAAE,CAAC,CAC5F,CACF;EACH,CAAC,CAAC;EAEJ,MAAMgG,mBAAmB,GAAGrL,MAAM,CAACgD,GAAG,CAAC,aAAS;IAC9C,MAAMsI,QAAQ,GAAG,OAAOL,YAAY,CAAC,aAAa,CAAC;IACnD,MAAMM,QAAQ,GAAG,OAAON,YAAY,CAAC,cAAc,CAAC;IACpD,MAAMO,IAAI,GAAG,OAAOP,YAAY,CAAC,SAAS,CAAC;IAC3C,OAAO;MAAEK,QAAQ;MAAEC,QAAQ;MAAEC;IAAI,CAAE;EACrC,CAAC,CAAC;EAEF,MAAMC,eAAe,GAAGzL,MAAM,CAACgD,GAAG,CAAC,aAAS;IAC1C,MAAMsI,QAAQ,GAAG,OAAOL,YAAY,CAAC,aAAa,CAAC;IACnD,OAAO;MAAEK;IAAQ,CAAE;EACrB,CAAC,CAAC;EAEF,MAAMI,oBAAoB,GAAG1L,MAAM,CAACgD,GAAG,CAAC,aAAS;IAC/C,MAAMsI,QAAQ,GAAG,OAAOL,YAAY,CAAC,aAAa,CAAC;IACnD,OAAO;MAAEK;IAAQ,CAAE;EACrB,CAAC,CAAC;EAEF,MAAMK,mBAAmB,GAAG3L,MAAM,CAACgD,GAAG,CAAC,aAAS;IAC9C,MAAMsI,QAAQ,GAAG,OAAOL,YAAY,CAAC,aAAa,CAAC;IACnD,OAAO;MAAEK;IAAQ,CAAE;EACrB,CAAC,CAAC;EAEF,MAAMM,MAAM,GAA+CpL,MAAM,CAAC2F,SAAS,CAACxC,UAAU,CAAC,CAACwB,IAAI,CAC1F3E,MAAM,CAAC4E,QAAQ,CAAEC,GAAG,IAAK,IAAIzE,gBAAgB,CAAC;IAAEgE,OAAO,EAAE,uBAAuB5C,MAAM,CAACqD,GAAG,CAAC,EAAE;IAAER,KAAK,EAAEQ;EAAG,CAAE,CAAC,CAAC,CAC9G;EAED,OAAO9D,WAAW,CAACsK,EAAE,CAAC;IACpBpH,KAAK,EAAEA,CAACC,QAAQ,EAAEC,SAAS,KAAKF,KAAK,CAACC,QAAQ,EAAEC,SAAS,CAAC,CAACQ,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IAChHrB,MAAM,EAAG9I,IAAI,IAAK8I,MAAM,CAAC9I,IAAI,CAAC,CAACwD,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IACpFnB,YAAY,EAAGhJ,IAAI,IAAKgJ,YAAY,CAAChJ,IAAI,CAAC,CAACwD,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IAChGlB,SAAS,EAAGjJ,IAAI,IAAKiJ,SAAS,CAACjJ,IAAI,CAAC,CAACwD,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IAC1FjB,OAAO,EAAEA,OAAO,CAAC1F,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IACtEhB,MAAM,EAAEA,MAAM,CAAC3F,IAAI,CAACnF,MAAM,CAACkG,YAAY,CAAC;MAAE4F,OAAO,EAAE;IAAa,CAAE,CAAC,CAAC;IACpEf,QAAQ;IACRC,MAAM;IACNK,mBAAmB;IACnBI,eAAe;IACfC,oBAAoB;IACpBC,mBAAmB;IACnBC;GACD,CAAC;AACJ,CAAC,CAAC,CACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PlanSession.js","names":["Command","CommandExecutor","FileSystem","Path","Context","Data","Effect","Exit","Layer","Option","Queue","Ref","Schema","Scope","Stream","AskUserQuestionInput","decodeJsonMessage","AppContext","PlanSessionError","TaggedError","PlanTextOutput","TaggedClass","PlanCompleted","PlanFailed","PlanQuestion","PlanSpecCreated","PlanSpecUpdated","PlanAnalysisReady","PlanAwaitingInput","StdinEOF","Symbol","for","PlanSession","Tag","PlanCommandBuilder","stripAnsi","text","replace","WriteToolInput","Struct","file_path","String","EditToolInput","NotebookEditToolInput","notebook_path","decodeWriteInput","decodeUnknown","decodeEditInput","decodeNotebookInput","isSpecFile","path","includes","endsWith","isAnalysisFile","decodeAskInput","PlanSessionLive","scoped","gen","fs","pathService","appContext","executor","buildCommand","sessionRef","make","none","idleRef","specsDirRef","eventQueue","unbounded","seenFilePaths","Set","closeActiveSession","current","get","isSome","close","value","scope","void","set","addFinalizer","start","planText","projectId","message","cause","tempDir","join","configDir","makeDirectory","recursive","pipe","mapError","err","tempFile","Date","now","writeFileString","cmd","processScope","process","provideService","extend","stdinQueue","some","log","annotateLogs","fromQueue","takeWhile","item","run","stdin","tap","catchAll","logError","forkDaemon","encoder","TextEncoder","offer","encode","decoder","TextDecoder","pendingTextRef","stage2Ref","stage2BufferRef","flushPendingText","pending","textLength","length","flushStage2Buffer","buf","detectFileEvent","block","filePathResult","name","input","fail","option","fp","dirname","filePath","seen","has","update","s","processContentBlock","messageId","hasAskUser","type","askParsed","orElseSucceed","questions","undefined","tool","processAssistantMessage","msg","content","id","b","routeMessage","messageType","subtype","JSON","stringify","stdout","map","chunk","decode","chunkLength","preview","slice","splitLines","filter","line","trim","mapEffect","isStage2","parsed","tapError","logDebug","lineBytes","Array","from","c","charCodeAt","toString","error","runDrain","stderr","flatMap","lines","split","fromIterable","exitCode","answer","isNone","sendFollowUp","interrupt","approve","payload","reject","isActive","isIdle","readSpecFile","fileName","specsDir","readFileString","readFeatureAnalysis","analysis","services","test","readBugAnalysis","readRefactorAnalysis","readDefaultAnalysis","events","of","service"],"sources":["../../../src/services/PlanSession.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ import { Array, DateTime, Duration, Effect, HashMap, Layer, Option, Ref, Schedul
|
|
|
6
6
|
import { TaskCreated, TaskUpdated } from "../../Events.js";
|
|
7
7
|
import { TrackerIssue, TrackerIssueEvent } from "../../schemas/TrackerSchemas.js";
|
|
8
8
|
import { AppRuntimeConfig } from "../AppRuntimeConfig.js";
|
|
9
|
+
import { LalphConfig } from "../LalphConfig.js";
|
|
9
10
|
import { OctokitClient } from "../OctokitClient.js";
|
|
10
11
|
import { TaskTracker, TaskTrackerError } from "./TaskTracker.js";
|
|
11
12
|
const extractRepoFullName = repositoryUrl => {
|
|
@@ -27,7 +28,9 @@ const parseIssueId = issueId => {
|
|
|
27
28
|
export const GitHubIssueTrackerLive = /*#__PURE__*/Layer.effect(TaskTracker, /*#__PURE__*/Effect.gen(function* () {
|
|
28
29
|
const octokit = yield* OctokitClient;
|
|
29
30
|
const config = yield* AppRuntimeConfig;
|
|
31
|
+
const lalphConfig = yield* LalphConfig;
|
|
30
32
|
const interval = Duration.seconds(config.pollIntervalSeconds);
|
|
33
|
+
const repoFullName = lalphConfig.repoFullName;
|
|
31
34
|
const fetchRecentEvents = since => Effect.gen(function* () {
|
|
32
35
|
const issues = yield* octokit.listUserIssues({
|
|
33
36
|
state: "all",
|
|
@@ -37,10 +40,11 @@ export const GitHubIssueTrackerLive = /*#__PURE__*/Layer.effect(TaskTracker, /*#
|
|
|
37
40
|
message: `GitHub API request failed: ${String(err)}`,
|
|
38
41
|
cause: err
|
|
39
42
|
})));
|
|
40
|
-
|
|
41
|
-
|
|
43
|
+
const filteredIssues = Array.filter(issues, issue => extractRepoFullName(issue.repositoryUrl) === repoFullName);
|
|
44
|
+
return Array.map(filteredIssues, issue => {
|
|
45
|
+
const issueRepoFullName = extractRepoFullName(issue.repositoryUrl);
|
|
42
46
|
const trackerIssue = new TrackerIssue({
|
|
43
|
-
id: `${
|
|
47
|
+
id: `${issueRepoFullName}#${issue.number}`,
|
|
44
48
|
title: issue.title,
|
|
45
49
|
state: issue.state,
|
|
46
50
|
url: issue.htmlUrl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubIssueTracker.js","names":["Array","DateTime","Duration","Effect","HashMap","Layer","Option","Ref","Schedule","Stream","TaskCreated","TaskUpdated","TrackerIssue","TrackerIssueEvent","AppRuntimeConfig","OctokitClient","TaskTracker","TaskTrackerError","extractRepoFullName","repositoryUrl","parts","split","parseIssueId","issueId","slashIdx","indexOf","hashIdx","owner","substring","repo","issueNumber","GitHubIssueTrackerLive","effect","gen","octokit","config","interval","seconds","pollIntervalSeconds","fetchRecentEvents","since","issues","listUserIssues","state","sort","pipe","mapError","err","message","String","cause","
|
|
1
|
+
{"version":3,"file":"GitHubIssueTracker.js","names":["Array","DateTime","Duration","Effect","HashMap","Layer","Option","Ref","Schedule","Stream","TaskCreated","TaskUpdated","TrackerIssue","TrackerIssueEvent","AppRuntimeConfig","LalphConfig","OctokitClient","TaskTracker","TaskTrackerError","extractRepoFullName","repositoryUrl","parts","split","parseIssueId","issueId","slashIdx","indexOf","hashIdx","owner","substring","repo","issueNumber","GitHubIssueTrackerLive","effect","gen","octokit","config","lalphConfig","interval","seconds","pollIntervalSeconds","repoFullName","fetchRecentEvents","since","issues","listUserIssues","state","sort","pipe","mapError","err","message","String","cause","filteredIssues","filter","issue","map","issueRepoFullName","trackerIssue","id","number","title","url","htmlUrl","createdAt","updatedAt","action","lastPollRef","make","unsafeNow","knownStatesRef","empty","pollCycle","lastPoll","get","formatIso","knownStates","set","issueEvents","events","issueEvent","push","update","previousState","stateChanged","isNone","value","getOrElse","emptyBatch","safePollCycle","tapError","logError","orElseSucceed","eventStream","repeatEffectWithSchedule","spaced","flatMap","batch","fromIterable","of","moveToTodo","addIssueLabels","Number","labels","setPriorityUrgent","getIssue"],"sources":["../../../../src/services/TaskTracker/GitHubIssueTracker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,12 +6,15 @@ import { DateTime, Duration, Effect, HashMap, Layer, Option, Ref, Schedule, Stre
|
|
|
6
6
|
import { TaskCreated, TaskUpdated } from "../../Events.js";
|
|
7
7
|
import { TrackerIssue, TrackerIssueEvent } from "../../schemas/TrackerSchemas.js";
|
|
8
8
|
import { AppRuntimeConfig } from "../AppRuntimeConfig.js";
|
|
9
|
+
import { LalphConfig } from "../LalphConfig.js";
|
|
9
10
|
import { LinearSdkClient } from "../LinearSdkClient.js";
|
|
10
11
|
import { TaskTracker, TaskTrackerError } from "./TaskTracker.js";
|
|
11
12
|
export const LinearTrackerLive = /*#__PURE__*/Layer.effect(TaskTracker, /*#__PURE__*/Effect.gen(function* () {
|
|
12
13
|
const linearClient = yield* LinearSdkClient;
|
|
13
14
|
const config = yield* AppRuntimeConfig;
|
|
15
|
+
const lalphConfig = yield* LalphConfig;
|
|
14
16
|
const interval = Duration.seconds(config.pollIntervalSeconds);
|
|
17
|
+
const projectIds = lalphConfig.linearProjectIds;
|
|
15
18
|
const todoStateIdRef = yield* Ref.make(null);
|
|
16
19
|
const resolveTodoStateId = Effect.gen(function* () {
|
|
17
20
|
const cached = yield* Ref.get(todoStateIdRef);
|
|
@@ -31,7 +34,8 @@ export const LinearTrackerLive = /*#__PURE__*/Layer.effect(TaskTracker, /*#__PUR
|
|
|
31
34
|
return todoState.id;
|
|
32
35
|
});
|
|
33
36
|
const fetchRecentEvents = since => linearClient.listIssues({
|
|
34
|
-
since
|
|
37
|
+
since,
|
|
38
|
+
projectIds
|
|
35
39
|
}).pipe(Effect.map(issues => issues.map(node => {
|
|
36
40
|
const issue = new TrackerIssue({
|
|
37
41
|
id: node.identifier,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinearTracker.js","names":["DateTime","Duration","Effect","HashMap","Layer","Option","Ref","Schedule","Stream","TaskCreated","TaskUpdated","TrackerIssue","TrackerIssueEvent","AppRuntimeConfig","LinearSdkClient","TaskTracker","TaskTrackerError","LinearTrackerLive","effect","gen","linearClient","config","interval","seconds","pollIntervalSeconds","todoStateIdRef","make","resolveTodoStateId","cached","get","states","listWorkflowStates","pipe","mapError","err","message","cause","todoState","find","s","name","set","id","fetchRecentEvents","since","listIssues","map","issues","node","issue","identifier","title","state","stateName","url","createdAt","updatedAt","action","lastPollRef","unsafeNow","knownStatesRef","empty","pollCycle","lastPoll","formatIso","knownStates","issueEvents","events","issueEvent","push","update","previousState","stateChanged","isNone","value","getOrElse","emptyBatch","safePollCycle","tapError","logError","orElseSucceed","eventStream","repeatEffectWithSchedule","spaced","flatMap","batch","fromIterable","of","moveToTodo","issueId","stateId","updateIssue","setPriorityUrgent","updateIssuePriority","priority","getIssue"],"sources":["../../../../src/services/TaskTracker/LinearTracker.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAIA,SAASA,QAAQ,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,OAAO,EAAEC,KAAK,EAAEC,MAAM,EAAEC,GAAG,EAAEC,QAAQ,EAAEC,MAAM,QAAQ,QAAQ;AAClG,SAASC,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;AAE1D,SAASC,YAAY,EAAEC,iBAAiB,QAAQ,iCAAiC;AACjF,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SAASC,WAAW,EAAEC,gBAAgB,QAAQ,kBAAkB;AAEhE,OAAO,MAAMC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"LinearTracker.js","names":["DateTime","Duration","Effect","HashMap","Layer","Option","Ref","Schedule","Stream","TaskCreated","TaskUpdated","TrackerIssue","TrackerIssueEvent","AppRuntimeConfig","LalphConfig","LinearSdkClient","TaskTracker","TaskTrackerError","LinearTrackerLive","effect","gen","linearClient","config","lalphConfig","interval","seconds","pollIntervalSeconds","projectIds","linearProjectIds","todoStateIdRef","make","resolveTodoStateId","cached","get","states","listWorkflowStates","pipe","mapError","err","message","cause","todoState","find","s","name","set","id","fetchRecentEvents","since","listIssues","map","issues","node","issue","identifier","title","state","stateName","url","createdAt","updatedAt","action","lastPollRef","unsafeNow","knownStatesRef","empty","pollCycle","lastPoll","formatIso","knownStates","issueEvents","events","issueEvent","push","update","previousState","stateChanged","isNone","value","getOrElse","emptyBatch","safePollCycle","tapError","logError","orElseSucceed","eventStream","repeatEffectWithSchedule","spaced","flatMap","batch","fromIterable","of","moveToTodo","issueId","stateId","updateIssue","setPriorityUrgent","updateIssuePriority","priority","getIssue"],"sources":["../../../../src/services/TaskTracker/LinearTracker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/shim/main.js
CHANGED
|
@@ -97,7 +97,10 @@ export const shimProgram = /*#__PURE__*/Effect.gen(function* () {
|
|
|
97
97
|
case "shim_approve":
|
|
98
98
|
{
|
|
99
99
|
yield* writeDebug("shim_approve intercepted");
|
|
100
|
-
|
|
100
|
+
// Exit immediately — scope cleanup hangs because the stdin
|
|
101
|
+
// reader fiber is blocked on a Node.js pipe read that
|
|
102
|
+
// doesn't respond to Effect's fiber interruption.
|
|
103
|
+
yield* Effect.sync(() => process.exit(0));
|
|
101
104
|
return;
|
|
102
105
|
}
|
|
103
106
|
case "shim_start":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","names":["createSdkMcpServer","tool","Config","Context","Data","Effect","Either","Fiber","Queue","Ref","Stream","z","parseArgs","decodeShimMessage","ShimError","TaggedError","ClaudeQuery","Tag","ShimConfig","all","realClaudePath","string","claudeModel","withDefault","ShimDeps","askUserQuestionSchema","questions","array","object","question","describe","header","optional","options","label","description","min","max","multiSelect","boolean","FollowUpStop","Symbol","for","shimProgram","gen","deps","queryService","config","parsed","args","model","outQueue","unbounded","errQueue","outFiber","fromQueue","pipe","run","stdout","fork","errFiber","stderr","addFinalizer","shutdown","andThen","joinAll","ignore","writeStdout","data","offer","asVoid","writeDebug","msg","JSON","stringify","type","message","answerQueue","routingActive","make","queryHandleRef","sessionIdRef","followUpQueue","followUpIterable","takeWhile","item","toAsyncIterable","collectAnswers","questionCount","map","line","trim","filter","length","take","runCollect","chunk","content","text","Array","from","join","mcpServer","name","tools","_extra","runPromise","stdin","decodeText","splitLines","mapEffect","isRouting","get","decoded","isLeft","right","sessionId","slice","role","parent_tool_use_id","session_id","handle","tryPromise","try","interrupt","catch","err","cause","catchTag","logError","runDrain","forkScoped","controlLine","controlDecoded","isRight","prompt","q","create","pathToClaudeCodeExecutable","mcpServers","disallowedTools","dangerouslySkipPermissions","permissionMode","set","
|
|
1
|
+
{"version":3,"file":"main.js","names":["createSdkMcpServer","tool","Config","Context","Data","Effect","Either","Fiber","Queue","Ref","Stream","z","parseArgs","decodeShimMessage","ShimError","TaggedError","ClaudeQuery","Tag","ShimConfig","all","realClaudePath","string","claudeModel","withDefault","ShimDeps","askUserQuestionSchema","questions","array","object","question","describe","header","optional","options","label","description","min","max","multiSelect","boolean","FollowUpStop","Symbol","for","shimProgram","gen","deps","queryService","config","parsed","args","model","outQueue","unbounded","errQueue","outFiber","fromQueue","pipe","run","stdout","fork","errFiber","stderr","addFinalizer","shutdown","andThen","joinAll","ignore","writeStdout","data","offer","asVoid","writeDebug","msg","JSON","stringify","type","message","answerQueue","routingActive","make","queryHandleRef","sessionIdRef","followUpQueue","followUpIterable","takeWhile","item","toAsyncIterable","collectAnswers","questionCount","map","line","trim","filter","length","take","runCollect","chunk","content","text","Array","from","join","mcpServer","name","tools","_extra","runPromise","stdin","decodeText","splitLines","mapEffect","isRouting","get","decoded","isLeft","right","sessionId","slice","role","parent_tool_use_id","session_id","sync","process","exit","handle","tryPromise","try","interrupt","catch","err","cause","catchTag","logError","runDrain","forkScoped","controlLine","controlDecoded","isRight","prompt","q","create","pathToClaudeCodeExecutable","mcpServers","disallowedTools","dangerouslySkipPermissions","permissionMode","set","close","fromAsyncIterable","tap","subtype","scoped"],"sources":["../../../src/shim/main.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -74,7 +74,7 @@ export class StreamJsonInput extends Schema.Class<StreamJsonInput>("StreamJsonIn
|
|
|
74
74
|
parent_tool_use_id: Schema.NullOr(Schema.String)
|
|
75
75
|
}) {}
|
|
76
76
|
|
|
77
|
-
const decodeJsonMessage = Schema.decodeUnknown(Schema.parseJson(StreamJsonMessage))
|
|
77
|
+
export const decodeJsonMessage = Schema.decodeUnknown(Schema.parseJson(StreamJsonMessage))
|
|
78
78
|
|
|
79
79
|
/**
|
|
80
80
|
* Splits a string stream into lines and parses each as a StreamJsonMessage,
|
|
@@ -302,6 +302,15 @@ export const chatMachine = Machine.make(
|
|
|
302
302
|
analysisFollowUpSent: boolean
|
|
303
303
|
): Effect.Effect<ChatState, never, never> =>
|
|
304
304
|
Effect.gen(function*() {
|
|
305
|
+
yield* Effect.log("checkAllReady").pipe(
|
|
306
|
+
Effect.annotateLogs({
|
|
307
|
+
spec: String(flags.spec),
|
|
308
|
+
analysis: String(flags.analysis),
|
|
309
|
+
idle: String(flags.idle),
|
|
310
|
+
planType,
|
|
311
|
+
analysisFollowUpSent: String(analysisFollowUpSent)
|
|
312
|
+
})
|
|
313
|
+
)
|
|
305
314
|
if (!flags.spec || !flags.analysis || !flags.idle) {
|
|
306
315
|
return ChatState.SessionRunning({
|
|
307
316
|
projectId,
|
|
@@ -660,11 +669,10 @@ export const chatMachine = Machine.make(
|
|
|
660
669
|
case "SpecReady": {
|
|
661
670
|
if (text === APPROVE_BUTTON_LABEL) {
|
|
662
671
|
yield* Effect.log("User approved task creation")
|
|
663
|
-
yield* planSession.approve
|
|
664
|
-
|
|
672
|
+
yield* planSession.approve
|
|
673
|
+
yield* notifier.sendMessage({ text: "Spec approved.", replyKeyboard: IDLE_KEYBOARD }).pipe(
|
|
665
674
|
Effect.orElseSucceed(() => undefined)
|
|
666
675
|
)
|
|
667
|
-
yield* notifier.sendMessage({ text: "Spec approved.", replyKeyboard: IDLE_KEYBOARD })
|
|
668
676
|
return reply(ChatState.Idle())
|
|
669
677
|
}
|
|
670
678
|
if (text === ABORT_BUTTON_LABEL) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @since 1.0.0
|
|
4
4
|
*/
|
|
5
5
|
import { Command, FileSystem, Path } from "@effect/platform"
|
|
6
|
-
import { Context, Data, Effect, Layer, Ref, Schema, Stream } from "effect"
|
|
6
|
+
import { Array as Arr, Context, Data, Effect, Layer, Ref, Schema, Stream } from "effect"
|
|
7
7
|
import { LalphGithubToken, LalphLinearToken } from "../schemas/CredentialSchemas.js"
|
|
8
8
|
import { AppContext } from "./AppContext.js"
|
|
9
9
|
|
|
@@ -43,6 +43,7 @@ export interface LalphConfigService {
|
|
|
43
43
|
readonly issueSource: "linear" | "github"
|
|
44
44
|
readonly specUploader: "gist" | "telegraph"
|
|
45
45
|
readonly repoFullName: string
|
|
46
|
+
readonly linearProjectIds: ReadonlyArray<string>
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
/**
|
|
@@ -160,6 +161,39 @@ export const LalphConfigLive = Layer.scoped(
|
|
|
160
161
|
return parseRepoFullName(output.trim())
|
|
161
162
|
})
|
|
162
163
|
|
|
164
|
+
const ProjectEntry = Schema.Struct({ id: Schema.String, enabled: Schema.Boolean })
|
|
165
|
+
|
|
166
|
+
const linearProjectIds: ReadonlyArray<string> = issueSource === "linear"
|
|
167
|
+
? yield* Effect.gen(function*() {
|
|
168
|
+
const projectsJson = yield* readStringFile("settings.projects").pipe(
|
|
169
|
+
Effect.map((raw) => JSON.parse(raw)),
|
|
170
|
+
Effect.flatMap(Schema.decodeUnknown(Schema.Array(ProjectEntry))),
|
|
171
|
+
Effect.orElseSucceed((): ReadonlyArray<Schema.Schema.Type<typeof ProjectEntry>> => [])
|
|
172
|
+
)
|
|
173
|
+
const enabledIds = Arr.filter(projectsJson, (p) => p.enabled).map((p) => p.id)
|
|
174
|
+
const projectIds = yield* Effect.forEach(enabledIds, (id) => {
|
|
175
|
+
const filePath = pathService.join(
|
|
176
|
+
appContext.projectRoot,
|
|
177
|
+
".lalph",
|
|
178
|
+
"projects",
|
|
179
|
+
encodeURIComponent(id),
|
|
180
|
+
"linear.selectedProjectId"
|
|
181
|
+
)
|
|
182
|
+
return fs.readFileString(filePath).pipe(
|
|
183
|
+
Effect.flatMap((content) =>
|
|
184
|
+
Effect.try({
|
|
185
|
+
try: () => JSON.parse(content),
|
|
186
|
+
catch: (err) => err
|
|
187
|
+
})
|
|
188
|
+
),
|
|
189
|
+
Effect.flatMap(Schema.decodeUnknown(Schema.String)),
|
|
190
|
+
Effect.option
|
|
191
|
+
)
|
|
192
|
+
})
|
|
193
|
+
return Arr.filterMap(projectIds, (opt) => opt)
|
|
194
|
+
})
|
|
195
|
+
: []
|
|
196
|
+
|
|
163
197
|
const githubTokenRef = yield* Ref.make(githubTokenData.token)
|
|
164
198
|
const linearTokenRef = yield* Ref.make(linearAccessToken)
|
|
165
199
|
|
|
@@ -212,7 +246,8 @@ export const LalphConfigLive = Layer.scoped(
|
|
|
212
246
|
),
|
|
213
247
|
issueSource,
|
|
214
248
|
specUploader,
|
|
215
|
-
repoFullName
|
|
249
|
+
repoFullName,
|
|
250
|
+
linearProjectIds
|
|
216
251
|
})
|
|
217
252
|
})
|
|
218
253
|
)
|
|
@@ -46,6 +46,7 @@ export interface LinearSdkWorkflowState {
|
|
|
46
46
|
export interface LinearSdkClientService {
|
|
47
47
|
readonly listIssues: (params: {
|
|
48
48
|
readonly since: string
|
|
49
|
+
readonly projectIds?: ReadonlyArray<string>
|
|
49
50
|
}) => Effect.Effect<ReadonlyArray<LinearSdkIssue>, LinearSdkClientError>
|
|
50
51
|
readonly getIssue: (params: {
|
|
51
52
|
readonly id: string
|
|
@@ -99,7 +100,11 @@ export const LinearSdkClientLive = Layer.effect(
|
|
|
99
100
|
const c = yield* getClient
|
|
100
101
|
return yield* Effect.tryPromise({
|
|
101
102
|
try: async () => {
|
|
102
|
-
const
|
|
103
|
+
const filter: Record<string, unknown> = { updatedAt: { gte: new Date(params.since) } }
|
|
104
|
+
if (params.projectIds && params.projectIds.length > 0) {
|
|
105
|
+
filter.project = { id: { in: params.projectIds } }
|
|
106
|
+
}
|
|
107
|
+
const connection = await c.issues({ filter })
|
|
103
108
|
const results: Array<LinearSdkIssue> = []
|
|
104
109
|
for (const node of connection.nodes) {
|
|
105
110
|
const state = await node.state
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { Command, CommandExecutor, FileSystem, Path } from "@effect/platform"
|
|
6
6
|
import { Context, Data, Effect, Exit, Layer, Option, Queue, Ref, Schema, Scope, Stream } from "effect"
|
|
7
7
|
import type { ContentBlock, StreamJsonMessage } from "../lib/StreamJsonParser.js"
|
|
8
|
-
import { AskUserQuestionInput,
|
|
8
|
+
import { AskUserQuestionInput, decodeJsonMessage } from "../lib/StreamJsonParser.js"
|
|
9
9
|
import { AppContext } from "./AppContext.js"
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -98,10 +98,13 @@ export type PlanEvent =
|
|
|
98
98
|
| PlanAnalysisReady
|
|
99
99
|
| PlanAwaitingInput
|
|
100
100
|
|
|
101
|
+
const StdinEOF: unique symbol = Symbol.for("StdinEOF")
|
|
102
|
+
type StdinItem = Uint8Array | typeof StdinEOF
|
|
103
|
+
|
|
101
104
|
interface ActiveSession {
|
|
102
105
|
readonly process: CommandExecutor.Process
|
|
103
106
|
readonly scope: Scope.CloseableScope
|
|
104
|
-
readonly stdinQueue: Queue.Queue<
|
|
107
|
+
readonly stdinQueue: Queue.Queue<StdinItem>
|
|
105
108
|
}
|
|
106
109
|
|
|
107
110
|
/**
|
|
@@ -242,14 +245,16 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
242
245
|
)
|
|
243
246
|
)
|
|
244
247
|
|
|
245
|
-
const stdinQueue = yield* Queue.unbounded<
|
|
248
|
+
const stdinQueue = yield* Queue.unbounded<StdinItem>()
|
|
246
249
|
yield* Ref.set(sessionRef, Option.some({ process, scope: processScope, stdinQueue }))
|
|
247
250
|
yield* Effect.log("Plan session process spawned").pipe(
|
|
248
251
|
Effect.annotateLogs({ tempFile })
|
|
249
252
|
)
|
|
250
253
|
|
|
251
254
|
yield* Stream.fromQueue(stdinQueue).pipe(
|
|
255
|
+
Stream.takeWhile((item): item is Uint8Array => item !== StdinEOF),
|
|
252
256
|
Stream.run(process.stdin),
|
|
257
|
+
Effect.tap(() => Effect.log("stdin stream closed")),
|
|
253
258
|
Effect.catchAll((err) => Effect.logError(`stdin write error: ${String(err)}`)),
|
|
254
259
|
Effect.forkDaemon
|
|
255
260
|
)
|
|
@@ -266,6 +271,8 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
266
271
|
const pendingTextRef = yield* Ref.make<Option.Option<{ messageId: string; text: string }>>(
|
|
267
272
|
Option.none()
|
|
268
273
|
)
|
|
274
|
+
const stage2Ref = yield* Ref.make(false)
|
|
275
|
+
const stage2BufferRef = yield* Ref.make<ReadonlyArray<string>>([])
|
|
269
276
|
|
|
270
277
|
const flushPendingText = Effect.gen(function*() {
|
|
271
278
|
const pending = yield* Ref.get(pendingTextRef)
|
|
@@ -278,6 +285,14 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
278
285
|
}
|
|
279
286
|
})
|
|
280
287
|
|
|
288
|
+
const flushStage2Buffer = Effect.gen(function*() {
|
|
289
|
+
const buf = yield* Ref.get(stage2BufferRef)
|
|
290
|
+
if (buf.length > 0) {
|
|
291
|
+
yield* Queue.offer(eventQueue, new PlanTextOutput({ text: buf.join("\n") }))
|
|
292
|
+
yield* Ref.set(stage2BufferRef, [])
|
|
293
|
+
}
|
|
294
|
+
})
|
|
295
|
+
|
|
281
296
|
const detectFileEvent = (block: typeof ContentBlock.Type) =>
|
|
282
297
|
Effect.gen(function*() {
|
|
283
298
|
const filePathResult = yield* Effect.gen(function*() {
|
|
@@ -380,6 +395,7 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
380
395
|
if (msg.type === "result") {
|
|
381
396
|
yield* flushPendingText
|
|
382
397
|
yield* Ref.set(idleRef, true)
|
|
398
|
+
yield* Ref.set(stage2Ref, true)
|
|
383
399
|
yield* Queue.offer(eventQueue, new PlanAwaitingInput({}))
|
|
384
400
|
yield* Effect.log("Planner result received")
|
|
385
401
|
return
|
|
@@ -400,9 +416,37 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
400
416
|
),
|
|
401
417
|
Stream.map(stripAnsi),
|
|
402
418
|
Stream.map((text) => text.replace(/\r/g, "\n")),
|
|
403
|
-
|
|
404
|
-
Stream.
|
|
419
|
+
Stream.splitLines,
|
|
420
|
+
Stream.filter((line) => line.trim().length > 0),
|
|
421
|
+
Stream.mapEffect((line) =>
|
|
422
|
+
Effect.gen(function*() {
|
|
423
|
+
const isStage2 = yield* Ref.get(stage2Ref)
|
|
424
|
+
const parsed = yield* decodeJsonMessage(line).pipe(
|
|
425
|
+
Effect.tapError((err) => {
|
|
426
|
+
if (isStage2) return Effect.void
|
|
427
|
+
return Effect.logDebug("Non-JSON stdout line, skipping").pipe(
|
|
428
|
+
Effect.annotateLogs({
|
|
429
|
+
line: line.slice(0, 300),
|
|
430
|
+
lineBytes: Array.from(line.slice(0, 100), (c) => c.charCodeAt(0).toString(16)).join(" "),
|
|
431
|
+
error: err.message
|
|
432
|
+
})
|
|
433
|
+
)
|
|
434
|
+
}),
|
|
435
|
+
Effect.option
|
|
436
|
+
)
|
|
437
|
+
if (Option.isSome(parsed)) {
|
|
438
|
+
yield* routeMessage(parsed.value)
|
|
439
|
+
} else if (isStage2) {
|
|
440
|
+
yield* Ref.update(stage2BufferRef, (buf) => [...buf, line])
|
|
441
|
+
const buf = yield* Ref.get(stage2BufferRef)
|
|
442
|
+
if (line.includes("\u2713") || line.includes("\u2717") || buf.length >= 20) {
|
|
443
|
+
yield* flushStage2Buffer
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
})
|
|
447
|
+
),
|
|
405
448
|
Stream.runDrain,
|
|
449
|
+
Effect.tap(() => flushStage2Buffer),
|
|
406
450
|
Effect.tap(() => flushPendingText),
|
|
407
451
|
Effect.tap(() => Effect.log("stdout stream completed")),
|
|
408
452
|
Effect.tapError((err) =>
|
|
@@ -439,6 +483,7 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
439
483
|
)
|
|
440
484
|
|
|
441
485
|
yield* Effect.gen(function*() {
|
|
486
|
+
yield* Effect.log("Waiting for process exit code...")
|
|
442
487
|
const exitCode = yield* process.exitCode
|
|
443
488
|
yield* Effect.log("Plan session process exited").pipe(
|
|
444
489
|
Effect.annotateLogs({ exitCode: String(exitCode) })
|
|
@@ -519,7 +564,13 @@ export const PlanSessionLive = Layer.scoped(
|
|
|
519
564
|
}
|
|
520
565
|
const encoder = new TextEncoder()
|
|
521
566
|
yield* Ref.set(idleRef, false)
|
|
522
|
-
|
|
567
|
+
const payload = JSON.stringify({ type: "shim_approve" }) + "\n"
|
|
568
|
+
yield* Effect.log("Sending shim_approve to stdin").pipe(
|
|
569
|
+
Effect.annotateLogs({ payload: payload.trim() })
|
|
570
|
+
)
|
|
571
|
+
yield* Queue.offer(current.value.stdinQueue, encoder.encode(payload))
|
|
572
|
+
yield* Queue.offer(current.value.stdinQueue, StdinEOF)
|
|
573
|
+
yield* Effect.log("shim_approve + StdinEOF queued to stdin")
|
|
523
574
|
})
|
|
524
575
|
|
|
525
576
|
const reject = Effect.gen(function*() {
|