@grimoirelabs/core 0.7.0 → 0.8.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.
Files changed (79) hide show
  1. package/dist/compiler/grimoire/ast.d.ts +5 -0
  2. package/dist/compiler/grimoire/ast.d.ts.map +1 -1
  3. package/dist/compiler/grimoire/ast.js.map +1 -1
  4. package/dist/compiler/grimoire/errors.d.ts +1 -1
  5. package/dist/compiler/grimoire/errors.d.ts.map +1 -1
  6. package/dist/compiler/grimoire/errors.js +2 -2
  7. package/dist/compiler/grimoire/errors.js.map +1 -1
  8. package/dist/compiler/grimoire/index.d.ts.map +1 -1
  9. package/dist/compiler/grimoire/index.js +8 -1
  10. package/dist/compiler/grimoire/index.js.map +1 -1
  11. package/dist/compiler/grimoire/parser.d.ts +3 -0
  12. package/dist/compiler/grimoire/parser.d.ts.map +1 -1
  13. package/dist/compiler/grimoire/parser.js +106 -25
  14. package/dist/compiler/grimoire/parser.js.map +1 -1
  15. package/dist/compiler/grimoire/transformer.d.ts +0 -1
  16. package/dist/compiler/grimoire/transformer.d.ts.map +1 -1
  17. package/dist/compiler/grimoire/transformer.js +57 -100
  18. package/dist/compiler/grimoire/transformer.js.map +1 -1
  19. package/dist/compiler/index.d.ts +1 -1
  20. package/dist/compiler/index.d.ts.map +1 -1
  21. package/dist/compiler/index.js +5 -1
  22. package/dist/compiler/index.js.map +1 -1
  23. package/dist/compiler/ir-generator.js +33 -0
  24. package/dist/compiler/ir-generator.js.map +1 -1
  25. package/dist/compiler/type-checker.d.ts +2 -2
  26. package/dist/compiler/type-checker.js +2 -2
  27. package/dist/compiler/validator.d.ts +8 -0
  28. package/dist/compiler/validator.d.ts.map +1 -1
  29. package/dist/compiler/validator.js +223 -0
  30. package/dist/compiler/validator.js.map +1 -1
  31. package/dist/index.d.ts +3 -3
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +1 -1
  34. package/dist/index.js.map +1 -1
  35. package/dist/runtime/context.d.ts +1 -0
  36. package/dist/runtime/context.d.ts.map +1 -1
  37. package/dist/runtime/context.js +14 -2
  38. package/dist/runtime/context.js.map +1 -1
  39. package/dist/runtime/index.d.ts +3 -1
  40. package/dist/runtime/index.d.ts.map +1 -1
  41. package/dist/runtime/index.js +3 -1
  42. package/dist/runtime/index.js.map +1 -1
  43. package/dist/runtime/interpreter.d.ts +49 -3
  44. package/dist/runtime/interpreter.d.ts.map +1 -1
  45. package/dist/runtime/interpreter.js +774 -131
  46. package/dist/runtime/interpreter.js.map +1 -1
  47. package/dist/runtime/session-views.d.ts +37 -0
  48. package/dist/runtime/session-views.d.ts.map +1 -0
  49. package/dist/runtime/session-views.js +97 -0
  50. package/dist/runtime/session-views.js.map +1 -0
  51. package/dist/runtime/session.d.ts +35 -0
  52. package/dist/runtime/session.d.ts.map +1 -0
  53. package/dist/runtime/session.js +57 -0
  54. package/dist/runtime/session.js.map +1 -0
  55. package/dist/runtime/steps/action.d.ts +22 -0
  56. package/dist/runtime/steps/action.d.ts.map +1 -1
  57. package/dist/runtime/steps/action.js +209 -0
  58. package/dist/runtime/steps/action.js.map +1 -1
  59. package/dist/runtime/steps/advisory.d.ts +1 -0
  60. package/dist/runtime/steps/advisory.d.ts.map +1 -1
  61. package/dist/runtime/steps/advisory.js +277 -11
  62. package/dist/runtime/steps/advisory.js.map +1 -1
  63. package/dist/runtime/value-flow.d.ts +27 -0
  64. package/dist/runtime/value-flow.d.ts.map +1 -0
  65. package/dist/runtime/value-flow.js +566 -0
  66. package/dist/runtime/value-flow.js.map +1 -0
  67. package/dist/types/execution.d.ts +67 -1
  68. package/dist/types/execution.d.ts.map +1 -1
  69. package/dist/types/index.d.ts +2 -1
  70. package/dist/types/index.d.ts.map +1 -1
  71. package/dist/types/receipt.d.ts +193 -0
  72. package/dist/types/receipt.d.ts.map +1 -0
  73. package/dist/types/receipt.js +5 -0
  74. package/dist/types/receipt.js.map +1 -0
  75. package/dist/types/steps.d.ts +6 -0
  76. package/dist/types/steps.d.ts.map +1 -1
  77. package/dist/wallet/tx-builder.js +3 -3
  78. package/dist/wallet/tx-builder.js.map +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAsB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAiB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAoB,iBAAiB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,iBAAiB;AACjB,OAAO,EAA+B,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAwB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AA4ClD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAuB;IACnD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAE7F,MAAM,UAAU,GAAG,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,4BAA4B,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAEjF,4DAA4D;IAC5D,IAAI,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;QAC5C,eAAe,CAAC,qBAAqB,GAAG,IAAI,qBAAqB,CAC/D,OAAO,CAAC,MAAM,CAAC,eAAe,CAC/B,CAAC;IACJ,CAAC;IAED,2BAA2B;IAC3B,MAAM,GAAG,GAAG,aAAa,CAAC;QACxB,KAAK;QACL,KAAK;QACL,KAAK;QACL,MAAM;QACN,eAAe;KAChB,CAAC,CAAC;IACH,GAAG,CAAC,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEpF,gBAAgB;IAChB,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IAEvD,gBAAgB;IAChB,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,6BAA6B;QAC7B,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,kCAAkC;QAClC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3D,mFAAmF;QACnF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,iEAAiE;YACjE,IAAI,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBACxC,SAAS;YACX,CAAC;YAED,qBAAqB;YACrB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,EAAE,iBAAiB,KAAK,+BAA+B,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YAED,eAAe;YACf,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,IAAI,EACJ,GAAG,EACH,MAAM,EACN,OAAO,EACP,eAAe,EACf,OAAO,CAAC,UAAU,CACnB,CAAC;YAEF,6EAA6E;YAC7E,sDAAsD;YACtD,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YAED,wDAAwD;YACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvC,IAAI,GAAG,EAAE,CAAC;oBACR,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAED,cAAc;YACd,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;oBACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS;oBACpC,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,UAAU,EAAE,wBAAwB,CAAC,GAAG,CAAC;oBACzC,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE;iBAClC,CAAC;YACJ,CAAC;YAED,iBAAiB;YACjB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,SAAS,GAAG,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAClE,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvC,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAE1E,QAAQ,SAAS,EAAE,CAAC;oBAClB,KAAK,MAAM;wBACT,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,EAAE,WAAW,SAAS,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3E,KAAK,QAAQ;wBACX,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,EAAE,WAAW,SAAS,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3E,KAAK,MAAM;wBACT,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,cAAc;4BACpB,MAAM,EAAE,IAAI,CAAC,EAAE;4BACf,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,eAAe;yBACxC,CAAC,CAAC;wBACH,SAAS;oBACX,KAAK,OAAO;wBACV,qCAAqC;wBACrC,SAAS;gBACb,CAAC;YACH,CAAC;YAED,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,8BAA8B;QAC9B,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,CAAC,eAAe,CAAC,OAAO,IAAI,eAAe,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,gCAAgC,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,qBAAqB;QACrB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;YACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS;YACpC,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,UAAU,EAAE,wBAAwB,CAAC,GAAG,CAAC;YACzC,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE;SAClC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEvE,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;YACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS;YACpC,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,UAAU,EAAE,wBAAwB,CAAC,GAAG,CAAC;YACzC,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE;SAClC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAuB,EAAE,QAAiB;IACtE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,aAAa,CAAC;IAC/B,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAuB,EACvB,IAAmB,EACnB,OAAgB;IAEhB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ;QACR,IAAI;QACJ,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;QACxD,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IAEH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAsB,EACtB,UAAqB;IAErB,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAEvC,MAAM,OAAO,GAAiF,EAAE,CAAC;IACjG,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEhE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QAEzD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAClD,IAAI,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;oBAC/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACrC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;YACtE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;gBACtB,MAAM;gBACN,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;gBACtC,GAAG,EAAE,OAAO,CAAC,GAAG;aACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CACxB,IAAU,EACV,GAAqB,EACrB,MAAsB,EACtB,OAA0B,EAC1B,eAAuC,EACvC,eAAiC,EACjC,OAAqB;IAErB,gEAAgE;IAChE,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAc,EACd,GAAqB,EACrB,YAA0B,EACL,EAAE;QACvB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,MAAM,EAAE,EAAE,CAAC;QACtE,CAAC;QACD,OAAO,WAAW,CAChB,SAAS,EACT,GAAG,EACH,MAAM,EACN,OAAO,EACP,eAAe,EACf,eAAe,EACf,YAAY,CACb,CAAC;IACJ,CAAC,CAAC;IAEF,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAE/C,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,uBAAuB;YACvB,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;gBAClD,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBACvE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;oBAC1B,OAAO,YAAY,CAAC;gBACtB,CAAC;gBACD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBACxB,OAAO,YAAY,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAE7D,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAE5C,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAE5C,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAE5C,KAAK,QAAQ;YACX,OAAO,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAE/D,KAAK,KAAK;YACR,OAAO,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAE5D,KAAK,UAAU;YACb,OAAO,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAEjE,KAAK,UAAU;YACb,OAAO,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAEjE,KAAK,UAAU;YACb,OAAO,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAEjE;YACE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAG,IAAa,CAAC,EAAE;gBACzB,KAAK,EAAE,sBAAuB,IAAa,CAAC,IAAI,EAAE;aACnD,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,IAAU;IACjC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,OAAO;gBACL,GAAG,IAAI,CAAC,QAAQ;gBAChB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBACnD,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;aAC7B,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,KAAK,aAAa;YAChB,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/C,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAsB,CAAC,IAAI,CAAC,CAAC;QACzF;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CACxB,MAAkB,EAClB,GAAqB,EACrB,MAAsB;IAEtB,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YAEtF,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,kBAAkB;gBACxB,MAAM,EAAE,KAAK,CAAC,EAAE;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,MAAM,EAAE,KAAK,CAAC,KAAK;gBACnB,MAAM;gBACN,YAAY;aACb,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;YAExC,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,oBAAoB;gBAC1B,MAAM,EAAE,KAAK,CAAC,EAAE;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YAEH,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC/D,MAAM,OAAO,GAAG,mBAAmB,KAAK,CAAC,EAAE,kBAAkB,CAAC;gBAC9D,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,QAAQ;oBACR,OAAO;iBACR,CAAC,CAAC;gBAEH,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;oBACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,eAAe,GAAG,KAAc,CAAC;QAEvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAE/B,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,QAAQ,EAAE,eAAe,CAAC,QAAQ;oBAClC,OAAO,EAAE,eAAe,CAAC,OAAO;iBACjC,CAAC,CAAC;gBAEH,IAAI,eAAe,CAAC,QAAQ,KAAK,MAAM,IAAI,eAAe,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACjF,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,eAAe,CAAC,OAAO;wBAC9B,QAAQ,EAAE,eAAe,CAAC,QAAQ;qBACnC,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,QAAQ,EAAE,OAAO;gBACjB,OAAO;aACR,CAAC,CAAC;YAEH,IAAI,eAAe,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;gBACxC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC7B,MAAsB,EACtB,MAAc,EACd,GAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACpC,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACvE,KAAK,CAAC,KAA4C,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YACnE,KAAK,CAAC,KAA4C,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;YACxE,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Session-level ledger and P&L views derived from persisted runs.
