@marinoscar/platform-api 0.0.0-stage → 0.1.0-next.3

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 (616) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/LICENSE +21 -0
  3. package/README.md +106 -2
  4. package/dist/core/crypto/encryption-key-startup-check.d.ts +29 -0
  5. package/dist/core/crypto/encryption-key-startup-check.d.ts.map +1 -0
  6. package/dist/core/crypto/encryption-key-startup-check.js +221 -0
  7. package/dist/core/crypto/encryption-key-startup-check.js.map +1 -0
  8. package/dist/core/crypto/secret-cipher.d.ts +151 -0
  9. package/dist/core/crypto/secret-cipher.d.ts.map +1 -0
  10. package/dist/core/crypto/secret-cipher.js +452 -0
  11. package/dist/core/crypto/secret-cipher.js.map +1 -0
  12. package/dist/core/data-access/index.d.ts +6 -0
  13. package/dist/core/data-access/index.d.ts.map +1 -0
  14. package/dist/core/data-access/index.js +19 -0
  15. package/dist/core/data-access/index.js.map +1 -0
  16. package/dist/core/data-access/scoped-access.error.d.ts +35 -0
  17. package/dist/core/data-access/scoped-access.error.d.ts.map +1 -0
  18. package/dist/core/data-access/scoped-access.error.js +43 -0
  19. package/dist/core/data-access/scoped-access.error.js.map +1 -0
  20. package/dist/core/data-access/scoped-client.d.ts +104 -0
  21. package/dist/core/data-access/scoped-client.d.ts.map +1 -0
  22. package/dist/core/data-access/scoped-client.js +270 -0
  23. package/dist/core/data-access/scoped-client.js.map +1 -0
  24. package/dist/core/data-access/types.d.ts +85 -0
  25. package/dist/core/data-access/types.d.ts.map +1 -0
  26. package/dist/core/data-access/types.js +12 -0
  27. package/dist/core/data-access/types.js.map +1 -0
  28. package/dist/core/data-access/user-owned-data.registry.d.ts +60 -0
  29. package/dist/core/data-access/user-owned-data.registry.d.ts.map +1 -0
  30. package/dist/core/data-access/user-owned-data.registry.js +140 -0
  31. package/dist/core/data-access/user-owned-data.registry.js.map +1 -0
  32. package/dist/core/errors/database-seed.exception.d.ts +23 -0
  33. package/dist/core/errors/database-seed.exception.d.ts.map +1 -0
  34. package/dist/core/errors/database-seed.exception.js +49 -0
  35. package/dist/core/errors/database-seed.exception.js.map +1 -0
  36. package/dist/core/errors/error.dto.d.ts +47 -0
  37. package/dist/core/errors/error.dto.d.ts.map +1 -0
  38. package/dist/core/errors/error.dto.js +121 -0
  39. package/dist/core/errors/error.dto.js.map +1 -0
  40. package/dist/core/errors/http-exception.filter.d.ts +63 -0
  41. package/dist/core/errors/http-exception.filter.d.ts.map +1 -0
  42. package/dist/core/errors/http-exception.filter.js +234 -0
  43. package/dist/core/errors/http-exception.filter.js.map +1 -0
  44. package/dist/core/errors/verbatim-error-body.exception.d.ts +46 -0
  45. package/dist/core/errors/verbatim-error-body.exception.d.ts.map +1 -0
  46. package/dist/core/errors/verbatim-error-body.exception.js +135 -0
  47. package/dist/core/errors/verbatim-error-body.exception.js.map +1 -0
  48. package/dist/core/host/index.d.ts +7 -0
  49. package/dist/core/host/index.d.ts.map +1 -0
  50. package/dist/core/host/index.js +14 -0
  51. package/dist/core/host/index.js.map +1 -0
  52. package/dist/core/host/platform-host.d.ts +58 -0
  53. package/dist/core/host/platform-host.d.ts.map +1 -0
  54. package/dist/core/host/platform-host.js +104 -0
  55. package/dist/core/host/platform-host.js.map +1 -0
  56. package/dist/core/host/platform-host.module.d.ts +53 -0
  57. package/dist/core/host/platform-host.module.d.ts.map +1 -0
  58. package/dist/core/host/platform-host.module.js +90 -0
  59. package/dist/core/host/platform-host.module.js.map +1 -0
  60. package/dist/core/host/ports.d.ts +132 -0
  61. package/dist/core/host/ports.d.ts.map +1 -0
  62. package/dist/core/host/ports.js +48 -0
  63. package/dist/core/host/ports.js.map +1 -0
  64. package/dist/core/index.d.ts +15 -0
  65. package/dist/core/index.d.ts.map +1 -0
  66. package/dist/core/index.js +77 -0
  67. package/dist/core/index.js.map +1 -0
  68. package/dist/core/openapi/openapi-tag.registry.d.ts +80 -0
  69. package/dist/core/openapi/openapi-tag.registry.d.ts.map +1 -0
  70. package/dist/core/openapi/openapi-tag.registry.js +72 -0
  71. package/dist/core/openapi/openapi-tag.registry.js.map +1 -0
  72. package/dist/core/principal/index.d.ts +6 -0
  73. package/dist/core/principal/index.d.ts.map +1 -0
  74. package/dist/core/principal/index.js +3 -0
  75. package/dist/core/principal/index.js.map +1 -0
  76. package/dist/core/principal/principal.types.d.ts +222 -0
  77. package/dist/core/principal/principal.types.d.ts.map +1 -0
  78. package/dist/core/principal/principal.types.js +22 -0
  79. package/dist/core/principal/principal.types.js.map +1 -0
  80. package/dist/core/registry/index.d.ts +4 -0
  81. package/dist/core/registry/index.d.ts.map +1 -0
  82. package/dist/core/registry/index.js +19 -0
  83. package/dist/core/registry/index.js.map +1 -0
  84. package/dist/core/registry/registry-freeze.service.d.ts +14 -0
  85. package/dist/core/registry/registry-freeze.service.d.ts.map +1 -0
  86. package/dist/core/registry/registry-freeze.service.js +55 -0
  87. package/dist/core/registry/registry-freeze.service.js.map +1 -0
  88. package/dist/core/registry/registry.d.ts +268 -0
  89. package/dist/core/registry/registry.d.ts.map +1 -0
  90. package/dist/core/registry/registry.js +351 -0
  91. package/dist/core/registry/registry.js.map +1 -0
  92. package/dist/core/registry/testing.d.ts +29 -0
  93. package/dist/core/registry/testing.d.ts.map +1 -0
  94. package/dist/core/registry/testing.js +63 -0
  95. package/dist/core/registry/testing.js.map +1 -0
  96. package/dist/doctor/doctor-check.interface.d.ts +100 -0
  97. package/dist/doctor/doctor-check.interface.d.ts.map +1 -0
  98. package/dist/doctor/doctor-check.interface.js +95 -0
  99. package/dist/doctor/doctor-check.interface.js.map +1 -0
  100. package/dist/doctor/doctor-check.registry.d.ts +37 -0
  101. package/dist/doctor/doctor-check.registry.d.ts.map +1 -0
  102. package/dist/doctor/doctor-check.registry.js +96 -0
  103. package/dist/doctor/doctor-check.registry.js.map +1 -0
  104. package/dist/doctor/doctor.controller.factory.d.ts +29 -0
  105. package/dist/doctor/doctor.controller.factory.d.ts.map +1 -0
  106. package/dist/doctor/doctor.controller.factory.js +121 -0
  107. package/dist/doctor/doctor.controller.factory.js.map +1 -0
  108. package/dist/doctor/doctor.module.d.ts +78 -0
  109. package/dist/doctor/doctor.module.d.ts.map +1 -0
  110. package/dist/doctor/doctor.module.js +158 -0
  111. package/dist/doctor/doctor.module.js.map +1 -0
  112. package/dist/doctor/doctor.options.d.ts +39 -0
  113. package/dist/doctor/doctor.options.d.ts.map +1 -0
  114. package/dist/doctor/doctor.options.js +21 -0
  115. package/dist/doctor/doctor.options.js.map +1 -0
  116. package/dist/doctor/doctor.service.d.ts +80 -0
  117. package/dist/doctor/doctor.service.d.ts.map +1 -0
  118. package/dist/doctor/doctor.service.js +301 -0
  119. package/dist/doctor/doctor.service.js.map +1 -0
  120. package/dist/doctor/dto/doctor-query.dto.d.ts +15 -0
  121. package/dist/doctor/dto/doctor-query.dto.d.ts.map +1 -0
  122. package/dist/doctor/dto/doctor-query.dto.js +16 -0
  123. package/dist/doctor/dto/doctor-query.dto.js.map +1 -0
  124. package/dist/doctor/dto/doctor-report.dto.d.ts +27 -0
  125. package/dist/doctor/dto/doctor-report.dto.d.ts.map +1 -0
  126. package/dist/doctor/dto/doctor-report.dto.js +23 -0
  127. package/dist/doctor/dto/doctor-report.dto.js.map +1 -0
  128. package/dist/doctor/egress/classify-host.d.ts +73 -0
  129. package/dist/doctor/egress/classify-host.d.ts.map +1 -0
  130. package/dist/doctor/egress/classify-host.js +210 -0
  131. package/dist/doctor/egress/classify-host.js.map +1 -0
  132. package/dist/doctor/egress/egress.registry.d.ts +34 -0
  133. package/dist/doctor/egress/egress.registry.d.ts.map +1 -0
  134. package/dist/doctor/egress/egress.registry.js +70 -0
  135. package/dist/doctor/egress/egress.registry.js.map +1 -0
  136. package/dist/doctor/egress/egress.types.d.ts +135 -0
  137. package/dist/doctor/egress/egress.types.d.ts.map +1 -0
  138. package/dist/doctor/egress/egress.types.js +42 -0
  139. package/dist/doctor/egress/egress.types.js.map +1 -0
  140. package/dist/doctor/egress/index.d.ts +6 -0
  141. package/dist/doctor/egress/index.d.ts.map +1 -0
  142. package/dist/doctor/egress/index.js +23 -0
  143. package/dist/doctor/egress/index.js.map +1 -0
  144. package/dist/doctor/egress/network-egress.doctor-check.d.ts +78 -0
  145. package/dist/doctor/egress/network-egress.doctor-check.d.ts.map +1 -0
  146. package/dist/doctor/egress/network-egress.doctor-check.js +226 -0
  147. package/dist/doctor/egress/network-egress.doctor-check.js.map +1 -0
  148. package/dist/doctor/index.d.ts +19 -0
  149. package/dist/doctor/index.d.ts.map +1 -0
  150. package/dist/doctor/index.js +66 -0
  151. package/dist/doctor/index.js.map +1 -0
  152. package/dist/doctor/support-bundle/index.d.ts +12 -0
  153. package/dist/doctor/support-bundle/index.d.ts.map +1 -0
  154. package/dist/doctor/support-bundle/index.js +32 -0
  155. package/dist/doctor/support-bundle/index.js.map +1 -0
  156. package/dist/doctor/support-bundle/redact.d.ts +76 -0
  157. package/dist/doctor/support-bundle/redact.d.ts.map +1 -0
  158. package/dist/doctor/support-bundle/redact.js +236 -0
  159. package/dist/doctor/support-bundle/redact.js.map +1 -0
  160. package/dist/doctor/support-bundle/sections/doctor.section.d.ts +81 -0
  161. package/dist/doctor/support-bundle/sections/doctor.section.d.ts.map +1 -0
  162. package/dist/doctor/support-bundle/sections/doctor.section.js +83 -0
  163. package/dist/doctor/support-bundle/sections/doctor.section.js.map +1 -0
  164. package/dist/doctor/support-bundle/sections/egress.section.d.ts +73 -0
  165. package/dist/doctor/support-bundle/sections/egress.section.d.ts.map +1 -0
  166. package/dist/doctor/support-bundle/sections/egress.section.js +97 -0
  167. package/dist/doctor/support-bundle/sections/egress.section.js.map +1 -0
  168. package/dist/doctor/support-bundle/sections/meta.section.d.ts +39 -0
  169. package/dist/doctor/support-bundle/sections/meta.section.d.ts.map +1 -0
  170. package/dist/doctor/support-bundle/sections/meta.section.js +89 -0
  171. package/dist/doctor/support-bundle/sections/meta.section.js.map +1 -0
  172. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts +100 -0
  173. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts.map +1 -0
  174. package/dist/doctor/support-bundle/support-bundle-section.interface.js +59 -0
  175. package/dist/doctor/support-bundle/support-bundle-section.interface.js.map +1 -0
  176. package/dist/doctor/support-bundle/support-bundle.controller.d.ts +57 -0
  177. package/dist/doctor/support-bundle/support-bundle.controller.d.ts.map +1 -0
  178. package/dist/doctor/support-bundle/support-bundle.controller.js +141 -0
  179. package/dist/doctor/support-bundle/support-bundle.controller.js.map +1 -0
  180. package/dist/doctor/support-bundle/support-bundle.options.d.ts +92 -0
  181. package/dist/doctor/support-bundle/support-bundle.options.d.ts.map +1 -0
  182. package/dist/doctor/support-bundle/support-bundle.options.js +100 -0
  183. package/dist/doctor/support-bundle/support-bundle.options.js.map +1 -0
  184. package/dist/doctor/support-bundle/support-bundle.registry.d.ts +38 -0
  185. package/dist/doctor/support-bundle/support-bundle.registry.d.ts.map +1 -0
  186. package/dist/doctor/support-bundle/support-bundle.registry.js +90 -0
  187. package/dist/doctor/support-bundle/support-bundle.registry.js.map +1 -0
  188. package/dist/doctor/support-bundle/support-bundle.service.d.ts +63 -0
  189. package/dist/doctor/support-bundle/support-bundle.service.d.ts.map +1 -0
  190. package/dist/doctor/support-bundle/support-bundle.service.js +244 -0
  191. package/dist/doctor/support-bundle/support-bundle.service.js.map +1 -0
  192. package/dist/index.d.ts +11 -0
  193. package/dist/index.d.ts.map +1 -0
  194. package/dist/index.js +14 -0
  195. package/dist/index.js.map +1 -0
  196. package/dist/otel-core/index.d.ts +9 -0
  197. package/dist/otel-core/index.d.ts.map +1 -0
  198. package/dist/otel-core/index.js +58 -0
  199. package/dist/otel-core/index.js.map +1 -0
  200. package/dist/otel-core/metrics/gauge-provider.d.ts +44 -0
  201. package/dist/otel-core/metrics/gauge-provider.d.ts.map +1 -0
  202. package/dist/otel-core/metrics/gauge-provider.js +37 -0
  203. package/dist/otel-core/metrics/gauge-provider.js.map +1 -0
  204. package/dist/otel-core/metrics/labels.d.ts +79 -0
  205. package/dist/otel-core/metrics/labels.d.ts.map +1 -0
  206. package/dist/otel-core/metrics/labels.js +135 -0
  207. package/dist/otel-core/metrics/labels.js.map +1 -0
  208. package/dist/otel-core/metrics/metric-name.registry.d.ts +130 -0
  209. package/dist/otel-core/metrics/metric-name.registry.d.ts.map +1 -0
  210. package/dist/otel-core/metrics/metric-name.registry.js +134 -0
  211. package/dist/otel-core/metrics/metric-name.registry.js.map +1 -0
  212. package/dist/otel-core/metrics/metrics-host.service.d.ts +163 -0
  213. package/dist/otel-core/metrics/metrics-host.service.d.ts.map +1 -0
  214. package/dist/otel-core/metrics/metrics-host.service.js +344 -0
  215. package/dist/otel-core/metrics/metrics-host.service.js.map +1 -0
  216. package/dist/otel-core/metrics/otel-metrics.module.d.ts +54 -0
  217. package/dist/otel-core/metrics/otel-metrics.module.d.ts.map +1 -0
  218. package/dist/otel-core/metrics/otel-metrics.module.js +83 -0
  219. package/dist/otel-core/metrics/otel-metrics.module.js.map +1 -0
  220. package/dist/otel-core/sdk/index.d.ts +5 -0
  221. package/dist/otel-core/sdk/index.d.ts.map +1 -0
  222. package/dist/otel-core/sdk/index.js +27 -0
  223. package/dist/otel-core/sdk/index.js.map +1 -0
  224. package/dist/otel-core/sdk/initialize-otel.d.ts +126 -0
  225. package/dist/otel-core/sdk/initialize-otel.d.ts.map +1 -0
  226. package/dist/otel-core/sdk/initialize-otel.js +204 -0
  227. package/dist/otel-core/sdk/initialize-otel.js.map +1 -0
  228. package/dist/otel-core/sdk/instance-id.d.ts +29 -0
  229. package/dist/otel-core/sdk/instance-id.d.ts.map +1 -0
  230. package/dist/otel-core/sdk/instance-id.js +65 -0
  231. package/dist/otel-core/sdk/instance-id.js.map +1 -0
  232. package/dist/otel-core/sdk/service-name.d.ts +28 -0
  233. package/dist/otel-core/sdk/service-name.d.ts.map +1 -0
  234. package/dist/otel-core/sdk/service-name.js +63 -0
  235. package/dist/otel-core/sdk/service-name.js.map +1 -0
  236. package/dist/otel-core/sdk/telemetry-gate.d.ts +116 -0
  237. package/dist/otel-core/sdk/telemetry-gate.d.ts.map +1 -0
  238. package/dist/otel-core/sdk/telemetry-gate.js +297 -0
  239. package/dist/otel-core/sdk/telemetry-gate.js.map +1 -0
  240. package/dist/otel-core/spans/request-span-attributes.d.ts +58 -0
  241. package/dist/otel-core/spans/request-span-attributes.d.ts.map +1 -0
  242. package/dist/otel-core/spans/request-span-attributes.js +155 -0
  243. package/dist/otel-core/spans/request-span-attributes.js.map +1 -0
  244. package/dist/otel-core/spans/trace.decorator.d.ts +36 -0
  245. package/dist/otel-core/spans/trace.decorator.d.ts.map +1 -0
  246. package/dist/otel-core/spans/trace.decorator.js +74 -0
  247. package/dist/otel-core/spans/trace.decorator.js.map +1 -0
  248. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts +15 -0
  249. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts.map +1 -0
  250. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js +50 -0
  251. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js.map +1 -0
  252. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts +14 -0
  253. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts.map +1 -0
  254. package/dist/telemetry/assistant/telemetry-assistant.controller.js +178 -0
  255. package/dist/telemetry/assistant/telemetry-assistant.controller.js.map +1 -0
  256. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts +147 -0
  257. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts.map +1 -0
  258. package/dist/telemetry/assistant/telemetry-assistant.metrics.js +495 -0
  259. package/dist/telemetry/assistant/telemetry-assistant.metrics.js.map +1 -0
  260. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts +216 -0
  261. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts.map +1 -0
  262. package/dist/telemetry/assistant/telemetry-assistant.service.js +1256 -0
  263. package/dist/telemetry/assistant/telemetry-assistant.service.js.map +1 -0
  264. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts +69 -0
  265. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts.map +1 -0
  266. package/dist/telemetry/assistant/telemetry-assistant.sql.js +471 -0
  267. package/dist/telemetry/assistant/telemetry-assistant.sql.js.map +1 -0
  268. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts +15 -0
  269. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts.map +1 -0
  270. package/dist/telemetry/assistant/telemetry-assistant.sse.js +68 -0
  271. package/dist/telemetry/assistant/telemetry-assistant.sse.js.map +1 -0
  272. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts +92 -0
  273. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts.map +1 -0
  274. package/dist/telemetry/connection/dto/telemetry-connection.dto.js +41 -0
  275. package/dist/telemetry/connection/dto/telemetry-connection.dto.js.map +1 -0
  276. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts +45 -0
  277. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts.map +1 -0
  278. package/dist/telemetry/connection/telemetry-connection-admin.service.js +303 -0
  279. package/dist/telemetry/connection/telemetry-connection-admin.service.js.map +1 -0
  280. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts +41 -0
  281. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts.map +1 -0
  282. package/dist/telemetry/connection/telemetry-connection-test.service.js +187 -0
  283. package/dist/telemetry/connection/telemetry-connection-test.service.js.map +1 -0
  284. package/dist/telemetry/connection/telemetry-connection.controller.d.ts +14 -0
  285. package/dist/telemetry/connection/telemetry-connection.controller.d.ts.map +1 -0
  286. package/dist/telemetry/connection/telemetry-connection.controller.js +192 -0
  287. package/dist/telemetry/connection/telemetry-connection.controller.js.map +1 -0
  288. package/dist/telemetry/connection/telemetry-connection.schema.d.ts +28 -0
  289. package/dist/telemetry/connection/telemetry-connection.schema.d.ts.map +1 -0
  290. package/dist/telemetry/connection/telemetry-connection.schema.js +106 -0
  291. package/dist/telemetry/connection/telemetry-connection.schema.js.map +1 -0
  292. package/dist/telemetry/connection/telemetry-connection.service.d.ts +197 -0
  293. package/dist/telemetry/connection/telemetry-connection.service.d.ts.map +1 -0
  294. package/dist/telemetry/connection/telemetry-connection.service.js +461 -0
  295. package/dist/telemetry/connection/telemetry-connection.service.js.map +1 -0
  296. package/dist/telemetry/dashboard/sql-literals.d.ts +19 -0
  297. package/dist/telemetry/dashboard/sql-literals.d.ts.map +1 -0
  298. package/dist/telemetry/dashboard/sql-literals.js +75 -0
  299. package/dist/telemetry/dashboard/sql-literals.js.map +1 -0
  300. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts +14 -0
  301. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts.map +1 -0
  302. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js +277 -0
  303. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js.map +1 -0
  304. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts +112 -0
  305. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts.map +1 -0
  306. package/dist/telemetry/dashboard/telemetry-dashboard.service.js +904 -0
  307. package/dist/telemetry/dashboard/telemetry-dashboard.service.js.map +1 -0
  308. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts +212 -0
  309. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts.map +1 -0
  310. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js +486 -0
  311. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js.map +1 -0
  312. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts +235 -0
  313. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts.map +1 -0
  314. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js +269 -0
  315. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js.map +1 -0
  316. package/dist/telemetry/dashboard/verdict-policy.d.ts +51 -0
  317. package/dist/telemetry/dashboard/verdict-policy.d.ts.map +1 -0
  318. package/dist/telemetry/dashboard/verdict-policy.js +77 -0
  319. package/dist/telemetry/dashboard/verdict-policy.js.map +1 -0
  320. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts +21 -0
  321. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts.map +1 -0
  322. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js +59 -0
  323. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js.map +1 -0
  324. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts +23 -0
  325. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts.map +1 -0
  326. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js +69 -0
  327. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js.map +1 -0
  328. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts +33 -0
  329. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts.map +1 -0
  330. package/dist/telemetry/doctor/telemetry-export.doctor-check.js +105 -0
  331. package/dist/telemetry/doctor/telemetry-export.doctor-check.js.map +1 -0
  332. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts +38 -0
  333. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts.map +1 -0
  334. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js +104 -0
  335. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js.map +1 -0
  336. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts +23 -0
  337. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts.map +1 -0
  338. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js +65 -0
  339. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js.map +1 -0
  340. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts +23 -0
  341. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts.map +1 -0
  342. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js +91 -0
  343. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js.map +1 -0
  344. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts +14 -0
  345. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts.map +1 -0
  346. package/dist/telemetry/dto/telemetry-assistant.dto.js +29 -0
  347. package/dist/telemetry/dto/telemetry-assistant.dto.js.map +1 -0
  348. package/dist/telemetry/dto/telemetry-config.dto.d.ts +59 -0
  349. package/dist/telemetry/dto/telemetry-config.dto.d.ts.map +1 -0
  350. package/dist/telemetry/dto/telemetry-config.dto.js +18 -0
  351. package/dist/telemetry/dto/telemetry-config.dto.js.map +1 -0
  352. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts +397 -0
  353. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts.map +1 -0
  354. package/dist/telemetry/dto/telemetry-dashboard.dto.js +118 -0
  355. package/dist/telemetry/dto/telemetry-dashboard.dto.js.map +1 -0
  356. package/dist/telemetry/dto/telemetry-query.dto.d.ts +44 -0
  357. package/dist/telemetry/dto/telemetry-query.dto.d.ts.map +1 -0
  358. package/dist/telemetry/dto/telemetry-query.dto.js +42 -0
  359. package/dist/telemetry/dto/telemetry-query.dto.js.map +1 -0
  360. package/dist/telemetry/dto/telemetry-status.dto.d.ts +22 -0
  361. package/dist/telemetry/dto/telemetry-status.dto.d.ts.map +1 -0
  362. package/dist/telemetry/dto/telemetry-status.dto.js +12 -0
  363. package/dist/telemetry/dto/telemetry-status.dto.js.map +1 -0
  364. package/dist/telemetry/export/parquet-writer.loader.d.ts +13 -0
  365. package/dist/telemetry/export/parquet-writer.loader.d.ts.map +1 -0
  366. package/dist/telemetry/export/parquet-writer.loader.js +29 -0
  367. package/dist/telemetry/export/parquet-writer.loader.js.map +1 -0
  368. package/dist/telemetry/export/telemetry-export.service.d.ts +39 -0
  369. package/dist/telemetry/export/telemetry-export.service.d.ts.map +1 -0
  370. package/dist/telemetry/export/telemetry-export.service.js +185 -0
  371. package/dist/telemetry/export/telemetry-export.service.js.map +1 -0
  372. package/dist/telemetry/greptime/greptime-host.d.ts +44 -0
  373. package/dist/telemetry/greptime/greptime-host.d.ts.map +1 -0
  374. package/dist/telemetry/greptime/greptime-host.js +114 -0
  375. package/dist/telemetry/greptime/greptime-host.js.map +1 -0
  376. package/dist/telemetry/greptime/greptime.client.d.ts +171 -0
  377. package/dist/telemetry/greptime/greptime.client.d.ts.map +1 -0
  378. package/dist/telemetry/greptime/greptime.client.js +352 -0
  379. package/dist/telemetry/greptime/greptime.client.js.map +1 -0
  380. package/dist/telemetry/greptime/greptime.errors.d.ts +59 -0
  381. package/dist/telemetry/greptime/greptime.errors.d.ts.map +1 -0
  382. package/dist/telemetry/greptime/greptime.errors.js +100 -0
  383. package/dist/telemetry/greptime/greptime.errors.js.map +1 -0
  384. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts +27 -0
  385. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts.map +1 -0
  386. package/dist/telemetry/handlers/telemetry-retention.handler.js +123 -0
  387. package/dist/telemetry/handlers/telemetry-retention.handler.js.map +1 -0
  388. package/dist/telemetry/index.d.ts +37 -0
  389. package/dist/telemetry/index.d.ts.map +1 -0
  390. package/dist/telemetry/index.js +97 -0
  391. package/dist/telemetry/index.js.map +1 -0
  392. package/dist/telemetry/internal/blank-secret.d.ts +3 -0
  393. package/dist/telemetry/internal/blank-secret.d.ts.map +1 -0
  394. package/dist/telemetry/internal/blank-secret.js +14 -0
  395. package/dist/telemetry/internal/blank-secret.js.map +1 -0
  396. package/dist/telemetry/internal/csv.d.ts +9 -0
  397. package/dist/telemetry/internal/csv.d.ts.map +1 -0
  398. package/dist/telemetry/internal/csv.js +23 -0
  399. package/dist/telemetry/internal/csv.js.map +1 -0
  400. package/dist/telemetry/internal/sse.d.ts +23 -0
  401. package/dist/telemetry/internal/sse.d.ts.map +1 -0
  402. package/dist/telemetry/internal/sse.js +43 -0
  403. package/dist/telemetry/internal/sse.js.map +1 -0
  404. package/dist/telemetry/metrics/groups/database.metric-group.d.ts +7 -0
  405. package/dist/telemetry/metrics/groups/database.metric-group.d.ts.map +1 -0
  406. package/dist/telemetry/metrics/groups/database.metric-group.js +159 -0
  407. package/dist/telemetry/metrics/groups/database.metric-group.js.map +1 -0
  408. package/dist/telemetry/metrics/groups/host.metric-group.d.ts +7 -0
  409. package/dist/telemetry/metrics/groups/host.metric-group.d.ts.map +1 -0
  410. package/dist/telemetry/metrics/groups/host.metric-group.js +146 -0
  411. package/dist/telemetry/metrics/groups/host.metric-group.js.map +1 -0
  412. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts +7 -0
  413. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts.map +1 -0
  414. package/dist/telemetry/metrics/groups/nodes.metric-group.js +159 -0
  415. package/dist/telemetry/metrics/groups/nodes.metric-group.js.map +1 -0
  416. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts +7 -0
  417. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts.map +1 -0
  418. package/dist/telemetry/metrics/groups/pipeline.metric-group.js +144 -0
  419. package/dist/telemetry/metrics/groups/pipeline.metric-group.js.map +1 -0
  420. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts +7 -0
  421. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts.map +1 -0
  422. package/dist/telemetry/metrics/groups/queue.metric-group.js +163 -0
  423. package/dist/telemetry/metrics/groups/queue.metric-group.js.map +1 -0
  424. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts +7 -0
  425. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts.map +1 -0
  426. package/dist/telemetry/metrics/groups/uptime.metric-group.js +103 -0
  427. package/dist/telemetry/metrics/groups/uptime.metric-group.js.map +1 -0
  428. package/dist/telemetry/metrics/metric-catalog.d.ts +324 -0
  429. package/dist/telemetry/metrics/metric-catalog.d.ts.map +1 -0
  430. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts +30 -0
  431. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts.map +1 -0
  432. package/dist/telemetry/metrics/metric-catalog.helpers.js +37 -0
  433. package/dist/telemetry/metrics/metric-catalog.helpers.js.map +1 -0
  434. package/dist/telemetry/metrics/metric-catalog.js +180 -0
  435. package/dist/telemetry/metrics/metric-catalog.js.map +1 -0
  436. package/dist/telemetry/metrics/metric-group-registry.service.d.ts +59 -0
  437. package/dist/telemetry/metrics/metric-group-registry.service.d.ts.map +1 -0
  438. package/dist/telemetry/metrics/metric-group-registry.service.js +99 -0
  439. package/dist/telemetry/metrics/metric-group-registry.service.js.map +1 -0
  440. package/dist/telemetry/metrics/metric-group.d.ts +113 -0
  441. package/dist/telemetry/metrics/metric-group.d.ts.map +1 -0
  442. package/dist/telemetry/metrics/metric-group.js +647 -0
  443. package/dist/telemetry/metrics/metric-group.js.map +1 -0
  444. package/dist/telemetry/metrics/metric-group.manifest.d.ts +2 -0
  445. package/dist/telemetry/metrics/metric-group.manifest.d.ts.map +1 -0
  446. package/dist/telemetry/metrics/metric-group.manifest.js +30 -0
  447. package/dist/telemetry/metrics/metric-group.manifest.js.map +1 -0
  448. package/dist/telemetry/metrics/metric-group.registry.d.ts +109 -0
  449. package/dist/telemetry/metrics/metric-group.registry.d.ts.map +1 -0
  450. package/dist/telemetry/metrics/metric-group.registry.js +181 -0
  451. package/dist/telemetry/metrics/metric-group.registry.js.map +1 -0
  452. package/dist/telemetry/metrics/metric-sql.d.ts +98 -0
  453. package/dist/telemetry/metrics/metric-sql.d.ts.map +1 -0
  454. package/dist/telemetry/metrics/metric-sql.js +259 -0
  455. package/dist/telemetry/metrics/metric-sql.js.map +1 -0
  456. package/dist/telemetry/metrics/metric-values.d.ts +19 -0
  457. package/dist/telemetry/metrics/metric-values.d.ts.map +1 -0
  458. package/dist/telemetry/metrics/metric-values.js +97 -0
  459. package/dist/telemetry/metrics/metric-values.js.map +1 -0
  460. package/dist/telemetry/metrics/metric-verdict.d.ts +20 -0
  461. package/dist/telemetry/metrics/metric-verdict.d.ts.map +1 -0
  462. package/dist/telemetry/metrics/metric-verdict.js +218 -0
  463. package/dist/telemetry/metrics/metric-verdict.js.map +1 -0
  464. package/dist/telemetry/ports.d.ts +575 -0
  465. package/dist/telemetry/ports.d.ts.map +1 -0
  466. package/dist/telemetry/ports.js +78 -0
  467. package/dist/telemetry/ports.js.map +1 -0
  468. package/dist/telemetry/query/sql-guard.d.ts +71 -0
  469. package/dist/telemetry/query/sql-guard.d.ts.map +1 -0
  470. package/dist/telemetry/query/sql-guard.js +258 -0
  471. package/dist/telemetry/query/sql-guard.js.map +1 -0
  472. package/dist/telemetry/query/telemetry-availability.d.ts +11 -0
  473. package/dist/telemetry/query/telemetry-availability.d.ts.map +1 -0
  474. package/dist/telemetry/query/telemetry-availability.js +55 -0
  475. package/dist/telemetry/query/telemetry-availability.js.map +1 -0
  476. package/dist/telemetry/query/telemetry-query.errors.d.ts +48 -0
  477. package/dist/telemetry/query/telemetry-query.errors.d.ts.map +1 -0
  478. package/dist/telemetry/query/telemetry-query.errors.js +100 -0
  479. package/dist/telemetry/query/telemetry-query.errors.js.map +1 -0
  480. package/dist/telemetry/query/telemetry-query.service.d.ts +57 -0
  481. package/dist/telemetry/query/telemetry-query.service.d.ts.map +1 -0
  482. package/dist/telemetry/query/telemetry-query.service.js +194 -0
  483. package/dist/telemetry/query/telemetry-query.service.js.map +1 -0
  484. package/dist/telemetry/query/telemetry-schema.service.d.ts +36 -0
  485. package/dist/telemetry/query/telemetry-schema.service.d.ts.map +1 -0
  486. package/dist/telemetry/query/telemetry-schema.service.js +154 -0
  487. package/dist/telemetry/query/telemetry-schema.service.js.map +1 -0
  488. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts +29 -0
  489. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts.map +1 -0
  490. package/dist/telemetry/stack/dto/telemetry-stack.dto.js +27 -0
  491. package/dist/telemetry/stack/dto/telemetry-stack.dto.js.map +1 -0
  492. package/dist/telemetry/stack/stack-agent.client.d.ts +76 -0
  493. package/dist/telemetry/stack/stack-agent.client.d.ts.map +1 -0
  494. package/dist/telemetry/stack/stack-agent.client.js +208 -0
  495. package/dist/telemetry/stack/stack-agent.client.js.map +1 -0
  496. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts +43 -0
  497. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts.map +1 -0
  498. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js +159 -0
  499. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js.map +1 -0
  500. package/dist/telemetry/stack/telemetry-stack.controller.d.ts +14 -0
  501. package/dist/telemetry/stack/telemetry-stack.controller.d.ts.map +1 -0
  502. package/dist/telemetry/stack/telemetry-stack.controller.js +107 -0
  503. package/dist/telemetry/stack/telemetry-stack.controller.js.map +1 -0
  504. package/dist/telemetry/stack/telemetry-stack.service.d.ts +19 -0
  505. package/dist/telemetry/stack/telemetry-stack.service.d.ts.map +1 -0
  506. package/dist/telemetry/stack/telemetry-stack.service.js +122 -0
  507. package/dist/telemetry/stack/telemetry-stack.service.js.map +1 -0
  508. package/dist/telemetry/tasks/telemetry-retention.task.d.ts +8 -0
  509. package/dist/telemetry/tasks/telemetry-retention.task.d.ts.map +1 -0
  510. package/dist/telemetry/tasks/telemetry-retention.task.js +61 -0
  511. package/dist/telemetry/tasks/telemetry-retention.task.js.map +1 -0
  512. package/dist/telemetry/telemetry-admin.controller.d.ts +14 -0
  513. package/dist/telemetry/telemetry-admin.controller.d.ts.map +1 -0
  514. package/dist/telemetry/telemetry-admin.controller.js +148 -0
  515. package/dist/telemetry/telemetry-admin.controller.js.map +1 -0
  516. package/dist/telemetry/telemetry-config.controller.d.ts +14 -0
  517. package/dist/telemetry/telemetry-config.controller.d.ts.map +1 -0
  518. package/dist/telemetry/telemetry-config.controller.js +73 -0
  519. package/dist/telemetry/telemetry-config.controller.js.map +1 -0
  520. package/dist/telemetry/telemetry-explorer.controller.d.ts +14 -0
  521. package/dist/telemetry/telemetry-explorer.controller.d.ts.map +1 -0
  522. package/dist/telemetry/telemetry-explorer.controller.js +193 -0
  523. package/dist/telemetry/telemetry-explorer.controller.js.map +1 -0
  524. package/dist/telemetry/telemetry-settings.service.d.ts +85 -0
  525. package/dist/telemetry/telemetry-settings.service.d.ts.map +1 -0
  526. package/dist/telemetry/telemetry-settings.service.js +278 -0
  527. package/dist/telemetry/telemetry-settings.service.js.map +1 -0
  528. package/dist/telemetry/telemetry-status.service.d.ts +28 -0
  529. package/dist/telemetry/telemetry-status.service.d.ts.map +1 -0
  530. package/dist/telemetry/telemetry-status.service.js +185 -0
  531. package/dist/telemetry/telemetry-status.service.js.map +1 -0
  532. package/dist/telemetry/telemetry-support-bundle.section.d.ts +163 -0
  533. package/dist/telemetry/telemetry-support-bundle.section.d.ts.map +1 -0
  534. package/dist/telemetry/telemetry-support-bundle.section.js +187 -0
  535. package/dist/telemetry/telemetry-support-bundle.section.js.map +1 -0
  536. package/dist/telemetry/telemetry.module.d.ts +35 -0
  537. package/dist/telemetry/telemetry.module.d.ts.map +1 -0
  538. package/dist/telemetry/telemetry.module.js +210 -0
  539. package/dist/telemetry/telemetry.module.js.map +1 -0
  540. package/dist/telemetry/telemetry.options.d.ts +176 -0
  541. package/dist/telemetry/telemetry.options.d.ts.map +1 -0
  542. package/dist/telemetry/telemetry.options.js +246 -0
  543. package/dist/telemetry/telemetry.options.js.map +1 -0
  544. package/dist/telemetry/telemetry.permissions.d.ts +76 -0
  545. package/dist/telemetry/telemetry.permissions.d.ts.map +1 -0
  546. package/dist/telemetry/telemetry.permissions.js +85 -0
  547. package/dist/telemetry/telemetry.permissions.js.map +1 -0
  548. package/dist/telemetry/telemetry.settings.d.ts +79 -0
  549. package/dist/telemetry/telemetry.settings.d.ts.map +1 -0
  550. package/dist/telemetry/telemetry.settings.js +92 -0
  551. package/dist/telemetry/telemetry.settings.js.map +1 -0
  552. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts +17 -0
  553. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts.map +1 -0
  554. package/dist/telemetry/testing/coach-metric-group.fixture.js +128 -0
  555. package/dist/telemetry/testing/coach-metric-group.fixture.js.map +1 -0
  556. package/dist/telemetry/testing/conformance.d.ts +257 -0
  557. package/dist/telemetry/testing/conformance.d.ts.map +1 -0
  558. package/dist/telemetry/testing/conformance.js +626 -0
  559. package/dist/telemetry/testing/conformance.js.map +1 -0
  560. package/dist/telemetry/testing/index.d.ts +10 -0
  561. package/dist/telemetry/testing/index.d.ts.map +1 -0
  562. package/dist/telemetry/testing/index.js +41 -0
  563. package/dist/telemetry/testing/index.js.map +1 -0
  564. package/dist/telemetry/testing/metric-schema.fixture.d.ts +73 -0
  565. package/dist/telemetry/testing/metric-schema.fixture.d.ts.map +1 -0
  566. package/dist/telemetry/testing/metric-schema.fixture.js +362 -0
  567. package/dist/telemetry/testing/metric-schema.fixture.js.map +1 -0
  568. package/dist/telemetry/testing/stub-ports.d.ts +46 -0
  569. package/dist/telemetry/testing/stub-ports.d.ts.map +1 -0
  570. package/dist/telemetry/testing/stub-ports.js +119 -0
  571. package/dist/telemetry/testing/stub-ports.js.map +1 -0
  572. package/dist/testing/conformance-suite.d.ts +106 -0
  573. package/dist/testing/conformance-suite.d.ts.map +1 -0
  574. package/dist/testing/conformance-suite.js +8 -0
  575. package/dist/testing/conformance-suite.js.map +1 -0
  576. package/dist/testing/conformance-suites.d.ts +14 -0
  577. package/dist/testing/conformance-suites.d.ts.map +1 -0
  578. package/dist/testing/conformance-suites.js +27 -0
  579. package/dist/testing/conformance-suites.js.map +1 -0
  580. package/dist/testing/host/in-memory-audit-sink.d.ts +23 -0
  581. package/dist/testing/host/in-memory-audit-sink.d.ts.map +1 -0
  582. package/dist/testing/host/in-memory-audit-sink.js +30 -0
  583. package/dist/testing/host/in-memory-audit-sink.js.map +1 -0
  584. package/dist/testing/host/in-memory-system-settings-store.d.ts +31 -0
  585. package/dist/testing/host/in-memory-system-settings-store.d.ts.map +1 -0
  586. package/dist/testing/host/in-memory-system-settings-store.js +54 -0
  587. package/dist/testing/host/in-memory-system-settings-store.js.map +1 -0
  588. package/dist/testing/host/index.d.ts +4 -0
  589. package/dist/testing/host/index.d.ts.map +1 -0
  590. package/dist/testing/host/index.js +13 -0
  591. package/dist/testing/host/index.js.map +1 -0
  592. package/dist/testing/host/test-platform-host.d.ts +35 -0
  593. package/dist/testing/host/test-platform-host.d.ts.map +1 -0
  594. package/dist/testing/host/test-platform-host.js +81 -0
  595. package/dist/testing/host/test-platform-host.js.map +1 -0
  596. package/dist/testing/index.d.ts +12 -0
  597. package/dist/testing/index.d.ts.map +1 -0
  598. package/dist/testing/index.js +32 -0
  599. package/dist/testing/index.js.map +1 -0
  600. package/dist/testing/prisma-schema.d.ts +99 -0
  601. package/dist/testing/prisma-schema.d.ts.map +1 -0
  602. package/dist/testing/prisma-schema.js +175 -0
  603. package/dist/testing/prisma-schema.js.map +1 -0
  604. package/dist/testing/run-platform-conformance.d.ts +70 -0
  605. package/dist/testing/run-platform-conformance.d.ts.map +1 -0
  606. package/dist/testing/run-platform-conformance.js +77 -0
  607. package/dist/testing/run-platform-conformance.js.map +1 -0
  608. package/dist/testing/suites/cron-enqueue-only.d.ts +46 -0
  609. package/dist/testing/suites/cron-enqueue-only.d.ts.map +1 -0
  610. package/dist/testing/suites/cron-enqueue-only.js +177 -0
  611. package/dist/testing/suites/cron-enqueue-only.js.map +1 -0
  612. package/dist/testing/suites/user-owned-data.d.ts +86 -0
  613. package/dist/testing/suites/user-owned-data.d.ts.map +1 -0
  614. package/dist/testing/suites/user-owned-data.js +329 -0
  615. package/dist/testing/suites/user-owned-data.js.map +1 -0
  616. package/package.json +129 -4
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ // `@marinoscar/platform-api/testing`: the conformance harness. Documented in ./README.md.
3
+ //
4
+ // Peer-free on purpose: nothing under src/testing imports Jest or Vitest, so
5
+ // one harness serves the Jest API and the Vitest web and CLI apps
6
+ // (test/testing/peer-free.spec.ts).
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.readSchemaText = exports.readSchemaDatamodel = exports.parsePrismaSchema = exports.effectiveOnDelete = exports.userOwnedDataSuite = exports.TEST_REQUIRED_PERMISSIONS_KEY = exports.TEST_PERMISSIONS_HEADER = exports.InMemorySystemSettingsStore = exports.InMemoryAuditSink = exports.createTestPlatformHost = exports.cronEnqueueOnlySuite = exports.conformanceSuites = exports.runPlatformConformance = void 0;
9
+ var run_platform_conformance_1 = require("./run-platform-conformance");
10
+ Object.defineProperty(exports, "runPlatformConformance", { enumerable: true, get: function () { return run_platform_conformance_1.runPlatformConformance; } });
11
+ var conformance_suites_1 = require("./conformance-suites");
12
+ Object.defineProperty(exports, "conformanceSuites", { enumerable: true, get: function () { return conformance_suites_1.conformanceSuites; } });
13
+ var cron_enqueue_only_1 = require("./suites/cron-enqueue-only");
14
+ Object.defineProperty(exports, "cronEnqueueOnlySuite", { enumerable: true, get: function () { return cron_enqueue_only_1.cronEnqueueOnlySuite; } });
15
+ // Test doubles for the host ports (issue #696): a header-driven platform host
16
+ // and in-memory audit and settings ports, for PACKAGE tests only.
17
+ var index_1 = require("./host/index");
18
+ Object.defineProperty(exports, "createTestPlatformHost", { enumerable: true, get: function () { return index_1.createTestPlatformHost; } });
19
+ Object.defineProperty(exports, "InMemoryAuditSink", { enumerable: true, get: function () { return index_1.InMemoryAuditSink; } });
20
+ Object.defineProperty(exports, "InMemorySystemSettingsStore", { enumerable: true, get: function () { return index_1.InMemorySystemSettingsStore; } });
21
+ Object.defineProperty(exports, "TEST_PERMISSIONS_HEADER", { enumerable: true, get: function () { return index_1.TEST_PERMISSIONS_HEADER; } });
22
+ Object.defineProperty(exports, "TEST_REQUIRED_PERMISSIONS_KEY", { enumerable: true, get: function () { return index_1.TEST_REQUIRED_PERMISSIONS_KEY; } });
23
+ // The `user-owned-data` suite (issue #699; origin #688) and the small Prisma
24
+ // schema reader behind it (models, fields, relations, onDelete).
25
+ var user_owned_data_1 = require("./suites/user-owned-data");
26
+ Object.defineProperty(exports, "userOwnedDataSuite", { enumerable: true, get: function () { return user_owned_data_1.userOwnedDataSuite; } });
27
+ var prisma_schema_1 = require("./prisma-schema");
28
+ Object.defineProperty(exports, "effectiveOnDelete", { enumerable: true, get: function () { return prisma_schema_1.effectiveOnDelete; } });
29
+ Object.defineProperty(exports, "parsePrismaSchema", { enumerable: true, get: function () { return prisma_schema_1.parsePrismaSchema; } });
30
+ Object.defineProperty(exports, "readSchemaDatamodel", { enumerable: true, get: function () { return prisma_schema_1.readSchemaDatamodel; } });
31
+ Object.defineProperty(exports, "readSchemaText", { enumerable: true, get: function () { return prisma_schema_1.readSchemaText; } });
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":";AAAA,0FAA0F;AAC1F,EAAE;AACF,6EAA6E;AAC7E,kEAAkE;AAClE,oCAAoC;;;AAEpC,uEAAoE;AAA3D,kIAAA,sBAAsB,OAAA;AAE/B,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA;AAS1B,gEAAkE;AAAzD,yHAAA,oBAAoB,OAAA;AAG7B,8EAA8E;AAC9E,kEAAkE;AAClE,sCAMsB;AALpB,+GAAA,sBAAsB,OAAA;AACtB,0GAAA,iBAAiB,OAAA;AACjB,oHAAA,2BAA2B,OAAA;AAC3B,gHAAA,uBAAuB,OAAA;AACvB,sHAAA,6BAA6B,OAAA;AAG/B,6EAA6E;AAC7E,iEAAiE;AACjE,4DAA8D;AAArD,qHAAA,kBAAkB,OAAA;AAE3B,iDAA4G;AAAnG,kHAAA,iBAAiB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,oHAAA,mBAAmB,OAAA;AAAE,+GAAA,cAAc,OAAA"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * A relation's arguments, as written in `@relation(...)`.
3
+ *
4
+ * @stability experimental
5
+ */
6
+ export interface DatamodelRelation {
7
+ /** The relation name, when one is given (`@relation("Name", ...)` or `name: "Name"`). */
8
+ readonly name?: string;
9
+ /** Foreign key fields on this side; empty on the back-relation side. */
10
+ readonly fields: readonly string[];
11
+ /** The referenced fields on the other model. */
12
+ readonly references: readonly string[];
13
+ /** The `onDelete` written in the schema, if any. See {@link effectiveOnDelete}. */
14
+ readonly onDelete?: string;
15
+ }
16
+ /**
17
+ * One field of a parsed model.
18
+ *
19
+ * @stability experimental
20
+ */
21
+ export interface DatamodelField {
22
+ /** The field name. */
23
+ readonly name: string;
24
+ /** The type name without `?` or `[]`: `String`, `User`, `Role`... */
25
+ readonly type: string;
26
+ /** Whether the type ends in `[]`. */
27
+ readonly isList: boolean;
28
+ /** Whether the type ends in `?`. */
29
+ readonly isOptional: boolean;
30
+ /** Present when the field has a `@relation(...)` attribute. */
31
+ readonly relation?: DatamodelRelation;
32
+ }
33
+ /**
34
+ * One parsed model.
35
+ *
36
+ * @stability experimental
37
+ */
38
+ export interface DatamodelModel {
39
+ /** The model name. */
40
+ readonly name: string;
41
+ /** Its fields, in schema order. */
42
+ readonly fields: readonly DatamodelField[];
43
+ }
44
+ /** Removes a `//` comment (including `///` doc comments), ignoring `//` inside a string literal. */
45
+ export declare function stripLineComment(line: string): string;
46
+ /**
47
+ * Parses the models of a Prisma schema.
48
+ *
49
+ * @param source - the schema text (one file, or several joined).
50
+ * @returns the models in schema order; enums, views, generators and datasources are skipped.
51
+ *
52
+ * @stability experimental
53
+ * @example
54
+ * ```ts
55
+ * parsePrismaSchema('model Note {\n id String @id\n}').map((m) => m.name); // ['Note']
56
+ * ```
57
+ */
58
+ export declare function parsePrismaSchema(source: string): DatamodelModel[];
59
+ /**
60
+ * The text of a schema: one file, or every `*.prisma` file of a folder in
61
+ * name order (the order Prisma loads them, which is the order of the
62
+ * generated client's models).
63
+ *
64
+ * @param path - a `schema.prisma` file or a folder of `*.prisma` files.
65
+ *
66
+ * @stability experimental
67
+ * @example
68
+ * ```ts
69
+ * const text = readSchemaText(join(__dirname, '..', '..', 'prisma', 'schema'));
70
+ * ```
71
+ */
72
+ export declare function readSchemaText(path: string): string;
73
+ /**
74
+ * The models of the schema at `path` (a file or a folder).
75
+ *
76
+ * @param path - see {@link readSchemaText}.
77
+ *
78
+ * @stability experimental
79
+ * @example
80
+ * ```ts
81
+ * const models = readSchemaDatamodel(join(__dirname, '..', '..', 'prisma', 'schema'));
82
+ * ```
83
+ */
84
+ export declare function readSchemaDatamodel(path: string): DatamodelModel[];
85
+ /**
86
+ * The referential action Postgres actually applies: the one written, or
87
+ * Prisma's default (`SetNull` for an optional relation, `Restrict` for a
88
+ * required one).
89
+ *
90
+ * @param field - a relation field.
91
+ *
92
+ * @stability experimental
93
+ * @example
94
+ * ```ts
95
+ * effectiveOnDelete({ name: 'user', type: 'User', isList: false, isOptional: true, relation: { fields: ['userId'], references: ['id'] } }); // 'SetNull'
96
+ * ```
97
+ */
98
+ export declare function effectiveOnDelete(field: DatamodelField): string;
99
+ //# sourceMappingURL=prisma-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prisma-schema.d.ts","sourceRoot":"","sources":["../../src/testing/prisma-schema.ts"],"names":[],"mappings":"AAuBA;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,gDAAgD;IAChD,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,oCAAoC;IACpC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;CAC5C;AAED,oGAAoG;AACpG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAarD;AA2BD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAyClE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,CAElE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAE/D"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ // =============================================================================
3
+ // A minimal reader for a Prisma schema's models and relations (#688, moved to
4
+ // the testing slice by #699)
5
+ // =============================================================================
6
+ //
7
+ // WHY PARSE THE FILE: the `userOwnedData` suite needs each relation's foreign
8
+ // key fields and `onDelete`. Prisma 7's generated client still exports
9
+ // `Prisma.dmmf.datamodel`, but its relation fields carry only `name`, `kind`,
10
+ // `type` and `relationName`: no `relationFromFields`, no `relationOnDelete`.
11
+ // The schema file is the only place they are written down. Parsing it also
12
+ // keeps this package free of any generated client and of `@prisma/internals`.
13
+ //
14
+ // Deliberately small: models, their fields, and `@relation(...)` arguments.
15
+ // Enums, views, generators, datasources and block attributes (`@@...`) are
16
+ // skipped. `extend model` blocks are not read (the app's composed schema has
17
+ // none). The package's spec pins what it understands; the reference app's
18
+ // apps/api/test/prisma/schema-datamodel.spec.ts proves it agrees with the
19
+ // generated client on the real schema.
20
+ // =============================================================================
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.stripLineComment = stripLineComment;
23
+ exports.parsePrismaSchema = parsePrismaSchema;
24
+ exports.readSchemaText = readSchemaText;
25
+ exports.readSchemaDatamodel = readSchemaDatamodel;
26
+ exports.effectiveOnDelete = effectiveOnDelete;
27
+ const node_fs_1 = require("node:fs");
28
+ const node_path_1 = require("node:path");
29
+ /** Removes a `//` comment (including `///` doc comments), ignoring `//` inside a string literal. */
30
+ function stripLineComment(line) {
31
+ let inString = false;
32
+ for (let i = 0; i < line.length; i += 1) {
33
+ const ch = line[i];
34
+ if (ch === '\\' && inString) {
35
+ i += 1;
36
+ }
37
+ else if (ch === '"') {
38
+ inString = !inString;
39
+ }
40
+ else if (!inString && ch === '/' && line[i + 1] === '/') {
41
+ return line.slice(0, i);
42
+ }
43
+ }
44
+ return line;
45
+ }
46
+ function listArgument(args, key) {
47
+ const match = new RegExp(`\\b${key}\\s*:\\s*\\[([^\\]]*)\\]`).exec(args);
48
+ if (!match)
49
+ return [];
50
+ return match[1]
51
+ .split(',')
52
+ .map((part) => part.trim())
53
+ .filter((part) => part.length > 0);
54
+ }
55
+ function parseRelation(attributes) {
56
+ const match = /@relation\(([^)]*)\)/.exec(attributes);
57
+ if (!match) {
58
+ return /@relation\b/.test(attributes) ? { fields: [], references: [] } : undefined;
59
+ }
60
+ const args = match[1];
61
+ const named = /\bname\s*:\s*"([^"]*)"/.exec(args) ?? /^\s*"([^"]*)"/.exec(args);
62
+ const onDelete = /\bonDelete\s*:\s*(\w+)/.exec(args);
63
+ return {
64
+ ...(named ? { name: named[1] } : {}),
65
+ fields: listArgument(args, 'fields'),
66
+ references: listArgument(args, 'references'),
67
+ ...(onDelete ? { onDelete: onDelete[1] } : {}),
68
+ };
69
+ }
70
+ /**
71
+ * Parses the models of a Prisma schema.
72
+ *
73
+ * @param source - the schema text (one file, or several joined).
74
+ * @returns the models in schema order; enums, views, generators and datasources are skipped.
75
+ *
76
+ * @stability experimental
77
+ * @example
78
+ * ```ts
79
+ * parsePrismaSchema('model Note {\n id String @id\n}').map((m) => m.name); // ['Note']
80
+ * ```
81
+ */
82
+ function parsePrismaSchema(source) {
83
+ const models = [];
84
+ let current;
85
+ let otherBlock = false;
86
+ for (const raw of source.split(/\r?\n/)) {
87
+ const line = stripLineComment(raw).trim();
88
+ if (line === '')
89
+ continue;
90
+ if (current === undefined && !otherBlock) {
91
+ const model = /^model\s+(\w+)\s*\{$/.exec(line);
92
+ if (model) {
93
+ current = { name: model[1], fields: [] };
94
+ }
95
+ else if (/^\w+\s+\w+\s*\{$/.test(line)) {
96
+ otherBlock = true; // enum, view, type, generator, datasource
97
+ }
98
+ continue;
99
+ }
100
+ if (line === '}') {
101
+ if (current)
102
+ models.push(current);
103
+ current = undefined;
104
+ otherBlock = false;
105
+ continue;
106
+ }
107
+ if (otherBlock || current === undefined || line.startsWith('@@'))
108
+ continue;
109
+ const field = /^(\w+)\s+(\w+)(\[\])?(\?)?(.*)$/.exec(line);
110
+ if (!field)
111
+ continue;
112
+ const relation = parseRelation(field[5]);
113
+ current.fields.push({
114
+ name: field[1],
115
+ type: field[2],
116
+ isList: field[3] === '[]',
117
+ isOptional: field[4] === '?',
118
+ ...(relation ? { relation } : {}),
119
+ });
120
+ }
121
+ return models;
122
+ }
123
+ /**
124
+ * The text of a schema: one file, or every `*.prisma` file of a folder in
125
+ * name order (the order Prisma loads them, which is the order of the
126
+ * generated client's models).
127
+ *
128
+ * @param path - a `schema.prisma` file or a folder of `*.prisma` files.
129
+ *
130
+ * @stability experimental
131
+ * @example
132
+ * ```ts
133
+ * const text = readSchemaText(join(__dirname, '..', '..', 'prisma', 'schema'));
134
+ * ```
135
+ */
136
+ function readSchemaText(path) {
137
+ if (!(0, node_fs_1.statSync)(path).isDirectory())
138
+ return (0, node_fs_1.readFileSync)(path, 'utf8');
139
+ return (0, node_fs_1.readdirSync)(path)
140
+ .filter((name) => name.endsWith('.prisma'))
141
+ .sort()
142
+ .map((name) => (0, node_fs_1.readFileSync)((0, node_path_1.join)(path, name), 'utf8'))
143
+ .join('\n');
144
+ }
145
+ /**
146
+ * The models of the schema at `path` (a file or a folder).
147
+ *
148
+ * @param path - see {@link readSchemaText}.
149
+ *
150
+ * @stability experimental
151
+ * @example
152
+ * ```ts
153
+ * const models = readSchemaDatamodel(join(__dirname, '..', '..', 'prisma', 'schema'));
154
+ * ```
155
+ */
156
+ function readSchemaDatamodel(path) {
157
+ return parsePrismaSchema(readSchemaText(path));
158
+ }
159
+ /**
160
+ * The referential action Postgres actually applies: the one written, or
161
+ * Prisma's default (`SetNull` for an optional relation, `Restrict` for a
162
+ * required one).
163
+ *
164
+ * @param field - a relation field.
165
+ *
166
+ * @stability experimental
167
+ * @example
168
+ * ```ts
169
+ * effectiveOnDelete({ name: 'user', type: 'User', isList: false, isOptional: true, relation: { fields: ['userId'], references: ['id'] } }); // 'SetNull'
170
+ * ```
171
+ */
172
+ function effectiveOnDelete(field) {
173
+ return field.relation?.onDelete ?? (field.isOptional ? 'SetNull' : 'Restrict');
174
+ }
175
+ //# sourceMappingURL=prisma-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prisma-schema.js","sourceRoot":"","sources":["../../src/testing/prisma-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { ConformanceTestApi } from './conformance-suite';
2
+ import type { CronEnqueueOnlyOptions } from './suites/cron-enqueue-only';
3
+ import type { UserOwnedDataOptions } from './suites/user-owned-data';
4
+ /**
5
+ * The suites {@link runPlatformConformance} can run, by option key: each
6
+ * entry is the suite's options, or `false` to opt out. An interface so a slice
7
+ * that ships a suite adds its key by module augmentation (the telemetry slice's
8
+ * `telemetry`, declared in `@marinoscar/platform-api/telemetry/testing`) and
9
+ * the runner is not edited.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * declare module '@marinoscar/platform-api/testing' {
14
+ * interface PlatformConformanceSuiteOptions {
15
+ * myFeature?: MyFeatureOptions | false;
16
+ * }
17
+ * }
18
+ * ```
19
+ *
20
+ * @stability experimental
21
+ */
22
+ export interface PlatformConformanceSuiteOptions {
23
+ /** The `cron-enqueue-only` suite: its options, or `false` to opt out. */
24
+ cronEnqueueOnly?: CronEnqueueOnlyOptions | false;
25
+ /** The `user-owned-data` suite: its options, or `false` to opt out. */
26
+ userOwnedData?: UserOwnedDataOptions | false;
27
+ }
28
+ /**
29
+ * What an app passes to {@link runPlatformConformance}.
30
+ *
31
+ * @extensionPoint option
32
+ * @stability experimental
33
+ */
34
+ export interface PlatformConformanceOptions {
35
+ /** Absolute directories holding the app's non-test TypeScript sources, for example `[join(__dirname, '../../src')]`. */
36
+ sourceRoots: readonly string[];
37
+ /**
38
+ * One entry per suite. Pass the suite's options to run it, or `false` to
39
+ * opt out (the opt-out stays visible in the test output). A suite left out
40
+ * does not run; an unknown key throws, so a typo cannot disable a check.
41
+ * A suite that ships with a slice is registered by importing that slice's
42
+ * testing entry (the telemetry suite: `@marinoscar/platform-api/telemetry/testing`).
43
+ */
44
+ suites: PlatformConformanceSuiteOptions;
45
+ /** Defaults to the globals `describe`/`it`/`expect` (Jest, or Vitest with `globals: true`). */
46
+ testApi?: ConformanceTestApi;
47
+ }
48
+ /**
49
+ * Registers one `describe` block per enabled conformance suite. Call it at the
50
+ * top level of a spec file; the app keeps its own data (exemptions, minimums)
51
+ * and the package owns the scan.
52
+ *
53
+ * @param options - see {@link PlatformConformanceOptions}.
54
+ * @throws Error `unknown conformance suite` when `options.suites` names a suite that is not registered.
55
+ * @throws Error when no test API is available, or `sourceRoots` is empty.
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * // apps/api/test/jobs/cron-enqueue-only.spec.ts
60
+ * runPlatformConformance({
61
+ * sourceRoots: [join(__dirname, '..', '..', 'src')],
62
+ * suites: { cronEnqueueOnly: { exempt: EXEMPT, minCronFiles: 8 } },
63
+ * });
64
+ * ```
65
+ *
66
+ * @extensionPoint option
67
+ * @stability experimental
68
+ */
69
+ export declare function runPlatformConformance(options: PlatformConformanceOptions): void;
70
+ //# sourceMappingURL=run-platform-conformance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-platform-conformance.d.ts","sourceRoot":"","sources":["../../src/testing/run-platform-conformance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAqB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,+BAA+B;IAC9C,yEAAyE;IACzE,eAAe,CAAC,EAAE,sBAAsB,GAAG,KAAK,CAAC;IACjD,uEAAuE;IACvE,aAAa,CAAC,EAAE,oBAAoB,GAAG,KAAK,CAAC;CAC9C;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,wHAAwH;IACxH,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;;;OAMG;IACH,MAAM,EAAE,+BAA+B,CAAC;IACxC,+FAA+F;IAC/F,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAkBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,0BAA0B,GAAG,IAAI,CA+ChF"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runPlatformConformance = runPlatformConformance;
4
+ const conformance_suites_1 = require("./conformance-suites");
5
+ /** `cronEnqueueOnly` for `cron-enqueue-only`: how the app spells a suite id. */
6
+ function optionKeyOf(id) {
7
+ return id.replace(/-([a-z0-9])/g, (_match, char) => char.toUpperCase());
8
+ }
9
+ /** The runner's own globals, or a clear error when there are none. */
10
+ function globalTestApi() {
11
+ const g = globalThis;
12
+ if (typeof g.describe !== 'function' || typeof g.it !== 'function' || typeof g.expect !== 'function') {
13
+ throw new Error('runPlatformConformance: no global describe/it/expect. Run it under Jest, under Vitest with `globals: true`, or pass `testApi`.');
14
+ }
15
+ return { describe: g.describe, it: g.it, expect: g.expect };
16
+ }
17
+ /**
18
+ * Registers one `describe` block per enabled conformance suite. Call it at the
19
+ * top level of a spec file; the app keeps its own data (exemptions, minimums)
20
+ * and the package owns the scan.
21
+ *
22
+ * @param options - see {@link PlatformConformanceOptions}.
23
+ * @throws Error `unknown conformance suite` when `options.suites` names a suite that is not registered.
24
+ * @throws Error when no test API is available, or `sourceRoots` is empty.
25
+ *
26
+ * @example
27
+ * ```ts
28
+ * // apps/api/test/jobs/cron-enqueue-only.spec.ts
29
+ * runPlatformConformance({
30
+ * sourceRoots: [join(__dirname, '..', '..', 'src')],
31
+ * suites: { cronEnqueueOnly: { exempt: EXEMPT, minCronFiles: 8 } },
32
+ * });
33
+ * ```
34
+ *
35
+ * @extensionPoint option
36
+ * @stability experimental
37
+ */
38
+ function runPlatformConformance(options) {
39
+ conformance_suites_1.conformanceSuites.freeze();
40
+ const byOptionKey = new Map(conformance_suites_1.conformanceSuites.list().map((suite) => [optionKeyOf(suite.id), suite]));
41
+ const requested = Object.entries(options.suites);
42
+ for (const [key] of requested) {
43
+ if (!byOptionKey.has(key)) {
44
+ throw new Error(`runPlatformConformance: unknown conformance suite "${key}". Known suites: ${[...byOptionKey.keys()].join(', ') || '(none)'}. ` +
45
+ "A suite that ships with a slice registers when the slice's testing entry is imported (telemetry: '@marinoscar/platform-api/telemetry/testing').");
46
+ }
47
+ }
48
+ if (options.sourceRoots.length === 0) {
49
+ throw new Error('runPlatformConformance: sourceRoots is empty, so there is nothing to scan.');
50
+ }
51
+ const api = options.testApi ?? globalTestApi();
52
+ for (const [key, suiteOptions] of requested) {
53
+ const suite = byOptionKey.get(key);
54
+ if (suiteOptions === undefined)
55
+ continue;
56
+ if (suiteOptions === false) {
57
+ api.describe(suite.title, () => {
58
+ api.it(`${suite.id}: disabled by the app`, () => undefined);
59
+ });
60
+ continue;
61
+ }
62
+ // One scan per suite, on first use: the scan runs inside the first test, so
63
+ // a misconfiguration fails that test with its message instead of breaking
64
+ // collection of the whole spec file.
65
+ let report;
66
+ const scan = () => {
67
+ report ??= suite.check({ sourceRoots: options.sourceRoots }, suiteOptions);
68
+ return report;
69
+ };
70
+ api.describe(suite.title, () => {
71
+ for (const testCase of suite.cases(suiteOptions)) {
72
+ api.it(testCase.name, () => testCase.run(scan(), api.expect));
73
+ }
74
+ });
75
+ }
76
+ }
77
+ //# sourceMappingURL=run-platform-conformance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-platform-conformance.js","sourceRoot":"","sources":["../../src/testing/run-platform-conformance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { ConformanceSuite } from '../conformance-suite';
2
+ /**
3
+ * How an app configures the cron suite.
4
+ *
5
+ * @example
6
+ * ```ts
7
+ * const options: CronEnqueueOnlyOptions = {
8
+ * exempt: [{ file: 'jobs/tasks/job-stuck-reset.task.ts', why: 'The lease reaper recovers abandoned jobs; recovery cannot depend on the queue it recovers.' }],
9
+ * minCronFiles: 8,
10
+ * };
11
+ * ```
12
+ *
13
+ * @extensionPoint option
14
+ * @stability experimental
15
+ */
16
+ export interface CronEnqueueOnlyOptions {
17
+ /**
18
+ * Files allowed to work inline, as paths relative to the source root that
19
+ * contains them (`/` separators). Each needs a written reason of more than 40
20
+ * characters; the suite fails when an exempt file holds no `@Cron`.
21
+ */
22
+ exempt: ReadonlyArray<{
23
+ /** The exempt file, relative to its source root, with `/` separators. */
24
+ file: string;
25
+ /** Why the work must not be a job; more than 40 characters. */
26
+ why: string;
27
+ }>;
28
+ /** Vacuity guard: at least this many files with a `@Cron` must be found. */
29
+ minCronFiles: number;
30
+ /** Extra markers an app adds for its own work helpers. Additive only; the platform markers always apply. */
31
+ extraWorkMarkers?: ReadonlyArray<{
32
+ /** Matches a cron body that does the work itself. */
33
+ pattern: RegExp;
34
+ /** What the match is, completing `a @Cron body containing ...`. */
35
+ what: string;
36
+ }>;
37
+ }
38
+ /**
39
+ * The suite behind `runPlatformConformance({ suites: { cronEnqueueOnly } })`:
40
+ * every `@Cron` body enqueues a job and contains no marker of inline work.
41
+ *
42
+ * @extensionPoint registry
43
+ * @stability experimental
44
+ */
45
+ export declare const cronEnqueueOnlySuite: ConformanceSuite<CronEnqueueOnlyOptions>;
46
+ //# sourceMappingURL=cron-enqueue-only.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron-enqueue-only.d.ts","sourceRoot":"","sources":["../../../src/testing/suites/cron-enqueue-only.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAKV,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,MAAM,EAAE,aAAa,CAAC;QACpB,yEAAyE;QACzE,IAAI,EAAE,MAAM,CAAC;QACb,+DAA+D;QAC/D,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;IACrB,4GAA4G;IAC5G,gBAAgB,CAAC,EAAE,aAAa,CAAC;QAC/B,qDAAqD;QACrD,OAAO,EAAE,MAAM,CAAC;QAChB,mEAAmE;QACnE,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;CACJ;AAwJD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,gBAAgB,CAAC,sBAAsB,CAMzE,CAAC"}