@telorun/kernel 0.78.0 → 0.80.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 (106) hide show
  1. package/dist/bundle/module-artifact.d.ts +15 -2
  2. package/dist/bundle/module-artifact.d.ts.map +1 -1
  3. package/dist/bundle/module-artifact.js +36 -13
  4. package/dist/bundle/module-artifact.js.map +1 -1
  5. package/dist/controller-loader.d.ts +62 -9
  6. package/dist/controller-loader.d.ts.map +1 -1
  7. package/dist/controller-loader.js +72 -64
  8. package/dist/controller-loader.js.map +1 -1
  9. package/dist/controller-loaders/bundle-loader.d.ts +2 -2
  10. package/dist/controller-loaders/bundle-loader.d.ts.map +1 -1
  11. package/dist/controller-loaders/bundle-loader.js +9 -3
  12. package/dist/controller-loaders/bundle-loader.js.map +1 -1
  13. package/dist/controller-loaders/napi-loader.d.ts +22 -1
  14. package/dist/controller-loaders/napi-loader.d.ts.map +1 -1
  15. package/dist/controller-loaders/napi-loader.js +35 -5
  16. package/dist/controller-loaders/napi-loader.js.map +1 -1
  17. package/dist/controller-loaders/npm-loader.d.ts +2 -1
  18. package/dist/controller-loaders/npm-loader.d.ts.map +1 -1
  19. package/dist/controller-loaders/npm-loader.js +81 -11
  20. package/dist/controller-loaders/npm-loader.js.map +1 -1
  21. package/dist/controller-loaders/source-bundle-builder.d.ts +2 -1
  22. package/dist/controller-loaders/source-bundle-builder.d.ts.map +1 -1
  23. package/dist/controller-loaders/source-bundle-builder.js +4 -1
  24. package/dist/controller-loaders/source-bundle-builder.js.map +1 -1
  25. package/dist/controllers/resource-definition/resource-definition-controller.d.ts.map +1 -1
  26. package/dist/controllers/resource-definition/resource-definition-controller.js +7 -3
  27. package/dist/controllers/resource-definition/resource-definition-controller.js.map +1 -1
  28. package/dist/controllers/resource-definition/resource-template-controller.d.ts.map +1 -1
  29. package/dist/controllers/resource-definition/resource-template-controller.js +12 -5
  30. package/dist/controllers/resource-definition/resource-template-controller.js.map +1 -1
  31. package/dist/dependency-injection.d.ts.map +1 -1
  32. package/dist/dependency-injection.js +7 -7
  33. package/dist/dependency-injection.js.map +1 -1
  34. package/dist/evaluation-context.d.ts +33 -13
  35. package/dist/evaluation-context.d.ts.map +1 -1
  36. package/dist/evaluation-context.js +145 -4
  37. package/dist/evaluation-context.js.map +1 -1
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +2 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/instance-declaration.d.ts +8 -0
  43. package/dist/instance-declaration.d.ts.map +1 -0
  44. package/dist/instance-declaration.js +34 -0
  45. package/dist/instance-declaration.js.map +1 -0
  46. package/dist/invocation-contract-binding.d.ts +15 -2
  47. package/dist/invocation-contract-binding.d.ts.map +1 -1
  48. package/dist/invocation-contract-binding.js +39 -4
  49. package/dist/invocation-contract-binding.js.map +1 -1
  50. package/dist/kernel.d.ts.map +1 -1
  51. package/dist/kernel.js +78 -14
  52. package/dist/kernel.js.map +1 -1
  53. package/dist/manifest-schemas.d.ts +1 -1
  54. package/dist/manifest-schemas.d.ts.map +1 -1
  55. package/dist/manifest-schemas.js +1 -1
  56. package/dist/manifest-schemas.js.map +1 -1
  57. package/dist/manifest-sources/analysis-stamp.d.ts +12 -8
  58. package/dist/manifest-sources/analysis-stamp.d.ts.map +1 -1
  59. package/dist/manifest-sources/analysis-stamp.js +50 -23
  60. package/dist/manifest-sources/analysis-stamp.js.map +1 -1
  61. package/dist/manifest-sources/local-manifest-cache-source.d.ts +45 -9
  62. package/dist/manifest-sources/local-manifest-cache-source.d.ts.map +1 -1
  63. package/dist/manifest-sources/local-manifest-cache-source.js +65 -12
  64. package/dist/manifest-sources/local-manifest-cache-source.js.map +1 -1
  65. package/dist/module-context.d.ts +5 -1
  66. package/dist/module-context.d.ts.map +1 -1
  67. package/dist/module-context.js +13 -1
  68. package/dist/module-context.js.map +1 -1
  69. package/dist/resource-context.d.ts +12 -1
  70. package/dist/resource-context.d.ts.map +1 -1
  71. package/dist/resource-context.js +15 -0
  72. package/dist/resource-context.js.map +1 -1
  73. package/dist/runtime-seam.d.ts.map +1 -1
  74. package/dist/runtime-seam.js +9 -1
  75. package/dist/runtime-seam.js.map +1 -1
  76. package/dist/workspace-marker.d.ts +37 -0
  77. package/dist/workspace-marker.d.ts.map +1 -0
  78. package/dist/workspace-marker.js +68 -0
  79. package/dist/workspace-marker.js.map +1 -0
  80. package/dist/zone-context.d.ts +16 -1
  81. package/dist/zone-context.d.ts.map +1 -1
  82. package/dist/zone-context.js +61 -1
  83. package/dist/zone-context.js.map +1 -1
  84. package/package.json +3 -3
  85. package/src/bundle/module-artifact.ts +47 -15
  86. package/src/controller-loader.ts +115 -81
  87. package/src/controller-loaders/bundle-loader.ts +10 -2
  88. package/src/controller-loaders/napi-loader.ts +42 -3
  89. package/src/controller-loaders/npm-loader.ts +86 -8
  90. package/src/controller-loaders/source-bundle-builder.ts +6 -0
  91. package/src/controllers/resource-definition/resource-definition-controller.ts +7 -3
  92. package/src/controllers/resource-definition/resource-template-controller.ts +12 -5
  93. package/src/dependency-injection.ts +7 -7
  94. package/src/evaluation-context.ts +195 -15
  95. package/src/index.ts +7 -0
  96. package/src/instance-declaration.ts +36 -0
  97. package/src/invocation-contract-binding.ts +49 -1
  98. package/src/kernel.ts +95 -14
  99. package/src/manifest-schemas.ts +1 -0
  100. package/src/manifest-sources/analysis-stamp.ts +53 -25
  101. package/src/manifest-sources/local-manifest-cache-source.ts +68 -13
  102. package/src/module-context.ts +24 -3
  103. package/src/resource-context.ts +18 -0
  104. package/src/runtime-seam.ts +9 -1
  105. package/src/workspace-marker.ts +68 -0
  106. package/src/zone-context.ts +70 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-seam.js","sourceRoot":"","sources":["../src/runtime-seam.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,kBAAkB,EAClB,kBAAkB,GAMnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,MAAM,GAQP,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAE9E;;;;;;;;;;;;GAYG;AACH,MAAM,uBAAuB,GAAG,GAAG,CAAC;AASpC;;;;;GAKG;AACH,MAAM,aAAa;IACjB,MAAM,GAAmB,EAAE,CAAC;IAC5B,QAAQ,GAAoD,EAAE,CAAC;IAC/D,MAAM,GAAG,KAAK,CAAC;IAEN,QAAQ,GAAa,IAAI,QAAQ,CAAC;QACzC,KAAK,EAAE,CAAC,KAAsB,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;YACrD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC,CAAC;IAEM,MAAM,GAAmB,IAAI,MAAM,CAAS;QACnD,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE;SACzB,CAAC;KACH,CAAC,CAAC;IAEH;;8BAE0B;IAC1B,GAAG;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAY,EAAE,QAAoB;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACrC,QAAQ,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,uBAAuB,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3B,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACzD,OAAO,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACvF,CAAC;CACF;AAED,MAAM,cAAc,GAA4C;IAC9D,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,MAAM;CACV,CAAC;AAEF;;;8EAG8E;AAC9E,SAAS,iBAAiB,CAAC,UAA8B;IACvD,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,qEAAqE;IACrE,MAAM,GAAG,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAkC,CAAC;IAC5D,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;QACnC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,OAAO;QAC7D,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI;QACnC,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS;QAC1C,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,iBAAiB;IACC;IAA7B,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAA2B;QACnD,8EAA8E;QAC9E,4EAA4E;QAC5E,6EAA6E;QAC7E,oCAAoC;QACpC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAEnC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC;YAC5B,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG;YACpC,MAAM,EAAE,MAAM,CAAC,QAAQ;YACvB,MAAM,EAAE,MAAM,CAAC,QAAQ;YACvB,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;YACzC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;SACrC,CAAC,CAAC;QAEH,0EAA0E;QAC1E,yEAAyE;QACzE,wEAAwE;QACxE,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE;YAC3B,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,KAAK,CAAC,QAAQ,CAAC;YACxB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC/E,OAAO,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;YACnD,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,SAAoC,CAAC;QACzC,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,WAAW,EAAiB,EAAE;YACrD,2EAA2E;YAC3E,yEAAyE;YACzE,mDAAmD;YACnD,SAAS,KAAK,CAAC,KAAK,IAAI,EAAE;gBACxB,qEAAqE;gBACrE,kEAAkE;gBAClE,uEAAuE;gBACvE,qDAAqD;gBACrD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACrB,KAAK,CAAC,SAAS,EAAE,CAAC;gBAClB,MAAM,QAAQ,CAAC;YACjB,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QAEF,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,OAA6B;QACvD,6EAA6E;QAC7E,yEAAyE;QACzE,wEAAwE;QACxE,0EAA0E;QAC1E,wEAAwE;QACxE,eAAe;QACf,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE;YACrF,WAAW,EAAE,eAAe;SAC7B,CAAC,CAAC;QACH,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YACnD,MAAM,CAAC,QAAQ,CAAC,QAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,SAAS,CAAC;QACd,2EAA2E;QAC3E,2EAA2E;QAC3E,IAAI,gBAAgB,GAAyB,EAAE,CAAC;QAChD,IAAI,kBAAkB,GAAyB,EAAE,CAAC;QAClD,IAAI,oBAAoB,GAAyB,EAAE,CAAC;QACpD,IAAI,eAAe,GAA0B,EAAE,CAAC;QAChD,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,IAAI,WAAoC,CAAC;QACzC,IAAI,CAAC;YACH,wEAAwE;YACxE,uEAAuE;YACvE,0EAA0E;YAC1E,kBAAkB;YAClB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBAC3C,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAI;gBAC/C,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACzD,WAAW,GAAG,KAAK,CAAC;YACpB,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;YAC1C,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;YAC9C,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,CAAC;YAClD,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACtC,uEAAuE;YACvE,0DAA0D;YAC1D,eAAe,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,wEAAwE;YACxE,0EAA0E;YAC1E,0EAA0E;YAC1E,0BAA0B;YAC1B,OAAO;gBACL,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5D,CAAC;QACJ,CAAC;QAED,4EAA4E;QAC5E,yEAAyE;QACzE,4EAA4E;QAC5E,6EAA6E;QAC7E,qDAAqD;QACrD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,WAAW,EAAE,CAAC,GAAG,gBAAgB,EAAE,GAAG,oBAAoB,EAAE,GAAG,kBAAkB,CAAC,CAAC,GAAG,CACpF,iBAAiB,CAClB;aACF,CAAC;QACJ,CAAC;QAED,wEAAwE;QACxE,oEAAoE;QACpE,EAAE;QACF,0EAA0E;QAC1E,uEAAuE;QACvE,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE;YACvF,eAAe;YACf,YAAY,EAAE,gBAAgB,EAAE;SACjC,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO;YACL,WAAW,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,kBAAkB,EAAE,GAAG,WAAW,CAAC,CAAC,GAAG,CAC/E,iBAAiB,CAClB;SACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"runtime-seam.js","sourceRoot":"","sources":["../src/runtime-seam.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Finding `telo-workspace.yaml` on disk.
3
+ *
4
+ * Its LOCATION is a general anchor — the directory workspace-relative paths are
5
+ * measured from, the outer bound on how far a walk-up may look, and the root the
6
+ * `.telo` cache is anchored at — while its `modules:` list is release scope. So
7
+ * the finder is deliberately separate from `release/`: `telo run` bounds its
8
+ * `.env` collection with the marker and `resolveCacheRoot` anchors on it, and
9
+ * neither may reach into the release namespace to do so, where `loadWorkspace`
10
+ * (which parses `modules:` and throws when the file is absent) sits one import
11
+ * away.
12
+ *
13
+ * It lives in the KERNEL rather than the CLI because the cache root is resolved
14
+ * here, on a path a CLI-less embedder also takes (a child kernel started through
15
+ * the runtime seam, a test harness). The CLI re-exports it; nothing is duplicated.
16
+ *
17
+ * Parsing the file is the analyzer's (`release/workspace-config.ts`); finding it
18
+ * is the Node half, and this is all of it.
19
+ */
20
+ import { WORKSPACE_FILENAME } from "@telorun/analyzer";
21
+ export { WORKSPACE_FILENAME };
22
+ /**
23
+ * Walk up from `from` looking for the marker. Returns the directory holding it,
24
+ * or `undefined` — the file is optional. `telo release` requires one and reports
25
+ * its absence; `telo run` and `resolveCacheRoot` read `undefined` as "no parent
26
+ * lookup", falling back to what they did before the marker existed.
27
+ *
28
+ * `from` is resolved through symlinks first: a manifest reached through a linked
29
+ * directory would otherwise walk the LINK's parents, miss a marker that is right
30
+ * there in the real tree, and silently fall back to a narrower answer.
31
+ */
32
+ export declare function findWorkspaceRoot(from: string): string | undefined;
33
+ /** `fs.realpathSync`, falling back to the input when the path does not exist —
34
+ * a manifest path that is wrong is the caller's error to report, not this
35
+ * helper's to convert into a different one. */
36
+ export declare function realPath(target: string): string;
37
+ //# sourceMappingURL=workspace-marker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-marker.d.ts","sourceRoot":"","sources":["../src/workspace-marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIvD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQlE;AAcD;;gDAEgD;AAChD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAM/C"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Finding `telo-workspace.yaml` on disk.
3
+ *
4
+ * Its LOCATION is a general anchor — the directory workspace-relative paths are
5
+ * measured from, the outer bound on how far a walk-up may look, and the root the
6
+ * `.telo` cache is anchored at — while its `modules:` list is release scope. So
7
+ * the finder is deliberately separate from `release/`: `telo run` bounds its
8
+ * `.env` collection with the marker and `resolveCacheRoot` anchors on it, and
9
+ * neither may reach into the release namespace to do so, where `loadWorkspace`
10
+ * (which parses `modules:` and throws when the file is absent) sits one import
11
+ * away.
12
+ *
13
+ * It lives in the KERNEL rather than the CLI because the cache root is resolved
14
+ * here, on a path a CLI-less embedder also takes (a child kernel started through
15
+ * the runtime seam, a test harness). The CLI re-exports it; nothing is duplicated.
16
+ *
17
+ * Parsing the file is the analyzer's (`release/workspace-config.ts`); finding it
18
+ * is the Node half, and this is all of it.
19
+ */
20
+ import { WORKSPACE_FILENAME } from "@telorun/analyzer";
21
+ import * as fs from "node:fs";
22
+ import * as path from "node:path";
23
+ export { WORKSPACE_FILENAME };
24
+ /**
25
+ * Walk up from `from` looking for the marker. Returns the directory holding it,
26
+ * or `undefined` — the file is optional. `telo release` requires one and reports
27
+ * its absence; `telo run` and `resolveCacheRoot` read `undefined` as "no parent
28
+ * lookup", falling back to what they did before the marker existed.
29
+ *
30
+ * `from` is resolved through symlinks first: a manifest reached through a linked
31
+ * directory would otherwise walk the LINK's parents, miss a marker that is right
32
+ * there in the real tree, and silently fall back to a narrower answer.
33
+ */
34
+ export function findWorkspaceRoot(from) {
35
+ let dir = realPath(path.resolve(from));
36
+ for (;;) {
37
+ if (isFile(path.join(dir, WORKSPACE_FILENAME)))
38
+ return dir;
39
+ const parent = path.dirname(dir);
40
+ if (parent === dir)
41
+ return undefined;
42
+ dir = parent;
43
+ }
44
+ }
45
+ /** The marker must be a FILE. `existsSync` would accept a directory of that name
46
+ * and anchor the whole cache on it, and the Rust half tests `is_file()` — a
47
+ * workspace visible to one kernel and not the other is precisely the divergence
48
+ * a shared marker exists to prevent. */
49
+ function isFile(target) {
50
+ try {
51
+ return fs.statSync(target).isFile();
52
+ }
53
+ catch {
54
+ return false;
55
+ }
56
+ }
57
+ /** `fs.realpathSync`, falling back to the input when the path does not exist —
58
+ * a manifest path that is wrong is the caller's error to report, not this
59
+ * helper's to convert into a different one. */
60
+ export function realPath(target) {
61
+ try {
62
+ return fs.realpathSync(target);
63
+ }
64
+ catch {
65
+ return target;
66
+ }
67
+ }
68
+ //# sourceMappingURL=workspace-marker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-marker.js","sourceRoot":"","sources":["../src/workspace-marker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC;QACR,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAC;QACrC,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;yCAGyC;AACzC,SAAS,MAAM,CAAC,MAAc;IAC5B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;gDAEgD;AAChD,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC;IAChB,CAAC;AACH,CAAC"}
@@ -17,7 +17,7 @@
17
17
  * `create()` has returned. A statement resolves them on *every* dispatch
18
18
  * otherwise, and this sits on the SQL hot path.
19
19
  */
20
- import { type InvokeContext, type ResourceDefinition, type ResourceHandle, type ResourceInstance, type ZoneEntry } from "@telorun/sdk";
20
+ import { type InvokeContext, type ResourceDefinition, type ResourceHandle, type ResourceInstance, type OpenZoneAttributes, type ZoneEntry } from "@telorun/sdk";
21
21
  /** What the owning context supplies. Structural, so `ResourceContext` stays the
22
22
  * only thing that knows how any of it is reached. */
23
23
  export interface ZoneHost {
@@ -47,6 +47,21 @@ export declare class ZoneContext {
47
47
  requireZone(field: string, ctx?: InvokeContext): ZoneEntry;
48
48
  findZone(field: string, ctx?: InvokeContext): ZoneEntry | undefined;
49
49
  zonesFor(instance: ResourceInstance, ctx?: InvokeContext): readonly ZoneEntry[];
50
+ zoneAttributes(ctx?: InvokeContext): readonly OpenZoneAttributes[];
51
+ /**
52
+ * What the zone a kind provides declares, read off that kind's own schema.
53
+ *
54
+ * NOT off the entry: a `ZoneEntry` is three identities precisely so it stays
55
+ * ABI-serializable and no module can read another's private state off the
56
+ * stack, and an attributes field on it would trade that away for every zone.
57
+ * The kernel is the one place the declaring kind's schema is already
58
+ * reachable, so it resolves and hands the values over — branching on no name,
59
+ * exactly as `readRefSlot` returns `use` without acting on it.
60
+ *
61
+ * Memoized per kind: this sits behind every dispatch a durable step engine
62
+ * makes, and the answer is fixed once definitions are registered.
63
+ */
64
+ private attributesOfKind;
50
65
  private resolveProvider;
51
66
  private resolveRequirement;
52
67
  /** Innermost first — the order a nested zone must win in. */
@@ -1 +1 @@
1
- {"version":3,"file":"zone-context.d.ts","sourceRoot":"","sources":["../src/zone-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAMtB;sDACsD;AACtD,MAAM,WAAW,QAAQ;IACvB,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B;oFACgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,+DAA+D;IAC/D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IAChE,oEAAoE;IACpE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACnF,qDAAqD;IACrD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACjE;uEACmE;IACnE,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CACzE;AAeD,qBAAa,WAAW;;gBAOV,IAAI,EAAE,QAAQ;IAIpB,QAAQ,CAAC,CAAC,EACd,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,CAAC,CAAC;IAeb,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS;IAc1D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS;IAInE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS,SAAS,EAAE;IAe/E,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,kBAAkB;IA2B1B,6DAA6D;IAC7D,OAAO,CAAC,KAAK;IAab;oCACgC;IAChC,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,aAAa;IAWrB;;sFAEkF;IAClF,OAAO,CAAC,eAAe;IAYvB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B;mEAC+D;IAC/D,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,iBAAiB;IAoBzB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;IAoBtB;yEACqE;IACrE,OAAO,CAAC,aAAa;CAStB"}
1
+ {"version":3,"file":"zone-context.d.ts","sourceRoot":"","sources":["../src/zone-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAWtB;sDACsD;AACtD,MAAM,WAAW,QAAQ;IACvB,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B;oFACgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,+DAA+D;IAC/D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IAChE,oEAAoE;IACpE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACnF,qDAAqD;IACrD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACjE;uEACmE;IACnE,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CACzE;AAeD,qBAAa,WAAW;;gBAWV,IAAI,EAAE,QAAQ;IAIpB,QAAQ,CAAC,CAAC,EACd,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EACxD,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,CAAC,CAAC;IAeb,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS;IAc1D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS;IAInE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS,SAAS,EAAE;IAa/E,cAAc,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,SAAS,kBAAkB,EAAE;IAalE;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,kBAAkB;IA2B1B,6DAA6D;IAC7D,OAAO,CAAC,KAAK;IAab;oCACgC;IAChC,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,aAAa;IAWrB;;sFAEkF;IAClF,OAAO,CAAC,eAAe;IAYvB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B;mEAC+D;IAC/D,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,iBAAiB;IAoBzB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;IAoBtB;yEACqE;IACrE,OAAO,CAAC,aAAa;CAStB"}
@@ -18,7 +18,7 @@
18
18
  * otherwise, and this sits on the SQL hot path.
19
19
  */
20
20
  import { InvokeError, RuntimeError, UNCANCELLABLE_CONTEXT, deriveContext, getRefIdentity, sameResource, } from "@telorun/sdk";
21
- import { readProvidesZone, readRequiresZone } from "@telorun/analyzer";
21
+ import { effectiveAuthorSchema, readProvidesZone, readRequiresZone, } from "@telorun/analyzer";
22
22
  import { isRefSentinel } from "@telorun/templating";
23
23
  import { ambientInvokeContext, runWithAmbientContext } from "./evaluation-context.js";
24
24
  import { handleOfInstance } from "./resource-handle.js";
@@ -28,6 +28,10 @@ export class ZoneContext {
28
28
  #requirements = new Map();
29
29
  /** Slot → resolved correlation handle for a providing slot. */
30
30
  #providers = new Map();
31
+ /** Providing kind → what the zone it provides declares about its contents.
32
+ * Keyed by kind rather than by slot because the question a caller asks is
33
+ * about an OPEN zone, which is reached by its entry's kind. */
34
+ #attributes = new Map();
31
35
  constructor(host) {
32
36
  this.#host = host;
33
37
  }
@@ -74,6 +78,62 @@ export class ZoneContext {
74
78
  }
75
79
  return out;
76
80
  }
81
+ zoneAttributes(ctx) {
82
+ const zones = (ctx ?? ambientInvokeContext())?.zones;
83
+ if (!zones || zones.length === 0)
84
+ return [];
85
+ const out = [];
86
+ // Innermost first, matching `match` and `zonesFor` — a nested zone's
87
+ // constraint is the one a controller meets first.
88
+ for (let i = zones.length - 1; i >= 0; i--) {
89
+ const entry = zones[i];
90
+ out.push({ kind: entry.kind, attributes: this.attributesOfKind(entry.kind), entry });
91
+ }
92
+ return out;
93
+ }
94
+ /**
95
+ * What the zone a kind provides declares, read off that kind's own schema.
96
+ *
97
+ * NOT off the entry: a `ZoneEntry` is three identities precisely so it stays
98
+ * ABI-serializable and no module can read another's private state off the
99
+ * stack, and an attributes field on it would trade that away for every zone.
100
+ * The kernel is the one place the declaring kind's schema is already
101
+ * reachable, so it resolves and hands the values over — branching on no name,
102
+ * exactly as `readRefSlot` returns `use` without acting on it.
103
+ *
104
+ * Memoized per kind: this sits behind every dispatch a durable step engine
105
+ * makes, and the answer is fixed once definitions are registered.
106
+ */
107
+ attributesOfKind(kind) {
108
+ const cached = this.#attributes.get(kind);
109
+ if (cached)
110
+ return cached;
111
+ const def = this.#host.resolveDefinition(kind);
112
+ // A kind that does not resolve is NOT cached: definitions are registered
113
+ // during init and this is called at dispatch, so an unresolved lookup is a
114
+ // transient state — caching the empty answer would make it permanent, and a
115
+ // zone would silently declare nothing for the life of the process.
116
+ if (!def)
117
+ return {};
118
+ // Resolved along `extends`, so a child that inherits its parent's
119
+ // zone-providing slot reports the attributes that slot declares. Reading the
120
+ // own schema alone would have a child's zone silently constrain nothing.
121
+ const properties = effectiveAuthorSchema(def, (k) => this.#host.resolveDefinition(k))?.properties;
122
+ const merged = {};
123
+ for (const slotSchema of Object.values(properties ?? {})) {
124
+ // Every providing slot of one kind provides that same kind's zone — the
125
+ // annotation never names a zone — so their attributes describe one region
126
+ // and merge. First declaration wins, so the reading is stable rather than
127
+ // dependent on property order.
128
+ for (const [name, reason] of Object.entries(readProvidesZone(slotSchema)?.attributes ?? {})) {
129
+ if (!(name in merged) && typeof reason === "string")
130
+ merged[name] = reason;
131
+ }
132
+ }
133
+ const attributes = merged;
134
+ this.#attributes.set(kind, attributes);
135
+ return attributes;
136
+ }
77
137
  // ── resolution ────────────────────────────────────────────────────────────
78
138
  resolveProvider(slot) {
79
139
  const cached = this.#providers.get(slot);
@@ -1 +1 @@
1
- {"version":3,"file":"zone-context.js","sourceRoot":"","sources":["../src/zone-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zone-context.js","sourceRoot":"","sources":["../src/zone-context.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telorun/kernel",
3
- "version": "0.78.0",
3
+ "version": "0.80.0",
4
4
  "description": "Telo Runtime - A lightweight, polyglot execution host.",
5
5
  "keywords": [
6
6
  "telo",
@@ -61,7 +61,7 @@
61
61
  "dependencies": {
62
62
  "@marcbachmann/cel-js": "^7.6.1",
63
63
  "@sinclair/typebox": "^0.34.48",
64
- "@telorun/analyzer": "0.62.1",
64
+ "@telorun/analyzer": "0.64.0",
65
65
  "@telorun/glob": "0.2.0",
66
66
  "@telorun/templating": "0.16.0",
67
67
  "ajv": "^8.17.1",
@@ -75,7 +75,7 @@
75
75
  "@types/tar-stream": "^3.1.3",
76
76
  "typescript": "^5.0.0",
77
77
  "vitest": "^2.1.8",
78
- "@telorun/sdk": "0.77.0"
78
+ "@telorun/sdk": "0.80.0"
79
79
  },
80
80
  "optionalDependencies": {
81
81
  "esbuild": "^0.25.12"
@@ -14,6 +14,9 @@ import * as fs from "fs/promises";
14
14
  import * as path from "path";
15
15
  import { fileURLToPath } from "url";
16
16
 
17
+ // Type-only: the loader that supplies this reporter imports the artifact, so
18
+ // the cycle is erased at compile time.
19
+ import type { ControllerWorkReporter } from "../controller-loader.js";
17
20
  import { withDirectoryLock } from "../directory-lock.js";
18
21
  import { cachePathForCanonical } from "../manifest-sources/local-manifest-cache-source.js";
19
22
  import type { TransportRegistry } from "../transports/transport-registry.js";
@@ -189,8 +192,9 @@ export class ModuleArtifact {
189
192
  */
190
193
  async materializeController(
191
194
  selector: ArtifactSelector,
195
+ report?: ControllerWorkReporter,
192
196
  ): Promise<ResolvedControllerLayer | undefined> {
193
- return this.materializeCode(selector, ["controller", "library"]);
197
+ return this.materializeCode(selector, ["controller", "library"], report);
194
198
  }
195
199
 
196
200
  /**
@@ -209,19 +213,20 @@ export class ModuleArtifact {
209
213
  private async materializeCode(
210
214
  selector: ArtifactSelector,
211
215
  roles: ReadonlyArray<"controller" | "library">,
216
+ report?: ControllerWorkReporter,
212
217
  ): Promise<ResolvedControllerLayer | undefined> {
213
218
  const wanted = roles
214
219
  .map((role) => codeLayerFor(this.layers, role, selector))
215
220
  .filter((l): l is ArtifactLayer => l !== undefined);
216
221
  if (wanted.length === 0) return undefined;
217
- const common = await this.materializeCommonTracked();
222
+ const common = await this.materializeCommonTracked(report);
218
223
  let transferred = common?.transferred ?? false;
219
224
  const files: string[] = [];
220
225
  for (const layer of wanted) {
221
226
  // Every half is a transfer the caller waited on: the common layer's bytes
222
227
  // come down on this call too, so they are as much of a wait as the code
223
228
  // layer's.
224
- const resolved = await this.materializeTracked(layer);
229
+ const resolved = await this.materializeTracked(layer, report);
225
230
  transferred = resolved.transferred || transferred;
226
231
  files.push(...resolved.layer.files);
227
232
  }
@@ -256,9 +261,11 @@ export class ModuleArtifact {
256
261
  /** As `materializeCommon`, reporting whether this call transferred it — the
257
262
  * controller path rides the common layer along and has to count its bytes as
258
263
  * part of the wait. One lookup, so "common comes too" is encoded once. */
259
- private async materializeCommonTracked(): Promise<ResolvedControllerLayer | undefined> {
264
+ private async materializeCommonTracked(
265
+ report?: ControllerWorkReporter,
266
+ ): Promise<ResolvedControllerLayer | undefined> {
260
267
  const layer = singletonLayer(this.layers, "common");
261
- return layer ? this.materializeTracked(layer) : undefined;
268
+ return layer ? this.materializeTracked(layer, report) : undefined;
262
269
  }
263
270
 
264
271
  /**
@@ -298,10 +305,13 @@ export class ModuleArtifact {
298
305
  * transfer to all of them would print one progress line per candidate for a
299
306
  * single download. The call that started the work owns the report.
300
307
  */
301
- private materializeTracked(layer: ArtifactLayer): Promise<ResolvedControllerLayer> {
308
+ private materializeTracked(
309
+ layer: ArtifactLayer,
310
+ report?: ControllerWorkReporter,
311
+ ): Promise<ResolvedControllerLayer> {
302
312
  const pending = this.inFlight.get(layer.blob);
303
313
  if (pending) return pending.then((r) => ({ layer: r.layer, transferred: false }));
304
- const work = this.materializeUncached(layer).catch((err) => {
314
+ const work = this.materializeUncached(layer, report).catch((err) => {
305
315
  // Drop the rejection so a transient fetch failure is retried rather than
306
316
  // cached for the lifetime of the module.
307
317
  this.inFlight.delete(layer.blob);
@@ -319,7 +329,10 @@ export class ModuleArtifact {
319
329
  return path.join(this.dir, `.telo-layer-${layer.role}-${short}`);
320
330
  }
321
331
 
322
- private async materializeUncached(layer: ArtifactLayer): Promise<ResolvedControllerLayer> {
332
+ private async materializeUncached(
333
+ layer: ArtifactLayer,
334
+ report?: ControllerWorkReporter,
335
+ ): Promise<ResolvedControllerLayer> {
323
336
  const marker = this.markerPath(layer);
324
337
  if (existsSync(marker)) {
325
338
  return { layer: { dir: this.dir, files: await readMarker(marker) }, transferred: false };
@@ -335,6 +348,10 @@ export class ModuleArtifact {
335
348
  return { layer: { dir: this.dir, files: await readMarker(marker) }, transferred: false };
336
349
  }
337
350
 
351
+ // Both re-checks are behind us, so this call really does go to the
352
+ // network — the one point at which a transfer is a fact rather than a
353
+ // possibility, and the same place `transferred: true` is decided.
354
+ await report?.("layer-fetch");
338
355
  const files = await this.transports.fetchLayer(this.pinnedRef, layer.blob);
339
356
  const actual = await computeFilesIntegrity(files);
340
357
  if (actual !== layer.integrity) {
@@ -397,6 +414,18 @@ async function readMarker(marker: string): Promise<string[]> {
397
414
  * identically cold and warm. A genuinely local `source` (development, or a module
398
415
  * loaded straight off disk) resolves to its own directory.
399
416
  *
417
+ * A module's LAYERS extract beside its cached `telo.yaml`, so this has to follow
418
+ * the manifest cache's own fallback to the pre-workspace-anchor root: when the
419
+ * manifest resolved from `<entry-dir>/.telo/manifests/` because the workspace root
420
+ * is cold, its already-materialized controller layers are there too. Deriving the
421
+ * directory from the new root alone left an offline hermetic upgrade resolving
422
+ * `telo.yaml` from disk and then going to the network for every bundled
423
+ * controller — the fallback covering half a module.
424
+ *
425
+ * The legacy root is chosen only when it HOLDS the manifest and the current root
426
+ * does not; a cold cache still places the module under the current root, so a
427
+ * fresh materialization is never diverted to the old location.
428
+ *
400
429
  * Returns `null` when neither route yields a directory — a `memory://` module, or
401
430
  * a ref this cache has no coordinates for.
402
431
  */
@@ -406,14 +435,17 @@ export function moduleDirectoryFor(
406
435
  entryDir: string,
407
436
  registryUrl: string | undefined,
408
437
  manifestsDir: string | undefined,
438
+ legacyDir?: string | null,
409
439
  ): string | null {
410
- const cacheFile = cachePathForCanonical(
411
- splitIntegrity(requestedUrl).base,
412
- entryDir,
413
- registryUrl,
414
- manifestsDir,
415
- );
416
- if (cacheFile) return path.dirname(cacheFile);
440
+ const pinned = splitIntegrity(requestedUrl).base;
441
+ const cacheFile = cachePathForCanonical(pinned, entryDir, registryUrl, manifestsDir);
442
+ if (cacheFile) {
443
+ if (legacyDir && !existsSync(cacheFile)) {
444
+ const legacyFile = cachePathForCanonical(pinned, entryDir, registryUrl, legacyDir);
445
+ if (legacyFile && existsSync(legacyFile)) return path.dirname(legacyFile);
446
+ }
447
+ return path.dirname(cacheFile);
448
+ }
417
449
  if (source.startsWith("file://")) return path.dirname(fileURLToPath(source));
418
450
  if (path.isAbsolute(source)) return path.dirname(source);
419
451
  return null;