3
+ */
4
+ import type { StateStore } from "./state-store.js";
5
+ export interface SessionLedgerView {
6
+ spellId: string;
7
+ runs: {
8
+ total: number;
9
+ success: number;
10
+ failed: number;
11
+ latestRunAt?: string;
12
+ };
13
+ triggers: Record<string, number>;
14
+ receipts: Record<string, number>;
15
+ events: Record<string, number>;
16
+ }
17
+ export interface SessionPnlAssetView {
18
+ asset: string;
19
+ debits: string;
20
+ credits: string;
21
+ fees: string;
22
+ losses: string;
23
+ net: string;
24
+ unaccounted: string;
25
+ }
26
+ export interface SessionPnlView {
27
+ spellId: string;
28
+ runCount: number;
29
+ deltaCount: number;
30
+ accountingPassed: boolean;
31
+ totalUnaccounted: string;
32
+ totalNet: string;
33
+ assets: SessionPnlAssetView[];
34
+ }
35
+ export declare function getSessionLedgerView(store: StateStore, spellId: string, limit?: number): Promise<SessionLedgerView>;
36
+ export declare function getSessionPnlView(store: StateStore, spellId: string, limit?: number): Promise<SessionPnlView>;
37
+ //# sourceMappingURL=session-views.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-views.d.ts","sourceRoot":"","sources":["../../src/runtime/session-views.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9D,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,mBAAmB,EAAE,CAAC;CAC/B;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,SAAM,GACV,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,SAAM,GACV,OAAO,CAAC,cAAc,CAAC,CA4BzB"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Session-level ledger and P&L views derived from persisted runs.
3
+ */
4
+ import { computeAssetAccounting } from "./value-flow.js";
5
+ export async function getSessionLedgerView(store, spellId, limit = 100) {
6
+ const records = await loadSessionRecords(store, spellId, limit);
7
+ const runs = records.map((record) => record.run);
8
+ const entries = records.flatMap((record) => record.ledger);
9
+ const triggers = {};
10
+ const receipts = {};
11
+ const events = {};
12
+ for (const entry of entries) {
13
+ increment(events, entry.event.type);
14
+ if (entry.event.type === "run_started") {
15
+ increment(triggers, entry.event.trigger.type);
16
+ }
17
+ if (entry.event.type === "preview_completed") {
18
+ increment(receipts, entry.event.status);
19
+ }
20
+ }
21
+ return {
22
+ spellId,
23
+ runs: {
24
+ total: runs.length,
25
+ success: runs.filter((run) => run.success).length,
26
+ failed: runs.filter((run) => !run.success).length,
27
+ latestRunAt: runs[0]?.timestamp,
28
+ },
29
+ triggers,
30
+ receipts,
31
+ events,
32
+ };
33
+ }
34
+ export async function getSessionPnlView(store, spellId, limit = 100) {
35
+ const records = await loadSessionRecords(store, spellId, limit);
36
+ const valueDeltas = records.flatMap((record) => extractValueDeltas(record.ledger));
37
+ const accounting = computeAssetAccounting(valueDeltas);
38
+ const assets = accounting.assets.map((row) => ({
39
+ asset: row.asset,
40
+ debits: row.debits.toString(),
41
+ credits: row.credits.toString(),
42
+ fees: row.fees.toString(),
43
+ losses: row.losses.toString(),
44
+ net: (row.credits - row.debits - row.fees - row.losses).toString(),
45
+ unaccounted: row.unaccounted.toString(),
46
+ }));
47
+ const totalNet = accounting.assets.reduce((sum, row) => sum + (row.credits - row.debits - row.fees - row.losses), 0n);
48
+ return {
49
+ spellId,
50
+ runCount: records.length,
51
+ deltaCount: valueDeltas.length,
52
+ accountingPassed: accounting.passed,
53
+ totalUnaccounted: accounting.totalUnaccounted.toString(),
54
+ totalNet: totalNet.toString(),
55
+ assets,
56
+ };
57
+ }
58
+ async function loadSessionRecords(store, spellId, limit) {
59
+ const runs = await store.getRuns(spellId, limit);
60
+ const ledgers = await Promise.all(runs.map(async (run) => {
61
+ const ledger = (await store.loadLedger(spellId, run.runId)) ?? [];
62
+ return { run, ledger };
63
+ }));
64
+ return ledgers;
65
+ }
66
+ function extractValueDeltas(entries) {
67
+ const deltas = [];
68
+ for (const entry of entries) {
69
+ if (entry.event.type === "value_delta") {
70
+ const amount = toBigInt(entry.event.delta.amount);
71
+ if (amount === undefined) {
72
+ continue;
73
+ }
74
+ deltas.push({
75
+ ...entry.event.delta,
76
+ amount,
77
+ });
78
+ }
79
+ }
80
+ return deltas;
81
+ }
82
+ function increment(counter, key) {
83
+ counter[key] = (counter[key] ?? 0) + 1;
84
+ }
85
+ function toBigInt(value) {
86
+ if (typeof value === "bigint") {
87
+ return value;
88
+ }
89
+ if (typeof value === "number") {
90
+ return Number.isFinite(value) ? BigInt(Math.trunc(value)) : undefined;
91
+ }
92
+ if (typeof value === "string" && /^[-+]?\d+$/.test(value.trim())) {
93
+ return BigInt(value.trim());
94
+ }
95
+ return undefined;
96
+ }
97
+ //# sourceMappingURL=session-views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-views.js","sourceRoot":"","sources":["../../src/runtime/session-views.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Session execution helpers.
3
+ * Normalizes one-shot and managed invocations through the same runtime API.
4
+ */
5
+ import type { ExecutionContext, ExecutionResult } from "../types/execution.js";
6
+ import { type ExecuteOptions } from "./interpreter.js";
7
+ export type SessionMode = "one-shot" | "managed";
8
+ export interface SessionRunOptions extends Omit<ExecuteOptions, "trigger"> {
9
+ /** Stable session identifier owned by the caller */
10
+ sessionId: string;
11
+ /** Invocation mode */
12
+ mode?: SessionMode;
13
+ /** Trigger that fired this run; defaults to spell trigger or manual */
14
+ trigger?: ExecutionContext["trigger"];
15
+ /** Optional managed firing timestamp (ms epoch) */
16
+ firedAt?: number;
17
+ /** Optional trigger origin descriptor */
18
+ source?: string;
19
+ /** Optional invocation metadata for auditing */
20
+ metadata?: Record<string, unknown>;
21
+ }
22
+ export interface SessionRunResult {
23
+ sessionId: string;
24
+ mode: SessionMode;
25
+ trigger: ExecutionContext["trigger"];
26
+ result: ExecutionResult;
27
+ }
28
+ /**
29
+ * Execute a spell run within a runtime session.
30
+ * One-shot and managed invocations share the same execute() path.
31
+ */
32
+ export declare function runSession(options: SessionRunOptions): Promise<SessionRunResult>;
33
+ export declare function runOneShotSession(options: Omit<SessionRunOptions, "mode">): Promise<SessionRunResult>;
34
+ export declare function runManagedSession(options: Omit<SessionRunOptions, "mode">): Promise<SessionRunResult>;
35
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/runtime/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG/E,OAAO,EAAE,KAAK,cAAc,EAAW,MAAM,kBAAkB,CAAC;AAEhE,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAEjD,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC;IACxE,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,uEAAuE;IACvE,OAAO,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACtC,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoBtF;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAE3B;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAE3B"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Session execution helpers.
3
+ * Normalizes one-shot and managed invocations through the same runtime API.
4
+ */
5
+ import { execute } from "./interpreter.js";
6
+ /**
7
+ * Execute a spell run within a runtime session.
8
+ * One-shot and managed invocations share the same execute() path.
9
+ */
10
+ export async function runSession(options) {
11
+ const mode = options.mode ?? "one-shot";
12
+ const trigger = withSessionMetadata(options.trigger ?? defaultTrigger(options.spell), options.sessionId, mode, options);
13
+ const result = await execute({
14
+ ...options,
15
+ trigger,
16
+ });
17
+ return {
18
+ sessionId: options.sessionId,
19
+ mode,
20
+ trigger,
21
+ result,
22
+ };
23
+ }
24
+ export async function runOneShotSession(options) {
25
+ return runSession({ ...options, mode: "one-shot" });
26
+ }
27
+ export async function runManagedSession(options) {
28
+ return runSession({ ...options, mode: "managed" });
29
+ }
30
+ function defaultTrigger(spell) {
31
+ return normalizeTrigger(spell.triggers[0]);
32
+ }
33
+ function withSessionMetadata(trigger, sessionId, mode, options) {
34
+ const firedAt = options.firedAt ?? Date.now();
35
+ const source = options.source ?? (mode === "managed" ? "managed_trigger" : "direct_invocation");
36
+ return {
37
+ ...trigger,
38
+ sessionId,
39
+ mode,
40
+ firedAt,
41
+ source,
42
+ ...(options.metadata ? { metadata: options.metadata } : {}),
43
+ };
44
+ }
45
+ function normalizeTrigger(trigger) {
46
+ if (!trigger) {
47
+ return { type: "manual" };
48
+ }
49
+ if (trigger.type === "any" && "triggers" in trigger && Array.isArray(trigger.triggers)) {
50
+ return {
51
+ type: "any",
52
+ triggers: trigger.triggers.map((inner) => normalizeTrigger(inner)),
53
+ };
54
+ }
55
+ return { ...trigger };
56
+ }
57
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/runtime/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAuB,OAAO,EAAE,MAAM,kBAAkB,CAAC;AA0BhE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAA0B;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC;IACxC,MAAM,OAAO,GAAG,mBAAmB,CACjC,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAChD,OAAO,CAAC,SAAS,EACjB,IAAI,EACJ,OAAO,CACR,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC3B,GAAG,OAAO;QACV,OAAO;KACR,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI;QACJ,OAAO;QACP,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAwC;IAExC,OAAO,UAAU,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAwC;IAExC,OAAO,UAAU,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAoC,EACpC,SAAiB,EACjB,IAAiB,EACjB,OAAmE;IAEnE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAEhG,OAAO;QACL,GAAG,OAAO;QACV,SAAS;QACT,IAAI;QACJ,OAAO;QACP,MAAM;QACN,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,OAA0D;IAE1D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,UAAU,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvF,OAAO;YACL,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACnE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;AACxB,CAAC"}
@@ -3,6 +3,7 @@
3
3
  * Executes on-chain actions using the wallet executor when provided.
