@ttsc/unplugin 0.31.0 → 0.31.2

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 (291) hide show
  1. package/lib/core/bridge/projectRecordMoved.js +1 -1
  2. package/lib/core/bridge/projectRecordMoved.js.map +1 -1
  3. package/lib/core/bridge/projectRecordMoved.mjs +1 -1
  4. package/lib/core/bridge/projectRecordMoved.mjs.map +1 -1
  5. package/lib/core/bun/bun.d.cts +3 -2
  6. package/lib/core/bun/bun.d.mts +3 -2
  7. package/lib/core/bun/bun.d.ts +3 -2
  8. package/lib/core/bun/bun.js +8 -4
  9. package/lib/core/bun/bun.js.map +1 -1
  10. package/lib/core/bun/bun.mjs +8 -4
  11. package/lib/core/bun/bun.mjs.map +1 -1
  12. package/lib/core/observer/createInputObserver.js +7 -6
  13. package/lib/core/observer/createInputObserver.js.map +1 -1
  14. package/lib/core/observer/createInputObserver.mjs +7 -6
  15. package/lib/core/observer/createInputObserver.mjs.map +1 -1
  16. package/lib/core/observer/openIsolatedRecursiveWatch.d.cts +11 -12
  17. package/lib/core/observer/openIsolatedRecursiveWatch.d.mts +11 -12
  18. package/lib/core/observer/openIsolatedRecursiveWatch.d.ts +11 -12
  19. package/lib/core/observer/openIsolatedRecursiveWatch.js +11 -12
  20. package/lib/core/observer/openIsolatedRecursiveWatch.js.map +1 -1
  21. package/lib/core/observer/openIsolatedRecursiveWatch.mjs +11 -12
  22. package/lib/core/observer/openIsolatedRecursiveWatch.mjs.map +1 -1
  23. package/lib/core/transform/cache/TtscCachedProjectTransform.d.cts +12 -3
  24. package/lib/core/transform/cache/TtscCachedProjectTransform.d.mts +12 -3
  25. package/lib/core/transform/cache/TtscCachedProjectTransform.d.ts +12 -3
  26. package/lib/core/transform/cache/selectCachedGenerationAction.d.cts +2 -0
  27. package/lib/core/transform/cache/selectCachedGenerationAction.d.mts +2 -0
  28. package/lib/core/transform/cache/selectCachedGenerationAction.d.ts +2 -0
  29. package/lib/core/transform/cache/selectCachedGenerationAction.js +1 -1
  30. package/lib/core/transform/cache/selectCachedGenerationAction.js.map +1 -1
  31. package/lib/core/transform/cache/selectCachedGenerationAction.mjs +1 -1
  32. package/lib/core/transform/cache/selectCachedGenerationAction.mjs.map +1 -1
  33. package/lib/core/transform/deliverCachedTransform.d.cts +36 -0
  34. package/lib/core/transform/deliverCachedTransform.d.mts +36 -0
  35. package/lib/core/transform/deliverCachedTransform.d.ts +36 -0
  36. package/lib/core/transform/deliverCachedTransform.js +73 -0
  37. package/lib/core/transform/deliverCachedTransform.js.map +1 -0
  38. package/lib/core/transform/deliverCachedTransform.mjs +71 -0
  39. package/lib/core/transform/deliverCachedTransform.mjs.map +1 -0
  40. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.d.cts +2 -2
  41. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.d.mts +2 -2
  42. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.d.ts +2 -2
  43. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.js +6 -2
  44. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.js.map +1 -1
  45. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.mjs +6 -2
  46. package/lib/core/transform/envelope/selectDeclaredProjectInputKeys.mjs.map +1 -1
  47. package/lib/core/transform/envelope/selectExternalInputPaths.d.cts +3 -5
  48. package/lib/core/transform/envelope/selectExternalInputPaths.d.mts +3 -5
  49. package/lib/core/transform/envelope/selectExternalInputPaths.d.ts +3 -5
  50. package/lib/core/transform/envelope/selectExternalInputPaths.js +8 -7
  51. package/lib/core/transform/envelope/selectExternalInputPaths.js.map +1 -1
  52. package/lib/core/transform/envelope/selectExternalInputPaths.mjs +8 -7
  53. package/lib/core/transform/envelope/selectExternalInputPaths.mjs.map +1 -1
  54. package/lib/core/transform/filesystem/TtscTransformFilesystemOperations.d.cts +15 -12
  55. package/lib/core/transform/filesystem/TtscTransformFilesystemOperations.d.mts +15 -12
  56. package/lib/core/transform/filesystem/TtscTransformFilesystemOperations.d.ts +15 -12
  57. package/lib/core/transform/generation/captureFailedGenerationInputStates.js +1 -1
  58. package/lib/core/transform/generation/captureFailedGenerationInputStates.js.map +1 -1
  59. package/lib/core/transform/generation/captureFailedGenerationInputStates.mjs +1 -1
  60. package/lib/core/transform/generation/captureFailedGenerationInputStates.mjs.map +1 -1
  61. package/lib/core/transform/generation/captureTransformGeneration.js +1 -1
  62. package/lib/core/transform/generation/captureTransformGeneration.js.map +1 -1
  63. package/lib/core/transform/generation/captureTransformGeneration.mjs +1 -1
  64. package/lib/core/transform/generation/captureTransformGeneration.mjs.map +1 -1
  65. package/lib/core/transform/generation/failedGenerationEnvironmentChanged.js +2 -2
  66. package/lib/core/transform/generation/failedGenerationEnvironmentChanged.js.map +1 -1
  67. package/lib/core/transform/generation/failedGenerationEnvironmentChanged.mjs +2 -2
  68. package/lib/core/transform/generation/failedGenerationEnvironmentChanged.mjs.map +1 -1
  69. package/lib/core/transform/generation/selectTransformAttemptDisposition.d.cts +3 -1
  70. package/lib/core/transform/generation/selectTransformAttemptDisposition.d.mts +3 -1
  71. package/lib/core/transform/generation/selectTransformAttemptDisposition.d.ts +3 -1
  72. package/lib/core/transform/generation/selectTransformAttemptDisposition.js +3 -1
  73. package/lib/core/transform/generation/selectTransformAttemptDisposition.js.map +1 -1
  74. package/lib/core/transform/generation/selectTransformAttemptDisposition.mjs +3 -1
  75. package/lib/core/transform/generation/selectTransformAttemptDisposition.mjs.map +1 -1
  76. package/lib/core/transform/generation/transformProject.d.cts +9 -7
  77. package/lib/core/transform/generation/transformProject.d.mts +9 -7
  78. package/lib/core/transform/generation/transformProject.d.ts +9 -7
  79. package/lib/core/transform/generation/transformProject.js +14 -9
  80. package/lib/core/transform/generation/transformProject.js.map +1 -1
  81. package/lib/core/transform/generation/transformProject.mjs +14 -9
  82. package/lib/core/transform/generation/transformProject.mjs.map +1 -1
  83. package/lib/core/transform/inputs/pluginSourceFilesDigest.d.cts +9 -3
  84. package/lib/core/transform/inputs/pluginSourceFilesDigest.d.mts +9 -3
  85. package/lib/core/transform/inputs/pluginSourceFilesDigest.d.ts +9 -3
  86. package/lib/core/transform/inputs/pluginSourceFilesDigest.js +10 -4
  87. package/lib/core/transform/inputs/pluginSourceFilesDigest.js.map +1 -1
  88. package/lib/core/transform/inputs/pluginSourceFilesDigest.mjs +11 -5
  89. package/lib/core/transform/inputs/pluginSourceFilesDigest.mjs.map +1 -1
  90. package/lib/core/transform/inputs/pluginSourceHolds.d.cts +4 -2
  91. package/lib/core/transform/inputs/pluginSourceHolds.d.mts +4 -2
  92. package/lib/core/transform/inputs/pluginSourceHolds.d.ts +4 -2
  93. package/lib/core/transform/inputs/pluginSourceHolds.js +9 -4
  94. package/lib/core/transform/inputs/pluginSourceHolds.js.map +1 -1
  95. package/lib/core/transform/inputs/pluginSourceHolds.mjs +9 -4
  96. package/lib/core/transform/inputs/pluginSourceHolds.mjs.map +1 -1
  97. package/lib/core/transform/inputs/pluginSourceState.d.cts +3 -1
  98. package/lib/core/transform/inputs/pluginSourceState.d.mts +3 -1
  99. package/lib/core/transform/inputs/pluginSourceState.d.ts +3 -1
  100. package/lib/core/transform/inputs/pluginSourceState.js +8 -3
  101. package/lib/core/transform/inputs/pluginSourceState.js.map +1 -1
  102. package/lib/core/transform/inputs/pluginSourceState.mjs +8 -3
  103. package/lib/core/transform/inputs/pluginSourceState.mjs.map +1 -1
  104. package/lib/core/transform/inputs/preparePluginBuildEnvironments.d.cts +18 -5
  105. package/lib/core/transform/inputs/preparePluginBuildEnvironments.d.mts +18 -5
  106. package/lib/core/transform/inputs/preparePluginBuildEnvironments.d.ts +18 -5
  107. package/lib/core/transform/inputs/preparePluginBuildEnvironments.js +53 -12
  108. package/lib/core/transform/inputs/preparePluginBuildEnvironments.js.map +1 -1
  109. package/lib/core/transform/inputs/preparePluginBuildEnvironments.mjs +53 -12
  110. package/lib/core/transform/inputs/preparePluginBuildEnvironments.mjs.map +1 -1
  111. package/lib/core/transform/tracker/broker/WatchBroker.d.cts +14 -4
  112. package/lib/core/transform/tracker/broker/WatchBroker.d.mts +14 -4
  113. package/lib/core/transform/tracker/broker/WatchBroker.d.ts +14 -4
  114. package/lib/core/transform/tracker/broker/WatchBrokerTransport.d.cts +63 -0
  115. package/lib/core/transform/tracker/broker/WatchBrokerTransport.d.mts +63 -0
  116. package/lib/core/transform/tracker/broker/WatchBrokerTransport.d.ts +63 -0
  117. package/lib/core/transform/tracker/broker/WatchBrokerTransport.js +89 -0
  118. package/lib/core/transform/tracker/broker/WatchBrokerTransport.js.map +1 -0
  119. package/lib/core/transform/tracker/broker/WatchBrokerTransport.mjs +89 -0
  120. package/lib/core/transform/tracker/broker/WatchBrokerTransport.mjs.map +1 -0
  121. package/lib/core/transform/tracker/broker/drainWatchBroker.d.cts +8 -8
  122. package/lib/core/transform/tracker/broker/drainWatchBroker.d.mts +8 -8
  123. package/lib/core/transform/tracker/broker/drainWatchBroker.d.ts +8 -8
  124. package/lib/core/transform/tracker/broker/drainWatchBroker.js +12 -13
  125. package/lib/core/transform/tracker/broker/drainWatchBroker.js.map +1 -1
  126. package/lib/core/transform/tracker/broker/drainWatchBroker.mjs +12 -13
  127. package/lib/core/transform/tracker/broker/drainWatchBroker.mjs.map +1 -1
  128. package/lib/core/transform/tracker/broker/getWatchBroker.d.cts +18 -15
  129. package/lib/core/transform/tracker/broker/getWatchBroker.d.mts +18 -15
  130. package/lib/core/transform/tracker/broker/getWatchBroker.d.ts +18 -15
  131. package/lib/core/transform/tracker/broker/getWatchBroker.js +87 -17
  132. package/lib/core/transform/tracker/broker/getWatchBroker.js.map +1 -1
  133. package/lib/core/transform/tracker/broker/getWatchBroker.mjs +87 -17
  134. package/lib/core/transform/tracker/broker/getWatchBroker.mjs.map +1 -1
  135. package/lib/core/transform/tracker/broker/openBrokeredWatch.d.cts +5 -5
  136. package/lib/core/transform/tracker/broker/openBrokeredWatch.d.mts +5 -5
  137. package/lib/core/transform/tracker/broker/openBrokeredWatch.d.ts +5 -5
  138. package/lib/core/transform/tracker/broker/openBrokeredWatch.js +11 -14
  139. package/lib/core/transform/tracker/broker/openBrokeredWatch.js.map +1 -1
  140. package/lib/core/transform/tracker/broker/openBrokeredWatch.mjs +11 -14
  141. package/lib/core/transform/tracker/broker/openBrokeredWatch.mjs.map +1 -1
  142. package/lib/core/transform/tracker/broker/usesWatchBroker.d.cts +7 -7
  143. package/lib/core/transform/tracker/broker/usesWatchBroker.d.mts +7 -7
  144. package/lib/core/transform/tracker/broker/usesWatchBroker.d.ts +7 -7
  145. package/lib/core/transform/tracker/broker/usesWatchBroker.js +7 -7
  146. package/lib/core/transform/tracker/broker/usesWatchBroker.mjs +7 -7
  147. package/lib/core/transform/tracker/broker/watchBrokerSource.d.cts +9 -10
  148. package/lib/core/transform/tracker/broker/watchBrokerSource.d.mts +9 -10
  149. package/lib/core/transform/tracker/broker/watchBrokerSource.d.ts +9 -10
  150. package/lib/core/transform/tracker/broker/watchBrokerSource.js +10 -11
  151. package/lib/core/transform/tracker/broker/watchBrokerSource.js.map +1 -1
  152. package/lib/core/transform/tracker/broker/watchBrokerSource.mjs +10 -11
  153. package/lib/core/transform/tracker/broker/watchBrokerSource.mjs.map +1 -1
  154. package/lib/core/transform/transformTtsc.d.cts +7 -4
  155. package/lib/core/transform/transformTtsc.d.mts +7 -4
  156. package/lib/core/transform/transformTtsc.d.ts +7 -4
  157. package/lib/core/transform/transformTtsc.js +38 -93
  158. package/lib/core/transform/transformTtsc.js.map +1 -1
  159. package/lib/core/transform/transformTtsc.mjs +38 -93
  160. package/lib/core/transform/transformTtsc.mjs.map +1 -1
  161. package/lib/core/transform/validation/TtscGenerationProof.d.cts +105 -0
  162. package/lib/core/transform/validation/TtscGenerationProof.d.mts +105 -0
  163. package/lib/core/transform/validation/TtscGenerationProof.d.ts +105 -0
  164. package/lib/core/transform/validation/TtscGenerationProof.js +149 -0
  165. package/lib/core/transform/validation/TtscGenerationProof.js.map +1 -0
  166. package/lib/core/transform/validation/TtscGenerationProof.mjs +149 -0
  167. package/lib/core/transform/validation/TtscGenerationProof.mjs.map +1 -0
  168. package/lib/core/transform/validation/captureUniversalHostInputValidation.js +2 -2
  169. package/lib/core/transform/validation/captureUniversalHostInputValidation.js.map +1 -1
  170. package/lib/core/transform/validation/captureUniversalHostInputValidation.mjs +2 -2
  171. package/lib/core/transform/validation/captureUniversalHostInputValidation.mjs.map +1 -1
  172. package/lib/core/transform/validation/matchesCachedSource.d.cts +18 -15
  173. package/lib/core/transform/validation/matchesCachedSource.d.mts +18 -15
  174. package/lib/core/transform/validation/matchesCachedSource.d.ts +18 -15
  175. package/lib/core/transform/validation/matchesCachedSource.js +28 -22
  176. package/lib/core/transform/validation/matchesCachedSource.js.map +1 -1
  177. package/lib/core/transform/validation/matchesCachedSource.mjs +28 -22
  178. package/lib/core/transform/validation/matchesCachedSource.mjs.map +1 -1
  179. package/lib/core/transform/validation/matchesCompleteInputSnapshot.d.cts +3 -2
  180. package/lib/core/transform/validation/matchesCompleteInputSnapshot.d.mts +3 -2
  181. package/lib/core/transform/validation/matchesCompleteInputSnapshot.d.ts +3 -2
  182. package/lib/core/transform/validation/matchesCompleteInputSnapshot.js +4 -4
  183. package/lib/core/transform/validation/matchesCompleteInputSnapshot.js.map +1 -1
  184. package/lib/core/transform/validation/matchesCompleteInputSnapshot.mjs +4 -4
  185. package/lib/core/transform/validation/matchesCompleteInputSnapshot.mjs.map +1 -1
  186. package/lib/core/transform/validation/matchesNarrowPersistentInputs.d.cts +2 -1
  187. package/lib/core/transform/validation/matchesNarrowPersistentInputs.d.mts +2 -1
  188. package/lib/core/transform/validation/matchesNarrowPersistentInputs.d.ts +2 -1
  189. package/lib/core/transform/validation/matchesNarrowPersistentInputs.js +2 -2
  190. package/lib/core/transform/validation/matchesNarrowPersistentInputs.js.map +1 -1
  191. package/lib/core/transform/validation/matchesNarrowPersistentInputs.mjs +2 -2
  192. package/lib/core/transform/validation/matchesNarrowPersistentInputs.mjs.map +1 -1
  193. package/lib/core/transform/validation/matchesUniversalHostInputTrees.d.cts +3 -2
  194. package/lib/core/transform/validation/matchesUniversalHostInputTrees.d.mts +3 -2
  195. package/lib/core/transform/validation/matchesUniversalHostInputTrees.d.ts +3 -2
  196. package/lib/core/transform/validation/matchesUniversalHostInputTrees.js +7 -5
  197. package/lib/core/transform/validation/matchesUniversalHostInputTrees.js.map +1 -1
  198. package/lib/core/transform/validation/matchesUniversalHostInputTrees.mjs +7 -5
  199. package/lib/core/transform/validation/matchesUniversalHostInputTrees.mjs.map +1 -1
  200. package/lib/core/transform/validation/matchesUniversalHostInputs.d.cts +3 -2
  201. package/lib/core/transform/validation/matchesUniversalHostInputs.d.mts +3 -2
  202. package/lib/core/transform/validation/matchesUniversalHostInputs.d.ts +3 -2
  203. package/lib/core/transform/validation/matchesUniversalHostInputs.js +5 -5
  204. package/lib/core/transform/validation/matchesUniversalHostInputs.js.map +1 -1
  205. package/lib/core/transform/validation/matchesUniversalHostInputs.mjs +5 -5
  206. package/lib/core/transform/validation/matchesUniversalHostInputs.mjs.map +1 -1
  207. package/lib/core/transform/validation/nativeInputPredicatesHold.d.cts +5 -4
  208. package/lib/core/transform/validation/nativeInputPredicatesHold.d.mts +5 -4
  209. package/lib/core/transform/validation/nativeInputPredicatesHold.d.ts +5 -4
  210. package/lib/core/transform/validation/nativeInputPredicatesHold.js +31 -12
  211. package/lib/core/transform/validation/nativeInputPredicatesHold.js.map +1 -1
  212. package/lib/core/transform/validation/nativeInputPredicatesHold.mjs +31 -12
  213. package/lib/core/transform/validation/nativeInputPredicatesHold.mjs.map +1 -1
  214. package/lib/core/transform/validation/notificationsProveProgramUnchanged.d.cts +2 -1
  215. package/lib/core/transform/validation/notificationsProveProgramUnchanged.d.mts +2 -1
  216. package/lib/core/transform/validation/notificationsProveProgramUnchanged.d.ts +2 -1
  217. package/lib/core/transform/validation/notificationsProveProgramUnchanged.js +2 -2
  218. package/lib/core/transform/validation/notificationsProveProgramUnchanged.js.map +1 -1
  219. package/lib/core/transform/validation/notificationsProveProgramUnchanged.mjs +2 -2
  220. package/lib/core/transform/validation/notificationsProveProgramUnchanged.mjs.map +1 -1
  221. package/lib/core/transform/watch/captureWatchInputBaseline.d.cts +4 -0
  222. package/lib/core/transform/watch/captureWatchInputBaseline.d.mts +4 -0
  223. package/lib/core/transform/watch/captureWatchInputBaseline.d.ts +4 -0
  224. package/lib/core/transform/watch/captureWatchInputBaseline.js +3 -0
  225. package/lib/core/transform/watch/captureWatchInputBaseline.js.map +1 -1
  226. package/lib/core/transform/watch/captureWatchInputBaseline.mjs +3 -0
  227. package/lib/core/transform/watch/captureWatchInputBaseline.mjs.map +1 -1
  228. package/lib/core/transform/watch/captureWatchInputBaselines.d.cts +2 -0
  229. package/lib/core/transform/watch/captureWatchInputBaselines.d.mts +2 -0
  230. package/lib/core/transform/watch/captureWatchInputBaselines.d.ts +2 -0
  231. package/lib/core/transform/watch/captureWatchInputBaselines.js +3 -1
  232. package/lib/core/transform/watch/captureWatchInputBaselines.js.map +1 -1
  233. package/lib/core/transform/watch/captureWatchInputBaselines.mjs +3 -1
  234. package/lib/core/transform/watch/captureWatchInputBaselines.mjs.map +1 -1
  235. package/lib/core/transform/watch/notifyWatchInputs.js +3 -0
  236. package/lib/core/transform/watch/notifyWatchInputs.js.map +1 -1
  237. package/lib/core/transform/watch/notifyWatchInputs.mjs +3 -0
  238. package/lib/core/transform/watch/notifyWatchInputs.mjs.map +1 -1
  239. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.d.cts +5 -2
  240. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.d.mts +5 -2
  241. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.d.ts +5 -2
  242. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.js +6 -3
  243. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.js.map +1 -1
  244. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.mjs +6 -3
  245. package/lib/core/transform/watch/watchInputEvidenceMatchesDisk.mjs.map +1 -1
  246. package/lib/core/turbopack/turbopack.js +2 -1
  247. package/lib/core/turbopack/turbopack.js.map +1 -1
  248. package/lib/core/turbopack/turbopack.mjs +2 -1
  249. package/lib/core/turbopack/turbopack.mjs.map +1 -1
  250. package/package.json +3 -3
  251. package/src/core/bridge/projectRecordMoved.ts +3 -1
  252. package/src/core/bun/bun.ts +8 -4
  253. package/src/core/observer/createInputObserver.ts +8 -5
  254. package/src/core/observer/openIsolatedRecursiveWatch.ts +11 -12
  255. package/src/core/transform/cache/TtscCachedProjectTransform.ts +13 -3
  256. package/src/core/transform/cache/selectCachedGenerationAction.ts +9 -1
  257. package/src/core/transform/deliverCachedTransform.ts +97 -0
  258. package/src/core/transform/envelope/selectDeclaredProjectInputKeys.ts +5 -2
  259. package/src/core/transform/envelope/selectExternalInputPaths.ts +7 -7
  260. package/src/core/transform/filesystem/TtscTransformFilesystemOperations.ts +15 -12
  261. package/src/core/transform/generation/captureFailedGenerationInputStates.ts +1 -0
  262. package/src/core/transform/generation/captureTransformGeneration.ts +6 -1
  263. package/src/core/transform/generation/failedGenerationEnvironmentChanged.ts +12 -2
  264. package/src/core/transform/generation/selectTransformAttemptDisposition.ts +3 -1
  265. package/src/core/transform/generation/transformProject.ts +13 -9
  266. package/src/core/transform/inputs/pluginSourceFilesDigest.ts +11 -4
  267. package/src/core/transform/inputs/pluginSourceHolds.ts +13 -3
  268. package/src/core/transform/inputs/pluginSourceState.ts +8 -2
  269. package/src/core/transform/inputs/preparePluginBuildEnvironments.ts +64 -11
  270. package/src/core/transform/tracker/broker/WatchBroker.ts +15 -4
  271. package/src/core/transform/tracker/broker/WatchBrokerTransport.ts +82 -0
  272. package/src/core/transform/tracker/broker/drainWatchBroker.ts +12 -13
  273. package/src/core/transform/tracker/broker/getWatchBroker.ts +89 -18
  274. package/src/core/transform/tracker/broker/openBrokeredWatch.ts +11 -14
  275. package/src/core/transform/tracker/broker/usesWatchBroker.ts +7 -7
  276. package/src/core/transform/tracker/broker/watchBrokerSource.ts +10 -11
  277. package/src/core/transform/transformTtsc.ts +38 -92
  278. package/src/core/transform/validation/TtscGenerationProof.ts +201 -0
  279. package/src/core/transform/validation/captureUniversalHostInputValidation.ts +2 -1
  280. package/src/core/transform/validation/matchesCachedSource.ts +27 -21
  281. package/src/core/transform/validation/matchesCompleteInputSnapshot.ts +5 -3
  282. package/src/core/transform/validation/matchesNarrowPersistentInputs.ts +3 -1
  283. package/src/core/transform/validation/matchesUniversalHostInputTrees.ts +8 -3
  284. package/src/core/transform/validation/matchesUniversalHostInputs.ts +6 -4
  285. package/src/core/transform/validation/nativeInputPredicatesHold.ts +36 -14
  286. package/src/core/transform/validation/notificationsProveProgramUnchanged.ts +3 -1
  287. package/src/core/transform/watch/captureWatchInputBaseline.ts +4 -0
  288. package/src/core/transform/watch/captureWatchInputBaselines.ts +7 -1
  289. package/src/core/transform/watch/notifyWatchInputs.ts +3 -0
  290. package/src/core/transform/watch/watchInputEvidenceMatchesDisk.ts +12 -2
  291. package/src/core/turbopack/turbopack.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"captureUniversalHostInputValidation.mjs","sources":["../../../../src/core/transform/validation/captureUniversalHostInputValidation.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAyBA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACG,SAAU,mCAAmC,CACjD,MAAkC,EAClC,WAAmB,EAAA;IAQnB,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC;AAClD,IAAA,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC;AACxC,IAAA,MAAM,QAAQ,GAAG,6BAA6B,EAAE;AAChD,IAAA,MAAM,UAAU,GAA4B;QAC1C,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,KAAK,EAAE,IAAI,GAAG,EAAE;KACjB;AACD,IAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM;AAC5B,IAAA,MAAM,gBAAgB,GACpB,MAAM,CAAC,IAAI,KAAK,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,eAAe;AAClE,IAAA,MAAM,mBAAmB,GACvB,MAAM,CAAC,IAAI,KAAK,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,kBAAkB;AACrE,IAAA,MAAM,aAAa,GACjB,MAAM,CAAC,IAAI,KAAK,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,sBAAsB;AACzE,IAAA,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,oBAAoB,KAAK,KAAK,EAAE;QACxE,4BAA4B,CAAC,QAAQ,EAAE;AACrC,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,IAAI,EAAE,yBAAyB;AAC/B,YAAA,MAAM,EAAE,qBAAqB;AAC9B,SAAA,CAAC;IACJ;AACA,IAAA,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE;QACjE,4BAA4B,CAAC,QAAQ,EAAE;AACrC,YAAA,MAAM,EAAE,MAAM;YACd,IAAI,EACF,MAAM,KAAK;AACT,kBAAE;AACF,kBAAE,uBAAuB;AAC7B,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,IAAI,EAAE,KAAK;AACZ,SAAA,CAAC;IACJ;AACA,IAAA,KAAK,MAAM,KAAK,IAAI,0BAA0B,CAAC;QAC7C,UAAU;QACV,WAAW,EAAE,MAAM,CAAC,WAAW;AAC/B,QAAA,MAAM,EACJ,MAAM,CAAC,IAAI,KAAK;AACd,cAAE;AACF,cAAE;AACE,gBAAA,GAAG,MAAM;AACT,gBAAA,UAAU,EAAE;oBACV,GAAG,IAAI,GAAG,CAAC;AACT,wBAAA,IAAI,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5B,wBAAA,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC;AACtC,wBAAA,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC;AACzC,wBAAA,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;qBACpC,CAAC;AACH,iBAAA;AACF,aAAA;QACP,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;AAC5C,KAAA,CAAC,EAAE;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACzC,MAAM,WAAW,GACf,aAAa,GAAG,aAAa,CAAC,KAAK,yBAAyB;AAC9D,QAAA,MAAM,QAAQ,GAAG,gBAAgB,GAAG,aAAa,CAAC;;;;QAIlD,IAAI,QAAQ,GAAG,KAAK;AACpB,QAAA,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,WAAW,EAAE;gBAChB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;gBACzC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE;oBACnC,4BAA4B,CAAC,QAAQ,EAAE;AACrC,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,IAAI,EAAE,uBAAuB;AAC7B,wBAAA,IAAI,EAAE,KAAK;AACZ,qBAAA,CAAC;oBACF;gBACF;;;;;YAKF;QACF;aAAO;YACL,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC;AACrD,YAAA,IAAI,QAAQ,KAAK,OAAO,EAAE;gBACxB,4BAA4B,CAAC,QAAQ,EAAE;AACrC,oBAAA,MAAM,EAAE,MAAM;AACd,oBAAA,IAAI,EAAE,iBAAiB;AACvB,oBAAA,IAAI,EAAE,KAAK;AACZ,iBAAA,CAAC;gBACF;YACF;;;;AAIA,YAAA,QAAQ,GAAG,OAAO,KAAK,IAAI;QAC7B;AACA,QAAA,IAAI,mBAAmB,KAAK,SAAS,EAAE;AACrC,YAAA,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACnC,mBAAmB,EACnB,aAAa,CACd;AACD,gBAAA,CAAC,qBAAqB,CACpB,mBAAmB,CAAC,aAAa,CAAC,EAClC,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,EACpC,KAAK,CAAC,eAAe,CACtB,EACD;gBACA,4BAA4B,CAAC,QAAQ,EAAE;AACrC,oBAAA,MAAM,EAAE,MAAM;AACd,oBAAA,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CACxC,mBAAmB,EACnB,aAAa;AAEb,0BAAE;AACF,0BAAE;AACA,8BAAE;AACF,8BAAE,wBAAwB;AAC9B,oBAAA,IAAI,EAAE,KAAK;AACZ,iBAAA,CAAC;gBACF;YACF;QACF;;;AAGA,QAAA,IAAI,WAAW;YAAE;AACjB,QAAA,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC;QACvD,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;YACxC,4BAA4B,CAAC,QAAQ,EAAE;AACrC,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,IAAI,EAAE,mBAAmB;AACzB,gBAAA,IAAI,EAAE,KAAK;AACZ,aAAA,CAAC;YACF;QACF;QACA,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC;AACvD,QAAA,IAAI,MAAM,EAAE,SAAS,KAAK,KAAK,EAAE;YAC/B,4BAA4B,CAAC,QAAQ,EAAE;AACrC,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,IAAI,EAAE,2BAA2B;AACjC,gBAAA,IAAI,EAAE,KAAK;AACZ,aAAA,CAAC;YACF;QACF;AACA,QAAA,IAAI,MAAM,KAAK,SAAS,EAAE;;;;YAIxB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAC1C,gBAAA,IAAI,EAAE,KAAK;gBACX,QAAQ;AACR,gBAAA,QAAQ,EAAE,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC;;;;;AAK9C,gBAAA,SAAS,EAAE,QAAQ,IAAI,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,SAAS;AACvE,aAAA,CAAC;YACF;QACF;QACA,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC;AACjD,QAAA,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE;YAC/B,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC;AACnE,YAAA,IAAI,SAAS,KAAK,SAAS,EAAE;gBAC3B,4BAA4B,CAAC,QAAQ,EAAE;AACrC,oBAAA,MAAM,EAAE,MAAM;AACd,oBAAA,IAAI,EAAE,8BAA8B;oBACpC,IAAI,EAAE,KAAK,CAAC,OAAO;AACpB,iBAAA,CAAC;gBACF;YACF;;;;;;;AAOA,YAAA,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACnD,YAAA,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBAClD,IAAI,EAAE,KAAK,CAAC,OAAO;AACnB,gBAAA,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC;gBACtD,SAAS;AACT,gBAAA,MAAM,EAAE,IAAI;AACb,aAAA,CAAC;YACF;QACF;AACA,QAAA,MAAM,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;AAC1E,QAAA,IAAI,aAAa,KAAK,SAAS,EAAE;;;YAG/B,IAAI,MAAM,GAAG,KAAK;AAClB,YAAA,IAAI;AACF,gBAAA,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;YACxB;YAAE,OAAO,KAAK,EAAE;AACd,gBAAA,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI;gBAClD,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS;YAClD;AACA,YAAA,IAAI,MAAM;AAAE,gBAAA,UAAU,CAAC,aAAc,CAAC,GAAG,CAAC,aAAa,CAAC;iBACnD;gBACH,4BAA4B,CAAC,QAAQ,EAAE;AACrC,oBAAA,MAAM,EAAE,MAAM;AACd,oBAAA,IAAI,EAAE,yBAAyB;oBAC/B,IAAI,EAAE,KAAK,CAAC,SAAS;AACtB,iBAAA,CAAC;YACJ;YACA;QACF;;;;AAIA,QAAA,MAAM,OAAO,GACX,CAAC,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,MAAM;cAC1C,IAAI,CAAC;AACP,cAAE,IAAI,CAAC,KAAK;QAChB,IAAI,MAAM,GAAG,KAAK;AAClB,QAAA,IAAI;AACF,YAAA,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI;YAClD,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS;QAClD;QACA,IAAI,CAAC,MAAM,EAAE;YACX,4BAA4B,CAAC,QAAQ,EAAE;AACrC,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,IAAI,EAAE,2BAA2B;AACjC,gBAAA,IAAI,EAAE,KAAK;AACZ,aAAA,CAAC;YACF;QACF;AACA,QAAA,IAAI,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;AACnD,QAAA,IAAI,KAAK,KAAK,SAAS,EAAE;AACvB,YAAA,KAAK,GAAG,IAAI,GAAG,EAAU;YACzB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC;QAChD;;AAEA,QAAA,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IACvB;;;;AAIA,IAAA,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;;;;QAIzE,MAAM,QAAQ,GAAG,mCAAmC,CAAC,MAAM,CAAC,MAAM,CAAC;QACnE,MAAM,WAAW,GAAG;AAClB,cAAE,8BAA8B,CAAC,MAAM,CAAC,SAAS;AACjD,cAAE,6BAA6B,CAAC,SAAS,CAAC;QAC5C,IACE,WAAW,KAAK,SAAS;YACzB,CAAC,iBAAiB,CAChB,SAAS,EACT,MAAM,EACN,UAAU,EACV,QAAQ,GAAG,EAAE,WAAW,EAAE,GAAG,SAAS,CACvC,EACD;YACA,4BAA4B,CAAC,QAAQ,EAAE;AACrC,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,IAAI,EAAE,SAAS;AAChB,aAAA,CAAC;YACF;QACF;AACA,QAAA,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACjC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;AACvC,QAAA,CAAC,UAAU,CAAC,gBAAgB,KAAK,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC;IACzE;AACA,IAAA,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE;QAC3D,OAAO,EAAE,QAAQ,EAAE;IACrB;AACA,IAAA,MAAM,CAAC,mBAAmB,GAAG,UAAU;AACvC,IAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE;AACjC;;;;"}