4
4
  */
5
5
  import type { ExecutionContext, StepResult } from "../../types/execution.js";
6
+ import type { PlannedAction, ValueDelta } from "../../types/receipt.js";
6
7
  import type { ActionStep } from "../../types/steps.js";
7
8
  import type { Executor } from "../../wallet/executor.js";
8
9
  import type { ExecutionMode } from "../../wallet/executor.js";
@@ -14,4 +15,25 @@ export interface ActionExecutionOptions {
14
15
  circuitBreakerManager?: CircuitBreakerManager;
15
16
  }
16
17
  export declare function executeActionStep(step: ActionStep, ctx: ExecutionContext, ledger: InMemoryLedger, options: ActionExecutionOptions): Promise<StepResult>;
18
+ export interface PreviewActionResult {
19
+ stepResult: StepResult;
20
+ plannedAction?: PlannedAction;
21
+ valueDeltas?: ValueDelta[];
22
+ }
23
+ /**
24
+ * Preview an action step — resolves the action and simulates it,
25
+ * returning a PlannedAction instead of executing a real transaction.
26
+ */
27
+ export declare function previewActionStep(step: ActionStep, ctx: ExecutionContext, ledger: InMemoryLedger, _options: ActionExecutionOptions): Promise<PreviewActionResult>;
28
+ export interface CommitActionResult {
29
+ success: boolean;
30
+ hash?: string;
31
+ gasUsed?: bigint;
32
+ error?: string;
33
+ }
34
+ /**
35
+ * Commit a planned action — takes a PlannedAction from the receipt
36
+ * and executes the real transaction via the executor.
37
+ */
38
+ export declare function commitActionStep(planned: PlannedAction, executor: Executor): Promise<CommitActionResult>;
17
39
  //# sourceMappingURL=action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../src/runtime/steps/action.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAIpD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAiBD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,UAAU,CAAC,CA+NrB"}
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../src/runtime/steps/action.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG7E,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAKpD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAiBD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,UAAU,CAAC,CA+NrB;AAmdD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAgG9B;AAMD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,kBAAkB,CAAC,CAqB7B"}
@@ -5,6 +5,7 @@
5
5
  import { addGasUsed, incrementActions, setBinding } from "../context.js";