1
+ {"version":3,"file":"captureUniversalHostInputValidation.mjs","sources":["../../../../src/core/transform/validation/captureUniversalHostInputValidation.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTransform.cjs";
2
+ import { TtscGenerationProof } from "./TtscGenerationProof.cjs";
2
3
  /**
3
4
  * Validate a cached project transform against the current on-disk project
4
5
  * state.
@@ -8,17 +9,19 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
8
9
  * no source comparison. A cache with a delivery epoch can use that comparison
9
10
  * alone for a stable generation's first delivery of each module in the current
10
11
  * pass, once the pass's own first delivery has proven the whole generation
11
- * still matches the filesystem. An incomplete generation may not take this
12
- * shortcut: otherwise a sibling output captured during a filesystem race could
13
- * still be served once. Later graph-bearing requests validate the file's
14
- * derived input set and project membership. A failed result is a diagnostic of
15
- * the whole loaded program, so its repair cannot be proved by one delivered
16
- * output's dependency closure. Failed and graph-free envelopes conservatively
17
- * validate the complete project and out-of-walk snapshots, reusing qualified
18
- * signatures. A mismatch rejects this generation for the delivery; its caller
19
- * chooses replacement or capture. Delivered text that differs while the disk
20
- * still holds the bytes the generation compiled is not one: it is reported and
21
- * served, since the compile read the disk (samchon/ttsc#1394).
12
+ * still matches the filesystem. Incomplete generations cannot claim complete
13
+ * proof. A coherent local success admitted only because its observer was
14
+ * unavailable may share first deliveries in its exact nonwatching pass through
15
+ * TtscGenerationProof; it cannot cross passes or earn persistent authority.
16
+ * Later graph-bearing requests validate the file's derived input set and
17
+ * project membership. A failed result is a diagnostic of the whole loaded
18
+ * program, so its repair cannot be proved by one delivered output's dependency
19
+ * closure. Failed and graph-free envelopes conservatively validate the complete
20
+ * project and out-of-walk snapshots, reusing qualified signatures. A mismatch
21
+ * rejects this generation for the delivery; its caller chooses replacement or
22
+ * capture. Delivered text that differs while the disk still holds the bytes the
23
+ * generation compiled is not one: it is reported and served, since the compile
24
+ * read the disk (samchon/ttsc#1394).
22
25
  *
23
26
  * Its place in the adapter's invalidation model, and the units beside it, are
24
27
  * mapped in the maintainer page
@@ -26,7 +29,7 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
26
29
  *
27
30
  * @evidence contracts/common.md#principled-implementation Delivered source, generation completeness, pass identity and notification authority choose between first-delivery proof, derived-input validation and complete snapshots; divergent editor text never substitutes for compiler disk inputs.
28
31
  * @evidence contracts/common.md#clear-and-simple-design This admission boundary chooses the required proof while dedicated validators own membership, universal inputs and content comparisons.
29
- * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot earn a first-delivery shortcut; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
32
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot claim complete snapshot authority; only separately admitted coherent local success can share first deliveries of its exact nonwatching pass; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
30
33
  * @evidence contracts/common.md#meaningful-documentation Separate native paragraphs explain disk-versus-delivered authority, epoch qualification, fallback and related maintainer guidance before tags.
31
34
  * @evidence contracts/portability.md#os-neutral-implementation Project membership and path identity use recorded compiler case policy and injected native operations; OS names do not certify case sensitivity or watcher capabilities.
32
35
  * @evidence contracts/performance.md#bound-retention-and-release-resources
@@ -36,13 +39,13 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
36
39
  * while validators replace current signature/directory witnesses. No new
37
40
  * independent handle or historical epoch collection is acquired here.
38
41
  * @evidence contracts/performance.md#efficient-algorithms Every admission first replays all generation-owned typed config predicates; this mandatory cost includes native queries, file bytes or directory membership independently of watcher/epoch qualification.
39
- * Fresh-only rejection precedes native identity work. Baseline-bearing paths
42
+ * Unsupported fresh-only rejection precedes source baseline work. Baseline-bearing paths
40
43
  * hash delivered text and divergent paths read/hash host bytes; unrelated
41
44
  * absent outputs can return before that hash after an initial K-output index.
42
45
  * Epoch-qualified first checkpoints share the complete proof. Other paths
43
46
  * pay derived-input or complete project/external/universal proof costs,
44
47
  * including path/byte populations, native observations and clock refresh.
45
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
48
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay remains mandatory for every delivery and shares only the current synchronous transaction with nested validators; immutable membership is indexed separately. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
46
49
  */
47
50
  export declare function matchesCachedSource(
48
51
  /** Generation retaining recorded baselines and distinct proof authority. */
@@ -52,4 +55,4 @@ file: string,
52
55
  /** Delivered text, compared with the recorded baseline rather than adopted. */
53
56
  source: string,
54
57
  /** Current host pass, or undefined for persistent input validation. */
55
- epoch: number | undefined): boolean;
58
+ epoch: number | undefined, proof?: TtscGenerationProof.Transaction): boolean;
@@ -1,4 +1,5 @@
1
1
  import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTransform.mjs";
2
+ import { TtscGenerationProof } from "./TtscGenerationProof.mjs";
2
3
  /**
3
4
  * Validate a cached project transform against the current on-disk project
4
5
  * state.
@@ -8,17 +9,19 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
8
9
  * no source comparison. A cache with a delivery epoch can use that comparison
9
10
  * alone for a stable generation's first delivery of each module in the current
10
11
  * pass, once the pass's own first delivery has proven the whole generation
11
- * still matches the filesystem. An incomplete generation may not take this
12
- * shortcut: otherwise a sibling output captured during a filesystem race could
13
- * still be served once. Later graph-bearing requests validate the file's
14
- * derived input set and project membership. A failed result is a diagnostic of
15
- * the whole loaded program, so its repair cannot be proved by one delivered
16
- * output's dependency closure. Failed and graph-free envelopes conservatively
17
- * validate the complete project and out-of-walk snapshots, reusing qualified
18
- * signatures. A mismatch rejects this generation for the delivery; its caller
19
- * chooses replacement or capture. Delivered text that differs while the disk
20
- * still holds the bytes the generation compiled is not one: it is reported and
21
- * served, since the compile read the disk (samchon/ttsc#1394).
12
+ * still matches the filesystem. Incomplete generations cannot claim complete
13
+ * proof. A coherent local success admitted only because its observer was
14
+ * unavailable may share first deliveries in its exact nonwatching pass through
15
+ * TtscGenerationProof; it cannot cross passes or earn persistent authority.
16
+ * Later graph-bearing requests validate the file's derived input set and
17
+ * project membership. A failed result is a diagnostic of the whole loaded
18
+ * program, so its repair cannot be proved by one delivered output's dependency
19
+ * closure. Failed and graph-free envelopes conservatively validate the complete
20
+ * project and out-of-walk snapshots, reusing qualified signatures. A mismatch
21
+ * rejects this generation for the delivery; its caller chooses replacement or
22
+ * capture. Delivered text that differs while the disk still holds the bytes the
23
+ * generation compiled is not one: it is reported and served, since the compile
24
+ * read the disk (samchon/ttsc#1394).
22
25
  *
23
26
  * Its place in the adapter's invalidation model, and the units beside it, are
24
27
  * mapped in the maintainer page
@@ -26,7 +29,7 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
26
29
  *
27
30
  * @evidence contracts/common.md#principled-implementation Delivered source, generation completeness, pass identity and notification authority choose between first-delivery proof, derived-input validation and complete snapshots; divergent editor text never substitutes for compiler disk inputs.
28
31
  * @evidence contracts/common.md#clear-and-simple-design This admission boundary chooses the required proof while dedicated validators own membership, universal inputs and content comparisons.
29
- * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot earn a first-delivery shortcut; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
32
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot claim complete snapshot authority; only separately admitted coherent local success can share first deliveries of its exact nonwatching pass; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
30
33
  * @evidence contracts/common.md#meaningful-documentation Separate native paragraphs explain disk-versus-delivered authority, epoch qualification, fallback and related maintainer guidance before tags.
31
34
  * @evidence contracts/portability.md#os-neutral-implementation Project membership and path identity use recorded compiler case policy and injected native operations; OS names do not certify case sensitivity or watcher capabilities.
32
35
  * @evidence contracts/performance.md#bound-retention-and-release-resources
@@ -36,13 +39,13 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
36
39
  * while validators replace current signature/directory witnesses. No new
37
40
  * independent handle or historical epoch collection is acquired here.
38
41
  * @evidence contracts/performance.md#efficient-algorithms Every admission first replays all generation-owned typed config predicates; this mandatory cost includes native queries, file bytes or directory membership independently of watcher/epoch qualification.
39
- * Fresh-only rejection precedes native identity work. Baseline-bearing paths
42
+ * Unsupported fresh-only rejection precedes source baseline work. Baseline-bearing paths
40
43
  * hash delivered text and divergent paths read/hash host bytes; unrelated
41
44
  * absent outputs can return before that hash after an initial K-output index.
42
45
  * Epoch-qualified first checkpoints share the complete proof. Other paths
43
46
  * pay derived-input or complete project/external/universal proof costs,
44
47
  * including path/byte populations, native observations and clock refresh.
45
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
48
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay remains mandatory for every delivery and shares only the current synchronous transaction with nested validators; immutable membership is indexed separately. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
46
49
  */
47
50
  export declare function matchesCachedSource(
48
51
  /** Generation retaining recorded baselines and distinct proof authority. */
@@ -52,4 +55,4 @@ file: string,
52
55
  /** Delivered text, compared with the recorded baseline rather than adopted. */
53
56
  source: string,
54
57
  /** Current host pass, or undefined for persistent input validation. */
55
- epoch: number | undefined): boolean;
58
+ epoch: number | undefined, proof?: TtscGenerationProof.Transaction): boolean;
@@ -1,4 +1,5 @@
1
1
  import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTransform";
2
+ import { TtscGenerationProof } from "./TtscGenerationProof";
2
3
  /**
3
4
  * Validate a cached project transform against the current on-disk project
4
5
  * state.
@@ -8,17 +9,19 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
8
9
  * no source comparison. A cache with a delivery epoch can use that comparison
9
10
  * alone for a stable generation's first delivery of each module in the current
10
11
  * pass, once the pass's own first delivery has proven the whole generation
11
- * still matches the filesystem. An incomplete generation may not take this
12
- * shortcut: otherwise a sibling output captured during a filesystem race could
13
- * still be served once. Later graph-bearing requests validate the file's
14
- * derived input set and project membership. A failed result is a diagnostic of
15
- * the whole loaded program, so its repair cannot be proved by one delivered
16
- * output's dependency closure. Failed and graph-free envelopes conservatively
17
- * validate the complete project and out-of-walk snapshots, reusing qualified
18
- * signatures. A mismatch rejects this generation for the delivery; its caller
19
- * chooses replacement or capture. Delivered text that differs while the disk
20
- * still holds the bytes the generation compiled is not one: it is reported and
21
- * served, since the compile read the disk (samchon/ttsc#1394).
12
+ * still matches the filesystem. Incomplete generations cannot claim complete
13
+ * proof. A coherent local success admitted only because its observer was
14
+ * unavailable may share first deliveries in its exact nonwatching pass through
15
+ * TtscGenerationProof; it cannot cross passes or earn persistent authority.
16
+ * Later graph-bearing requests validate the file's derived input set and
17
+ * project membership. A failed result is a diagnostic of the whole loaded
18
+ * program, so its repair cannot be proved by one delivered output's dependency
19
+ * closure. Failed and graph-free envelopes conservatively validate the complete
20
+ * project and out-of-walk snapshots, reusing qualified signatures. A mismatch
21
+ * rejects this generation for the delivery; its caller chooses replacement or
22
+ * capture. Delivered text that differs while the disk still holds the bytes the
23
+ * generation compiled is not one: it is reported and served, since the compile
24
+ * read the disk (samchon/ttsc#1394).
22
25
  *
23
26
  * Its place in the adapter's invalidation model, and the units beside it, are
24
27
  * mapped in the maintainer page
@@ -26,7 +29,7 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
26
29
  *
27
30
  * @evidence contracts/common.md#principled-implementation Delivered source, generation completeness, pass identity and notification authority choose between first-delivery proof, derived-input validation and complete snapshots; divergent editor text never substitutes for compiler disk inputs.
28
31
  * @evidence contracts/common.md#clear-and-simple-design This admission boundary chooses the required proof while dedicated validators own membership, universal inputs and content comparisons.
29
- * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot earn a first-delivery shortcut; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
32
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot claim complete snapshot authority; only separately admitted coherent local success can share first deliveries of its exact nonwatching pass; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
30
33
  * @evidence contracts/common.md#meaningful-documentation Separate native paragraphs explain disk-versus-delivered authority, epoch qualification, fallback and related maintainer guidance before tags.
31
34
  * @evidence contracts/portability.md#os-neutral-implementation Project membership and path identity use recorded compiler case policy and injected native operations; OS names do not certify case sensitivity or watcher capabilities.
32
35
  * @evidence contracts/performance.md#bound-retention-and-release-resources
@@ -36,13 +39,13 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
36
39
  * while validators replace current signature/directory witnesses. No new
37
40
  * independent handle or historical epoch collection is acquired here.
38
41
  * @evidence contracts/performance.md#efficient-algorithms Every admission first replays all generation-owned typed config predicates; this mandatory cost includes native queries, file bytes or directory membership independently of watcher/epoch qualification.
39
- * Fresh-only rejection precedes native identity work. Baseline-bearing paths
42
+ * Unsupported fresh-only rejection precedes source baseline work. Baseline-bearing paths
40
43
  * hash delivered text and divergent paths read/hash host bytes; unrelated
41
44
  * absent outputs can return before that hash after an initial K-output index.
42
45
  * Epoch-qualified first checkpoints share the complete proof. Other paths
43
46
  * pay derived-input or complete project/external/universal proof costs,
44
47
  * including path/byte populations, native observations and clock refresh.
45
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
48
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay remains mandatory for every delivery and shares only the current synchronous transaction with nested validators; immutable membership is indexed separately. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
46
49
  */