6
6
  import { classifyError } from "../error-classifier.js";
7
7
  import { createEvalContext, evaluateAsync } from "../expression-evaluator.js";
8
+ import { FEE_BUCKET_ADDRESS, LOSS_BUCKET_ADDRESS } from "../value-flow.js";
8
9
  const EXPRESSION_KINDS = new Set([
9
10
  "literal",
10
11
  "param",
@@ -460,6 +461,103 @@ function resolveVenueAlias(action, ctx) {
460
461
  address: "0x0000000000000000000000000000000000000000",
461
462
  };
462
463
  }
464
+ function deriveSimulationInput(action, amountText) {
465
+ switch (action.type) {
466
+ case "swap":
467
+ return { asset: String(action.assetIn), amount: amountText };
468
+ case "lend":
469
+ case "withdraw":
470
+ case "borrow":
471
+ case "repay":
472
+ case "stake":
473
+ case "unstake":
474
+ case "bridge":
475
+ case "transfer":
476
+ case "approve":
477
+ return { asset: String(action.asset), amount: amountText };
478
+ default:
479
+ return { asset: "", amount: amountText };
480
+ }
481
+ }
482
+ function deriveSimulationOutput(action, amountText) {
483
+ switch (action.type) {
484
+ case "swap":
485
+ return { asset: String(action.assetOut), amount: amountText };
486
+ case "withdraw":
487
+ case "borrow":
488
+ case "unstake":
489
+ case "bridge":
490
+ case "transfer":
491
+ case "approve":
492
+ return { asset: String(action.asset), amount: amountText };
493
+ case "lend":
494
+ case "repay":
495
+ case "stake":
496
+ return { asset: String(action.asset), amount: "0" };
497
+ default:
498
+ return { asset: "", amount: "0" };
499
+ }
500
+ }
501
+ function buildValueDeltas(input) {
502
+ const deltas = [];
503
+ const inputAmount = parseAmount(input.simulationResult.input.amount);
504
+ const outputAmount = parseAmount(input.simulationResult.output.amount);
505
+ const inputAsset = input.simulationResult.input.asset;
506
+ const outputAsset = input.simulationResult.output.asset;
507
+ if (inputAmount > 0n && inputAsset.length > 0) {
508
+ deltas.push({
509
+ asset: inputAsset,
510
+ amount: inputAmount,
511
+ from: input.vault,
512
+ to: input.venueAddress,
513
+ reason: `action:${input.stepId}:input`,
514
+ });
515
+ }
516
+ if (outputAmount > 0n && outputAsset.length > 0) {
517
+ deltas.push({
518
+ asset: outputAsset,
519
+ amount: outputAmount,
520
+ from: input.venueAddress,
521
+ to: input.vault,
522
+ reason: `action:${input.stepId}:output`,
523
+ });
524
+ }
525
+ if (inputAsset.length > 0 && outputAsset.length > 0 && inputAsset === outputAsset) {
526
+ const difference = inputAmount - outputAmount;
527
+ if (difference > 0n) {
528
+ deltas.push({
529
+ asset: inputAsset,
530
+ amount: difference,
531
+ from: input.vault,
532
+ to: LOSS_BUCKET_ADDRESS,
533
+ reason: `loss:${input.stepId}:slippage`,
534
+ });
535
+ }
536
+ else if (difference < 0n) {
537
+ deltas.push({
538
+ asset: inputAsset,
539
+ amount: -difference,
540
+ from: input.venueAddress,
541
+ to: FEE_BUCKET_ADDRESS,
542
+ reason: `fee:${input.stepId}:rebate`,
543
+ });
544
+ }
545
+ }
546
+ return deltas;
547
+ }
548
+ function parseAmount(value) {
549
+ const trimmed = value.trim();
550
+ if (!trimmed || !/^[-+]?\d+$/.test(trimmed)) {
551
+ return 0n;
552
+ }
553
+ try {
554
+ const parsed = BigInt(trimmed);
555
+ return parsed > 0n ? parsed : 0n;
556
+ }
557
+ catch {
558
+ return 0n;
559
+ }
560
+ }
463
561
  function serializeValue(value) {
464
562
  if (typeof value === "bigint") {
465
563
  return value.toString();
@@ -476,4 +574,115 @@ function serializeValue(value) {
476
574
  }
477
575
  return value;
478
576
  }
577
+ /**
578
+ * Preview an action step — resolves the action and simulates it,
579
+ * returning a PlannedAction instead of executing a real transaction.
580
+ */
581
+ export async function previewActionStep(step, ctx, ledger, _options) {
582
+ ledger.emit({ type: "step_started", stepId: step.id, kind: "action" });
583
+ incrementActions(ctx);
584
+ try {
585
+ const evalCtx = createEvalContext(ctx);
586
+ const explicitSkill = step.skill
587
+ ? ctx.spell.skills.find((s) => s.name === step.skill)
588
+ : undefined;
589
+ const actionVenue = hasVenue(step.action) ? step.action.venue : undefined;
590
+ const inferredSkill = !explicitSkill && actionVenue
591
+ ? ctx.spell.skills.find((s) => s.name === actionVenue)
592
+ : undefined;
593
+ const skill = explicitSkill ?? inferredSkill;
594
+ const skillName = skill?.name;
595
+ const actionWithVenue = resolveActionVenue(step.action, skill, ctx, skillName);
596
+ const resolvedAction = await resolveAction(actionWithVenue, evalCtx);
597
+ const mergedConstraints = applySkillDefaults(step.constraints, skill);
598
+ const resolvedConstraints = await resolveConstraints(mergedConstraints, evalCtx);
599
+ const actionWithConstraints = { ...resolvedAction, constraints: resolvedConstraints };
600
+ ledger.emit({
601
+ type: "constraint_evaluated",
602
+ stepId: step.id,
603
+ constraints: resolvedConstraints,
604
+ });
605
+ const venue = resolveVenueAlias(actionWithConstraints, ctx);
606
+ const amountValue = "amount" in actionWithConstraints
607
+ ? actionWithConstraints.amount
608
+ : undefined;
609
+ const amountText = amountValue !== undefined ? String(amountValue) : "";
610
+ const simulationResult = {
611
+ success: true,
612
+ gasEstimate: "0",
613
+ input: deriveSimulationInput(actionWithConstraints, amountText),
614
+ output: deriveSimulationOutput(actionWithConstraints, amountText),
615
+ };
616
+ ledger.emit({
617
+ type: "action_simulated",
618
+ action: actionWithConstraints,
619
+ venue,
620
+ result: simulationResult,
621
+ });
622
+ const valueDeltas = buildValueDeltas({
623
+ stepId: step.id,
624
+ vault: ctx.vault,
625
+ venueAddress: venue.address,
626
+ simulationResult,
627
+ });
628
+ const plannedAction = {
629
+ stepId: step.id,
630
+ action: actionWithConstraints,
631
+ venue: venue.alias,
632
+ constraints: resolvedConstraints,
633
+ onFailure: step.onFailure,
634
+ simulationResult,
635
+ valueDeltas,
636
+ };
637
+ ledger.emit({
638
+ type: "step_completed",
639
+ stepId: step.id,
640
+ result: { simulated: true, action: actionWithConstraints },
641
+ });
642
+ if (step.outputBinding) {
643
+ setBinding(ctx, step.outputBinding, { simulated: true, action: actionWithConstraints });
644
+ }
645
+ return {
646
+ stepResult: {
647
+ success: true,
648
+ stepId: step.id,
649
+ output: { simulated: true, action: actionWithConstraints },
650
+ },
651
+ plannedAction,
652
+ valueDeltas,
653
+ };
654
+ }
655
+ catch (error) {
656
+ const message = error instanceof Error ? error.message : String(error);
657
+ ledger.emit({ type: "step_failed", stepId: step.id, error: message });
658
+ return {
659
+ stepResult: { success: false, stepId: step.id, error: message },
660
+ };
661
+ }
662
+ }
663
+ /**
664
+ * Commit a planned action — takes a PlannedAction from the receipt
665
+ * and executes the real transaction via the executor.
666
+ */
667
+ export async function commitActionStep(planned, executor) {
668
+ try {
669
+ const result = await executor.executeAction(planned.action);
670
+ if (!result.success) {
671
+ return {
672
+ success: false,
673
+ hash: result.hash,
674
+ error: result.error ?? "Action execution failed",
675
+ };
676
+ }
677
+ return {
678
+ success: true,
679
+ hash: result.hash,
680
+ gasUsed: result.receipt?.gasUsed ?? result.gasUsed,
681
+ };
682
+ }
683
+ catch (error) {
684
+ const message = error instanceof Error ? error.message : String(error);
685
+ return { success: false, error: message };
686
+ }
687
+ }
479
688
  //# sourceMappingURL=action.js.map