47
50
  export declare function matchesCachedSource(
48
51
  /** Generation retaining recorded baselines and distinct proof authority. */
@@ -52,4 +55,4 @@ file: string,
52
55
  /** Delivered text, compared with the recorded baseline rather than adopted. */
53
56
  source: string,
54
57
  /** Current host pass, or undefined for persistent input validation. */
55
- epoch: number | undefined): boolean;
58
+ epoch: number | undefined, proof?: TtscGenerationProof.Transaction): boolean;
@@ -11,6 +11,7 @@ var pathIdentityKey = require('../filesystem/pathIdentityKey.js');
11
11
  var hostInputStateHash = require('../inputs/hostInputStateHash.js');
12
12
  var toProjectKey = require('../project/toProjectKey.js');
13
13
  var hashText = require('../utils/hashText.js');
14
+ var TtscGenerationProof = require('./TtscGenerationProof.js');
14
15
  var matchesCompleteInputSnapshot = require('./matchesCompleteInputSnapshot.js');
15
16
  var matchesNarrowPersistentInputs = require('./matchesNarrowPersistentInputs.js');
16
17
  var nativeInputPredicatesHold = require('./nativeInputPredicatesHold.js');
@@ -25,17 +26,19 @@ var notificationsProveProgramUnchanged = require('./notificationsProveProgramUnc
25
26
  * no source comparison. A cache with a delivery epoch can use that comparison
26
27
  * alone for a stable generation's first delivery of each module in the current
27
28
  * pass, once the pass's own first delivery has proven the whole generation
28
- * still matches the filesystem. An incomplete generation may not take this
29
- * shortcut: otherwise a sibling output captured during a filesystem race could
30
- * still be served once. Later graph-bearing requests validate the file's
31
- * derived input set and project membership. A failed result is a diagnostic of
32
- * the whole loaded program, so its repair cannot be proved by one delivered
33
- * output's dependency closure. Failed and graph-free envelopes conservatively
34
- * validate the complete project and out-of-walk snapshots, reusing qualified
35
- * signatures. A mismatch rejects this generation for the delivery; its caller
36
- * chooses replacement or capture. Delivered text that differs while the disk
37
- * still holds the bytes the generation compiled is not one: it is reported and
38
- * served, since the compile read the disk (samchon/ttsc#1394).
29
+ * still matches the filesystem. Incomplete generations cannot claim complete
30
+ * proof. A coherent local success admitted only because its observer was
31
+ * unavailable may share first deliveries in its exact nonwatching pass through
32
+ * TtscGenerationProof; it cannot cross passes or earn persistent authority.
33
+ * Later graph-bearing requests validate the file's derived input set and
34
+ * project membership. A failed result is a diagnostic of the whole loaded
35
+ * program, so its repair cannot be proved by one delivered output's dependency
36
+ * closure. Failed and graph-free envelopes conservatively validate the complete
37
+ * project and out-of-walk snapshots, reusing qualified signatures. A mismatch
38
+ * rejects this generation for the delivery; its caller chooses replacement or
39
+ * capture. Delivered text that differs while the disk still holds the bytes the
40
+ * generation compiled is not one: it is reported and served, since the compile
41
+ * read the disk (samchon/ttsc#1394).
39
42
  *
40
43
  * Its place in the adapter's invalidation model, and the units beside it, are
41
44
  * mapped in the maintainer page
@@ -43,7 +46,7 @@ var notificationsProveProgramUnchanged = require('./notificationsProveProgramUnc
43
46
  *
44
47
  * @evidence contracts/common.md#principled-implementation Delivered source, generation completeness, pass identity and notification authority choose between first-delivery proof, derived-input validation and complete snapshots; divergent editor text never substitutes for compiler disk inputs.
45
48
  * @evidence contracts/common.md#clear-and-simple-design This admission boundary chooses the required proof while dedicated validators own membership, universal inputs and content comparisons.
46
- * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot earn a first-delivery shortcut; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
49
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot claim complete snapshot authority; only separately admitted coherent local success can share first deliveries of its exact nonwatching pass; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
47
50
  * @evidence contracts/common.md#meaningful-documentation Separate native paragraphs explain disk-versus-delivered authority, epoch qualification, fallback and related maintainer guidance before tags.
48
51
  * @evidence contracts/portability.md#os-neutral-implementation Project membership and path identity use recorded compiler case policy and injected native operations; OS names do not certify case sensitivity or watcher capabilities.
49
52
  * @evidence contracts/performance.md#bound-retention-and-release-resources
@@ -53,13 +56,13 @@ var notificationsProveProgramUnchanged = require('./notificationsProveProgramUnc
53
56
  * while validators replace current signature/directory witnesses. No new
54
57
  * independent handle or historical epoch collection is acquired here.
55
58
  * @evidence contracts/performance.md#efficient-algorithms Every admission first replays all generation-owned typed config predicates; this mandatory cost includes native queries, file bytes or directory membership independently of watcher/epoch qualification.
56
- * Fresh-only rejection precedes native identity work. Baseline-bearing paths
59
+ * Unsupported fresh-only rejection precedes source baseline work. Baseline-bearing paths
57
60
  * hash delivered text and divergent paths read/hash host bytes; unrelated
58
61
  * absent outputs can return before that hash after an initial K-output index.
59
62
  * Epoch-qualified first checkpoints share the complete proof. Other paths
60
63
  * pay derived-input or complete project/external/universal proof costs,
61
64
  * including path/byte populations, native observations and clock refresh.
62
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
65
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay remains mandatory for every delivery and shares only the current synchronous transaction with nested validators; immutable membership is indexed separately. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
63
66
  */
64
67
  function matchesCachedSource(
65
68
  /** Generation retaining recorded baselines and distinct proof authority. */
@@ -69,10 +72,11 @@ file,
69
72
  /** Delivered text, compared with the recorded baseline rather than adopted. */
70
73
  source,
71
74
  /** Current host pass, or undefined for persistent input validation. */
72
- epoch) {
73
- if (!nativeInputPredicatesHold.nativeInputPredicatesHold(cached))
75
+ epoch, proof) {
76
+ if (!nativeInputPredicatesHold.nativeInputPredicatesHold(cached, proof))
74
77
  return false;
75
- if (cached.freshDeliveryOnly === true)
78
+ const pass = TtscGenerationProof.TtscGenerationProof.sharesPass(cached, file, epoch);
79
+ if (cached.freshDeliveryOnly === true && !pass)
76
80
  return false;
77
81
  const identities = envelopeDerivation.envelopeDerivation(cached).identityContext;
78
82
  const currentKey = toProjectKey.toProjectKey(cached.projectRoot, file, identities);
@@ -90,7 +94,7 @@ epoch) {
90
94
  if (!outputs.has(identity)) {
91
95
  // While the watchers prove the program unchanged, the module is still
92
96
  // outside it, and no walk is needed to say so (samchon/ttsc#1398).
93
- if (notificationsProveProgramUnchanged.notificationsProveProgramUnchanged(cached)) {
97
+ if (notificationsProveProgramUnchanged.notificationsProveProgramUnchanged(cached, proof)) {
94
98
  return true;
95
99
  }
96
100
  // Root discovery deliberately never hashed this unrelated module. Its
@@ -98,7 +102,7 @@ epoch) {
98
102
  // whole program must still be current before we reuse that absence: a
99
103
  // changed config or importer can bring this file into the next program.
100
104
  refreshFilesystemClockReference.refreshFilesystemClockReference(TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.get(cached), resultFilesystem.resultFilesystem(cached.result));
101
- return matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached);
105
+ return matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached, proof);
102
106
  }
103
107
  }
104
108
  if (expected !== hashText.hashText(source)) {
@@ -113,6 +117,8 @@ epoch) {
113
117
  }
114
118
  reportDivergentDelivery.reportDivergentDelivery(cached, file);
115
119
  }
120
+ if (pass)
121
+ return true;
116
122
  if (epoch !== undefined && cached.projectSnapshotComplete === true) {
117
123
  if (cached.deliveryEpoch !== epoch) {
118
124
  // The pass's first delivery. The generation was settled against an
@@ -122,7 +128,7 @@ epoch) {
122
128
  // settled against it. That proof is what a per-pass recompile used to buy
123
129
  // (samchon/ttsc#1300), at a walk instead of a compile.
124
130
  refreshFilesystemClockReference.refreshFilesystemClockReference(TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.get(cached), resultFilesystem.resultFilesystem(cached.result));
125
- if (!matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached)) {
131
+ if (!matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached, proof)) {
126
132
  return false;
127
133
  }
128
134
  cached.deliveryEpoch = epoch;
@@ -140,7 +146,7 @@ epoch) {
140
146
  cached.projectDirectories !== undefined &&
141
147
  cached.projectMutationTracker !== undefined &&
142
148
  cached.hostInputMutationTracker !== undefined) {
143
- const narrow = matchesNarrowPersistentInputs.matchesNarrowPersistentInputs(cached, file);
149
+ const narrow = matchesNarrowPersistentInputs.matchesNarrowPersistentInputs(cached, file, proof);
144
150
  if (narrow !== undefined) {
145
151
  return narrow;
146
152
  }
@@ -148,7 +154,7 @@ epoch) {
148
154
  // produced. Losing the proof is not evidence of a change, so fall through
149
155
  // to the snapshot the entry still carries.
150
156
  }
151
- return matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached);
157
+ return matchesCompleteInputSnapshot.matchesCompleteInputSnapshot(cached, proof);
152
158
  }
153
159
 
154
160
  exports.matchesCachedSource = matchesCachedSource;
@@ -1 +1 @@
1
- {"version":3,"file":"matchesCachedSource.js","sources":["../../../../src/core/transform/validation/matchesCachedSource.ts"],"sourcesContent":[null],"names":["nativeInputPredicatesHold","envelopeDerivation","toProjectKey","pathIdentityKey","matchesProjectRootFile","resultFilesystem","createEnvelopeKeyIndex","notificationsProveProgramUnchanged","refreshFilesystemClockReference","TRANSFORM_CLOCK_REFERENCE_DIRECTORIES","matchesCompleteInputSnapshot","hashText","hostInputStateHash","reportDivergentDelivery","matchesNarrowPersistentInputs"],"mappings":"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"}
1
+ {"version":3,"file":"matchesCachedSource.js","sources":["../../../../src/core/transform/validation/matchesCachedSource.ts"],"sourcesContent":[null],"names":["nativeInputPredicatesHold","TtscGenerationProof","envelopeDerivation","toProjectKey","pathIdentityKey","matchesProjectRootFile","resultFilesystem","createEnvelopeKeyIndex","notificationsProveProgramUnchanged","refreshFilesystemClockReference","TRANSFORM_CLOCK_REFERENCE_DIRECTORIES","matchesCompleteInputSnapshot","hashText","hostInputStateHash","reportDivergentDelivery","matchesNarrowPersistentInputs"],"mappings":"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"}
@@ -9,6 +9,7 @@ import { pathIdentityKey } from '../filesystem/pathIdentityKey.mjs';
9
9
  import { hostInputStateHash } from '../inputs/hostInputStateHash.mjs';
10
10
  import { toProjectKey } from '../project/toProjectKey.mjs';
11
11
  import { hashText } from '../utils/hashText.mjs';
12
+ import { TtscGenerationProof } from './TtscGenerationProof.mjs';
12
13
  import { matchesCompleteInputSnapshot } from './matchesCompleteInputSnapshot.mjs';
13
14
  import { matchesNarrowPersistentInputs } from './matchesNarrowPersistentInputs.mjs';
14
15
  import { nativeInputPredicatesHold } from './nativeInputPredicatesHold.mjs';
@@ -23,17 +24,19 @@ import { notificationsProveProgramUnchanged } from './notificationsProveProgramU
23
24
  * no source comparison. A cache with a delivery epoch can use that comparison
24
25
  * alone for a stable generation's first delivery of each module in the current
25
26
  * pass, once the pass's own first delivery has proven the whole generation
26
- * still matches the filesystem. An incomplete generation may not take this
27
- * shortcut: otherwise a sibling output captured during a filesystem race could
28
- * still be served once. Later graph-bearing requests validate the file's
29
- * derived input set and project membership. A failed result is a diagnostic of
30
- * the whole loaded program, so its repair cannot be proved by one delivered
31
- * output's dependency closure. Failed and graph-free envelopes conservatively
32
- * validate the complete project and out-of-walk snapshots, reusing qualified
33
- * signatures. A mismatch rejects this generation for the delivery; its caller
34
- * chooses replacement or capture. Delivered text that differs while the disk
35
- * still holds the bytes the generation compiled is not one: it is reported and
36
- * served, since the compile read the disk (samchon/ttsc#1394).
27
+ * still matches the filesystem. Incomplete generations cannot claim complete
28
+ * proof. A coherent local success admitted only because its observer was
29
+ * unavailable may share first deliveries in its exact nonwatching pass through
30
+ * TtscGenerationProof; it cannot cross passes or earn persistent authority.
31
+ * Later graph-bearing requests validate the file's derived input set and
32
+ * project membership. A failed result is a diagnostic of the whole loaded
33
+ * program, so its repair cannot be proved by one delivered output's dependency
34
+ * closure. Failed and graph-free envelopes conservatively validate the complete
35
+ * project and out-of-walk snapshots, reusing qualified signatures. A mismatch
36
+ * rejects this generation for the delivery; its caller chooses replacement or
37
+ * capture. Delivered text that differs while the disk still holds the bytes the
38
+ * generation compiled is not one: it is reported and served, since the compile
39
+ * read the disk (samchon/ttsc#1394).
37
40
  *
38
41
  * Its place in the adapter's invalidation model, and the units beside it, are
39
42
  * mapped in the maintainer page
@@ -41,7 +44,7 @@ import { notificationsProveProgramUnchanged } from './notificationsProveProgramU
41
44
  *
42
45
  * @evidence contracts/common.md#principled-implementation Delivered source, generation completeness, pass identity and notification authority choose between first-delivery proof, derived-input validation and complete snapshots; divergent editor text never substitutes for compiler disk inputs.
43
46
  * @evidence contracts/common.md#clear-and-simple-design This admission boundary chooses the required proof while dedicated validators own membership, universal inputs and content comparisons.
44
- * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot earn a first-delivery shortcut; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
47
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts An incomplete generation cannot claim complete snapshot authority; only separately admitted coherent local success can share first deliveries of its exact nonwatching pass; inherited object members cannot invent a project baseline, and losing watcher proof falls back to recorded-state validation.
45
48
  * @evidence contracts/common.md#meaningful-documentation Separate native paragraphs explain disk-versus-delivered authority, epoch qualification, fallback and related maintainer guidance before tags.
46
49
  * @evidence contracts/portability.md#os-neutral-implementation Project membership and path identity use recorded compiler case policy and injected native operations; OS names do not certify case sensitivity or watcher capabilities.
47
50
  * @evidence contracts/performance.md#bound-retention-and-release-resources
@@ -51,13 +54,13 @@ import { notificationsProveProgramUnchanged } from './notificationsProveProgramU
51
54
  * while validators replace current signature/directory witnesses. No new
52
55
  * independent handle or historical epoch collection is acquired here.
53
56
  * @evidence contracts/performance.md#efficient-algorithms Every admission first replays all generation-owned typed config predicates; this mandatory cost includes native queries, file bytes or directory membership independently of watcher/epoch qualification.
54
- * Fresh-only rejection precedes native identity work. Baseline-bearing paths
57
+ * Unsupported fresh-only rejection precedes source baseline work. Baseline-bearing paths
55
58
  * hash delivered text and divergent paths read/hash host bytes; unrelated
56
59
  * absent outputs can return before that hash after an initial K-output index.
57
60
  * Epoch-qualified first checkpoints share the complete proof. Other paths
58
61
  * pay derived-input or complete project/external/universal proof costs,
59
62
  * including path/byte populations, native observations and clock refresh.
60
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
63
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay remains mandatory for every delivery and shares only the current synchronous transaction with nested validators; immutable membership is indexed separately. A complete generation earns one whole-snapshot proof per new delivery epoch; later first deliveries share it, while repeated or persistent deliveries revalidate their authoritative dependency scope.
61
64
  */
62
65
  function matchesCachedSource(
63
66
  /** Generation retaining recorded baselines and distinct proof authority. */
@@ -67,10 +70,11 @@ file,
67
70
  /** Delivered text, compared with the recorded baseline rather than adopted. */
68
71
  source,
69
72
  /** Current host pass, or undefined for persistent input validation. */
70
- epoch) {
71
- if (!nativeInputPredicatesHold(cached))
73
+ epoch, proof) {
74
+ if (!nativeInputPredicatesHold(cached, proof))
72
75
  return false;
73
- if (cached.freshDeliveryOnly === true)
76
+ const pass = TtscGenerationProof.sharesPass(cached, file, epoch);
77
+ if (cached.freshDeliveryOnly === true && !pass)
74
78
  return false;
75
79
  const identities = envelopeDerivation(cached).identityContext;
76
80
  const currentKey = toProjectKey(cached.projectRoot, file, identities);
@@ -88,7 +92,7 @@ epoch) {
88
92
  if (!outputs.has(identity)) {
89
93
  // While the watchers prove the program unchanged, the module is still
90
94
  // outside it, and no walk is needed to say so (samchon/ttsc#1398).
91
- if (notificationsProveProgramUnchanged(cached)) {
95
+ if (notificationsProveProgramUnchanged(cached, proof)) {
92
96
  return true;
93
97
  }
94
98
  // Root discovery deliberately never hashed this unrelated module. Its
@@ -96,7 +100,7 @@ epoch) {
96
100
  // whole program must still be current before we reuse that absence: a
97
101
  // changed config or importer can bring this file into the next program.
98
102
  refreshFilesystemClockReference(TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.get(cached), resultFilesystem(cached.result));
99
- return matchesCompleteInputSnapshot(cached);
103
+ return matchesCompleteInputSnapshot(cached, proof);
100
104
  }
101
105
  }
102
106
  if (expected !== hashText(source)) {
@@ -111,6 +115,8 @@ epoch) {
111
115
  }
112
116
  reportDivergentDelivery(cached, file);
113
117
  }
118
+ if (pass)
119
+ return true;
114
120
  if (epoch !== undefined && cached.projectSnapshotComplete === true) {
115
121
  if (cached.deliveryEpoch !== epoch) {
116
122
  // The pass's first delivery. The generation was settled against an
@@ -120,7 +126,7 @@ epoch) {
120
126
  // settled against it. That proof is what a per-pass recompile used to buy
121
127
  // (samchon/ttsc#1300), at a walk instead of a compile.
122
128
  refreshFilesystemClockReference(TRANSFORM_CLOCK_REFERENCE_DIRECTORIES.get(cached), resultFilesystem(cached.result));
123
- if (!matchesCompleteInputSnapshot(cached)) {
129
+ if (!matchesCompleteInputSnapshot(cached, proof)) {
124
130
  return false;
125
131
  }
126
132
  cached.deliveryEpoch = epoch;
@@ -138,7 +144,7 @@ epoch) {
138
144
  cached.projectDirectories !== undefined &&
139
145
  cached.projectMutationTracker !== undefined &&
140
146
  cached.hostInputMutationTracker !== undefined) {
141
- const narrow = matchesNarrowPersistentInputs(cached, file);
147
+ const narrow = matchesNarrowPersistentInputs(cached, file, proof);
142
148
  if (narrow !== undefined) {
143
149
  return narrow;
144
150
  }
@@ -146,7 +152,7 @@ epoch) {
146
152
  // produced. Losing the proof is not evidence of a change, so fall through
147
153
  // to the snapshot the entry still carries.
148
154
  }
149
- return matchesCompleteInputSnapshot(cached);
155
+ return matchesCompleteInputSnapshot(cached, proof);
150
156
  }
151
157
 
152
158
  export { matchesCachedSource };
@@ -1 +1 @@
1
- {"version":3,"file":"matchesCachedSource.mjs","sources":["../../../../src/core/transform/validation/matchesCachedSource.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;AAiBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CG;SACa,mBAAmB;AACjC;AACA,MAAkC;AAClC;AACA,IAAY;AACZ;AACA,MAAc;AACd;AACA,KAAyB,EAAA;AAEzB,IAAA,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;AAAE,QAAA,OAAO,KAAK;AACpD,IAAA,IAAI,MAAM,CAAC,iBAAiB,KAAK,IAAI;AAAE,QAAA,OAAO,KAAK;IACnD,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,eAAe;AAC7D,IAAA,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC;IACrE,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC;IAClD,MAAM,QAAQ,GACZ,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC;AAC/B,SAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU;AAClE,cAAE,MAAM,CAAC,WAAW,CAAC,UAAU;cAC7B,SAAS,CAAC;AACd,QAAA,MAAM,CAAC,mBAAmB,GAAG,QAAQ,CAAC;IACxC,IACE,QAAQ,KAAK,SAAS;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;QAChC,CAAC,sBAAsB,CACrB,IAAI,EACJ,MAAM,CAAC,gBAAgB,EACvB,KAAK,EACL,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CACzC,EACD;AACA,QAAA,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC;QACxC,MAAM,OAAO,IAAI,KAAK,CAAC,WAAW,KAAK,sBAAsB,CAC3D,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CACrE,CACF,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;;;AAG1B,YAAA,IAAI,kCAAkC,CAAC,MAAM,CAAC,EAAE;AAC9C,gBAAA,OAAO,IAAI;YACb;;;;;AAKA,YAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;AACD,YAAA,OAAO,4BAA4B,CAAC,MAAM,CAAC;QAC7C;IACF;AACA,IAAA,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE;;;;;;QAMjC,IACE,QAAQ,KAAK,SAAS;AACtB,YAAA,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,QAAQ,EACtE;AACA,YAAA,OAAO,KAAK;QACd;AACA,QAAA,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC;IACvC;IACA,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,uBAAuB,KAAK,IAAI,EAAE;AAClE,QAAA,IAAI,MAAM,CAAC,aAAa,KAAK,KAAK,EAAE;;;;;;;AAOlC,YAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;AACD,YAAA,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE;AACzC,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,CAAC,aAAa,GAAG,KAAK;AAC5B,YAAA,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;AAC3B,YAAA,OAAO,IAAI;QACb;QACA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE;AACtC,YAAA,OAAO,IAAI;QACb;IACF;AACA,IAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;AACD,IAAA,IACE,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;AAChC,QAAA,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS;QACjC,MAAM,CAAC,uBAAuB,KAAK,IAAI;QACvC,MAAM,CAAC,kBAAkB,KAAK,SAAS;QACvC,MAAM,CAAC,sBAAsB,KAAK,SAAS;AAC3C,QAAA,MAAM,CAAC,wBAAwB,KAAK,SAAS,EAC7C;QACA,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,EAAE,IAAI,CAAC;AAC1D,QAAA,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,YAAA,OAAO,MAAM;QACf;;;;IAIF;AACA,IAAA,OAAO,4BAA4B,CAAC,MAAM,CAAC;AAC7C;;;;"}
1
+ {"version":3,"file":"matchesCachedSource.mjs","sources":["../../../../src/core/transform/validation/matchesCachedSource.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAkBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CG;SACa,mBAAmB;AACjC;AACA,MAAkC;AAClC;AACA,IAAY;AACZ;AACA,MAAc;AACd;AACA,KAAyB,EACzB,KAAuC,EAAA;AAEvC,IAAA,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC;AAAE,QAAA,OAAO,KAAK;AAC3D,IAAA,MAAM,IAAI,GAAG,mBAAmB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;AAChE,IAAA,IAAI,MAAM,CAAC,iBAAiB,KAAK,IAAI,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,KAAK;IAC5D,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,eAAe;AAC7D,IAAA,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC;IACrE,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC;IAClD,MAAM,QAAQ,GACZ,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC;AAC/B,SAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU;AAClE,cAAE,MAAM,CAAC,WAAW,CAAC,UAAU;cAC7B,SAAS,CAAC;AACd,QAAA,MAAM,CAAC,mBAAmB,GAAG,QAAQ,CAAC;IACxC,IACE,QAAQ,KAAK,SAAS;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;QAChC,CAAC,sBAAsB,CACrB,IAAI,EACJ,MAAM,CAAC,gBAAgB,EACvB,KAAK,EACL,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CACzC,EACD;AACA,QAAA,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC;QACxC,MAAM,OAAO,IAAI,KAAK,CAAC,WAAW,KAAK,sBAAsB,CAC3D,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CACrE,CACF,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;;;AAG1B,YAAA,IAAI,kCAAkC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;AACrD,gBAAA,OAAO,IAAI;YACb;;;;;AAKA,YAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;AACD,YAAA,OAAO,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC;QACpD;IACF;AACA,IAAA,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE;;;;;;QAMjC,IACE,QAAQ,KAAK,SAAS;AACtB,YAAA,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,QAAQ,EACtE;AACA,YAAA,OAAO,KAAK;QACd;AACA,QAAA,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC;IACvC;AACA,IAAA,IAAI,IAAI;AAAE,QAAA,OAAO,IAAI;IACrB,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,uBAAuB,KAAK,IAAI,EAAE;AAClE,QAAA,IAAI,MAAM,CAAC,aAAa,KAAK,KAAK,EAAE;;;;;;;AAOlC,YAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;YACD,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;AAChD,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,CAAC,aAAa,GAAG,KAAK;AAC5B,YAAA,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;AAC3B,YAAA,OAAO,IAAI;QACb;QACA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE;AACtC,YAAA,OAAO,IAAI;QACb;IACF;AACA,IAAA,+BAA+B,CAC7B,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,EACjD,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAChC;AACD,IAAA,IACE,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;AAChC,QAAA,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS;QACjC,MAAM,CAAC,uBAAuB,KAAK,IAAI;QACvC,MAAM,CAAC,kBAAkB,KAAK,SAAS;QACvC,MAAM,CAAC,sBAAsB,KAAK,SAAS;AAC3C,QAAA,MAAM,CAAC,wBAAwB,KAAK,SAAS,EAC7C;QACA,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;AACjE,QAAA,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,YAAA,OAAO,MAAM;QACf;;;;IAIF;AACA,IAAA,OAAO,4BAA4B,CAAC,MAAM,EAAE,KAAK,CAAC;AACpD;;;;"}
@@ -1,4 +1,5 @@
1
1
  import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTransform.cjs";
2
+ import type { TtscGenerationProof } from "./TtscGenerationProof.cjs";
2
3
  /**
3
4
  * Prove one generation from its own recorded snapshot, with no help from live
4
5
  * notifications.
@@ -29,11 +30,11 @@ import type { TtscCachedProjectTransform } from "../cache/TtscCachedProjectTrans
29
30
  * target scans, signature entry materialization/adoption and native identity
30
31
  * work add population/path/digit costs; unresolved content and predicate
31
32
  * replay add bytes/listings. Early rejection skips subsequent domains.
32
- * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicate replay is not cached by this coordinator and remains mandatory even when the following existing shortcut shares other proof. Qualified separable signatures avoid repeated content reads under the caller's refreshed clock. Successful aggregate proof adopts earned project/external signatures and clears unverified flags; it neither clears recorded changes/failed flags nor makes later quiet notifications sufficient without their other admission conditions.
33
+ * @evidence contracts/performance.md#reuse-equivalent-work Typed config predicates remain mandatory on every delivery. An exact-generation synchronous transaction may share their current replay across nested validators, but no pass or notification shortcut authorizes a later delivery to skip them. Qualified separable signatures avoid repeated content reads under the caller's refreshed clock. Successful aggregate proof adopts earned project/external signatures and clears unverified flags; it neither clears recorded changes/failed flags nor makes later quiet notifications sufficient without their other admission conditions.
33
34
  */
34
35
  export declare function matchesCompleteInputSnapshot(
35
36
  /**
36
37
  * Generation with a complete capture baseline and caller-refreshed clock
37
38
  * proof.
38
39
  */
39
- cached: TtscCachedProjectTransform): boolean;
40
+ cached: TtscCachedProjectTransform, proof?: TtscGenerationProof.Transaction): boolean;