@ketvietlab/ketjs 0.1.2 → 0.1.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 (299) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +8 -2
  3. package/dist/agent/capabilities.d.ts +1 -3
  4. package/dist/agent/capabilities.d.ts.map +1 -1
  5. package/dist/agent/capabilities.js +10 -1
  6. package/dist/agent/capabilities.js.map +1 -1
  7. package/dist/agent/permissions.d.ts +43 -1
  8. package/dist/agent/permissions.d.ts.map +1 -1
  9. package/dist/agent/permissions.js +50 -2
  10. package/dist/agent/permissions.js.map +1 -1
  11. package/dist/cli.js +246 -97
  12. package/dist/cli.js.map +1 -1
  13. package/dist/codegen/dts.d.ts.map +1 -1
  14. package/dist/codegen/dts.js +1 -0
  15. package/dist/codegen/dts.js.map +1 -1
  16. package/dist/data/changeset.d.ts +12 -0
  17. package/dist/data/changeset.d.ts.map +1 -1
  18. package/dist/data/changeset.js +73 -17
  19. package/dist/data/changeset.js.map +1 -1
  20. package/dist/data/expr.d.ts +16 -0
  21. package/dist/data/expr.d.ts.map +1 -1
  22. package/dist/data/expr.js +33 -5
  23. package/dist/data/expr.js.map +1 -1
  24. package/dist/data/fleet.d.ts +41 -1
  25. package/dist/data/fleet.d.ts.map +1 -1
  26. package/dist/data/fleet.js +100 -11
  27. package/dist/data/fleet.js.map +1 -1
  28. package/dist/data/migrate.d.ts +20 -0
  29. package/dist/data/migrate.d.ts.map +1 -1
  30. package/dist/data/migrate.js +86 -3
  31. package/dist/data/migrate.js.map +1 -1
  32. package/dist/data/physical.d.ts +5 -0
  33. package/dist/data/physical.d.ts.map +1 -0
  34. package/dist/data/physical.js +196 -0
  35. package/dist/data/physical.js.map +1 -0
  36. package/dist/data/pool.d.ts +2 -1
  37. package/dist/data/pool.d.ts.map +1 -1
  38. package/dist/data/pool.js +159 -31
  39. package/dist/data/pool.js.map +1 -1
  40. package/dist/data/query.d.ts +10 -1
  41. package/dist/data/query.d.ts.map +1 -1
  42. package/dist/data/query.js +136 -27
  43. package/dist/data/query.js.map +1 -1
  44. package/dist/data/sqlite.d.ts.map +1 -1
  45. package/dist/data/sqlite.js +350 -52
  46. package/dist/data/sqlite.js.map +1 -1
  47. package/dist/data/time.d.ts +13 -0
  48. package/dist/data/time.d.ts.map +1 -1
  49. package/dist/data/time.js +61 -17
  50. package/dist/data/time.js.map +1 -1
  51. package/dist/index.d.ts +43 -22
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +32 -16
  54. package/dist/index.js.map +1 -1
  55. package/dist/kernel/audit.d.ts +27 -0
  56. package/dist/kernel/audit.d.ts.map +1 -0
  57. package/dist/kernel/audit.js +67 -0
  58. package/dist/kernel/audit.js.map +1 -0
  59. package/dist/kernel/classification.d.ts +26 -0
  60. package/dist/kernel/classification.d.ts.map +1 -0
  61. package/dist/kernel/classification.js +73 -0
  62. package/dist/kernel/classification.js.map +1 -0
  63. package/dist/kernel/compose.d.ts +6 -2
  64. package/dist/kernel/compose.d.ts.map +1 -1
  65. package/dist/kernel/compose.js +269 -15
  66. package/dist/kernel/compose.js.map +1 -1
  67. package/dist/kernel/define.d.ts +2 -3
  68. package/dist/kernel/define.d.ts.map +1 -1
  69. package/dist/kernel/define.js +22 -12
  70. package/dist/kernel/define.js.map +1 -1
  71. package/dist/kernel/diff.d.ts.map +1 -1
  72. package/dist/kernel/diff.js +28 -4
  73. package/dist/kernel/diff.js.map +1 -1
  74. package/dist/kernel/graph.js +1 -1
  75. package/dist/kernel/graph.js.map +1 -1
  76. package/dist/kernel/i18n.d.ts +10 -1
  77. package/dist/kernel/i18n.d.ts.map +1 -1
  78. package/dist/kernel/i18n.js +34 -1
  79. package/dist/kernel/i18n.js.map +1 -1
  80. package/dist/kernel/layout.d.ts +97 -0
  81. package/dist/kernel/layout.d.ts.map +1 -1
  82. package/dist/kernel/layout.js +294 -12
  83. package/dist/kernel/layout.js.map +1 -1
  84. package/dist/kernel/menu.d.ts +33 -2
  85. package/dist/kernel/menu.d.ts.map +1 -1
  86. package/dist/kernel/menu.js +99 -7
  87. package/dist/kernel/menu.js.map +1 -1
  88. package/dist/kernel/modules.d.ts +3 -3
  89. package/dist/kernel/modules.d.ts.map +1 -1
  90. package/dist/kernel/modules.js +21 -21
  91. package/dist/kernel/modules.js.map +1 -1
  92. package/dist/kernel/permissions.d.ts +10 -0
  93. package/dist/kernel/permissions.d.ts.map +1 -0
  94. package/dist/kernel/permissions.js +365 -0
  95. package/dist/kernel/permissions.js.map +1 -0
  96. package/dist/kernel/schedule.d.ts +23 -0
  97. package/dist/kernel/schedule.d.ts.map +1 -0
  98. package/dist/kernel/schedule.js +83 -0
  99. package/dist/kernel/schedule.js.map +1 -0
  100. package/dist/kernel/types.d.ts.map +1 -1
  101. package/dist/kernel/types.js +5 -4
  102. package/dist/kernel/types.js.map +1 -1
  103. package/dist/kernel/workspace.d.ts +92 -14
  104. package/dist/kernel/workspace.d.ts.map +1 -1
  105. package/dist/kernel/workspace.js +128 -49
  106. package/dist/kernel/workspace.js.map +1 -1
  107. package/dist/pdf/assets/Inter-Bold.ttf +0 -0
  108. package/dist/pdf/assets/Inter-Regular.ttf +0 -0
  109. package/dist/pdf/assets/Inter-SemiBold.ttf +0 -0
  110. package/dist/pdf/assets/LICENSE.txt +92 -0
  111. package/dist/pdf/font.d.ts +10 -0
  112. package/dist/pdf/font.d.ts.map +1 -0
  113. package/dist/pdf/font.js +83 -0
  114. package/dist/pdf/font.js.map +1 -0
  115. package/dist/pdf/image.d.ts +8 -0
  116. package/dist/pdf/image.d.ts.map +1 -0
  117. package/dist/pdf/image.js +94 -0
  118. package/dist/pdf/image.js.map +1 -0
  119. package/dist/pdf/index.d.ts +15 -0
  120. package/dist/pdf/index.d.ts.map +1 -0
  121. package/dist/pdf/index.js +17 -0
  122. package/dist/pdf/index.js.map +1 -0
  123. package/dist/pdf/markup.d.ts +19 -0
  124. package/dist/pdf/markup.d.ts.map +1 -0
  125. package/dist/pdf/markup.js +146 -0
  126. package/dist/pdf/markup.js.map +1 -0
  127. package/dist/pdf/render.d.ts +14 -0
  128. package/dist/pdf/render.d.ts.map +1 -0
  129. package/dist/pdf/render.js +387 -0
  130. package/dist/pdf/render.js.map +1 -0
  131. package/dist/scaffold/index.js +6 -6
  132. package/dist/scaffold/index.js.map +1 -1
  133. package/dist/scaffold/templates/{app.test.ts.tmpl → deployment.test.ts.tmpl} +3 -3
  134. package/dist/scaffold/templates/ket.workspace.ts.tmpl +4 -6
  135. package/dist/scaffold/templates/module.ts.tmpl +1 -4
  136. package/dist/server/assets.d.ts +23 -0
  137. package/dist/server/assets.d.ts.map +1 -0
  138. package/dist/server/assets.js +97 -0
  139. package/dist/server/assets.js.map +1 -0
  140. package/dist/server/boot.d.ts +157 -38
  141. package/dist/server/boot.d.ts.map +1 -1
  142. package/dist/server/boot.js +360 -138
  143. package/dist/server/boot.js.map +1 -1
  144. package/dist/server/config.d.ts +30 -10
  145. package/dist/server/config.d.ts.map +1 -1
  146. package/dist/server/config.js +73 -17
  147. package/dist/server/config.js.map +1 -1
  148. package/dist/server/ctx.d.ts +10 -0
  149. package/dist/server/ctx.d.ts.map +1 -1
  150. package/dist/server/ctx.js +266 -48
  151. package/dist/server/ctx.js.map +1 -1
  152. package/dist/server/development.d.ts +10 -0
  153. package/dist/server/development.d.ts.map +1 -0
  154. package/dist/server/development.js +15 -0
  155. package/dist/server/development.js.map +1 -0
  156. package/dist/server/fn.d.ts +22 -3
  157. package/dist/server/fn.d.ts.map +1 -1
  158. package/dist/server/fn.js +116 -32
  159. package/dist/server/fn.js.map +1 -1
  160. package/dist/server/form.d.ts +33 -0
  161. package/dist/server/form.d.ts.map +1 -0
  162. package/dist/server/form.js +47 -0
  163. package/dist/server/form.js.map +1 -0
  164. package/dist/server/http.d.ts +55 -3
  165. package/dist/server/http.d.ts.map +1 -1
  166. package/dist/server/http.js +306 -22
  167. package/dist/server/http.js.map +1 -1
  168. package/dist/server/idem.d.ts +3 -2
  169. package/dist/server/idem.d.ts.map +1 -1
  170. package/dist/server/idem.js +12 -4
  171. package/dist/server/idem.js.map +1 -1
  172. package/dist/server/jobs.js +1 -1
  173. package/dist/server/jobs.js.map +1 -1
  174. package/dist/server/log/combinators.d.ts +42 -0
  175. package/dist/server/log/combinators.d.ts.map +1 -0
  176. package/dist/server/log/combinators.js +270 -0
  177. package/dist/server/log/combinators.js.map +1 -0
  178. package/dist/server/log/console.d.ts +12 -0
  179. package/dist/server/log/console.d.ts.map +1 -0
  180. package/dist/server/log/console.js +96 -0
  181. package/dist/server/log/console.js.map +1 -0
  182. package/dist/server/log/file.d.ts +11 -0
  183. package/dist/server/log/file.d.ts.map +1 -0
  184. package/dist/server/log/file.js +61 -0
  185. package/dist/server/log/file.js.map +1 -0
  186. package/dist/server/log/index.d.ts +23 -0
  187. package/dist/server/log/index.d.ts.map +1 -0
  188. package/dist/server/log/index.js +45 -0
  189. package/dist/server/log/index.js.map +1 -0
  190. package/dist/server/log/logger.d.ts +53 -0
  191. package/dist/server/log/logger.d.ts.map +1 -0
  192. package/dist/server/log/logger.js +94 -0
  193. package/dist/server/log/logger.js.map +1 -0
  194. package/dist/server/log/memory.d.ts +11 -0
  195. package/dist/server/log/memory.d.ts.map +1 -0
  196. package/dist/server/log/memory.js +25 -0
  197. package/dist/server/log/memory.js.map +1 -0
  198. package/dist/server/log/types.d.ts +112 -0
  199. package/dist/server/log/types.d.ts.map +1 -0
  200. package/dist/server/log/types.js +58 -0
  201. package/dist/server/log/types.js.map +1 -0
  202. package/dist/server/policy.d.ts +29 -0
  203. package/dist/server/policy.d.ts.map +1 -0
  204. package/dist/server/policy.js +29 -0
  205. package/dist/server/policy.js.map +1 -0
  206. package/dist/server/queue.d.ts +1 -1
  207. package/dist/server/queue.d.ts.map +1 -1
  208. package/dist/server/queue.js.map +1 -1
  209. package/dist/server/ratelimit.d.ts +48 -0
  210. package/dist/server/ratelimit.d.ts.map +1 -0
  211. package/dist/server/ratelimit.js +102 -0
  212. package/dist/server/ratelimit.js.map +1 -0
  213. package/dist/server/respond.d.ts.map +1 -1
  214. package/dist/server/respond.js +16 -1
  215. package/dist/server/respond.js.map +1 -1
  216. package/dist/server/runtime.d.ts +18 -3
  217. package/dist/server/runtime.d.ts.map +1 -1
  218. package/dist/server/runtime.js +32 -2
  219. package/dist/server/runtime.js.map +1 -1
  220. package/dist/server/schedule.d.ts +18 -0
  221. package/dist/server/schedule.d.ts.map +1 -0
  222. package/dist/server/schedule.js +70 -0
  223. package/dist/server/schedule.js.map +1 -0
  224. package/dist/server/sequence.d.ts +42 -0
  225. package/dist/server/sequence.d.ts.map +1 -0
  226. package/dist/server/sequence.js +97 -0
  227. package/dist/server/sequence.js.map +1 -0
  228. package/dist/server/session.d.ts +21 -0
  229. package/dist/server/session.d.ts.map +1 -1
  230. package/dist/server/session.js +84 -10
  231. package/dist/server/session.js.map +1 -1
  232. package/dist/server/sessionstore.d.ts +3 -1
  233. package/dist/server/sessionstore.d.ts.map +1 -1
  234. package/dist/server/sessionstore.js +7 -3
  235. package/dist/server/sessionstore.js.map +1 -1
  236. package/dist/server/storage/index.d.ts +1 -1
  237. package/dist/server/storage/index.d.ts.map +1 -1
  238. package/dist/server/storage/index.js +61 -1
  239. package/dist/server/storage/index.js.map +1 -1
  240. package/dist/server/storage/types.d.ts +8 -0
  241. package/dist/server/storage/types.d.ts.map +1 -1
  242. package/dist/server/storage/types.js +58 -0
  243. package/dist/server/storage/types.js.map +1 -1
  244. package/dist/server/tenants.d.ts +20 -18
  245. package/dist/server/tenants.d.ts.map +1 -1
  246. package/dist/server/tenants.js +133 -84
  247. package/dist/server/tenants.js.map +1 -1
  248. package/dist/server/transport/types.js +2 -2
  249. package/dist/server/transport/types.js.map +1 -1
  250. package/dist/server/worker.d.ts +19 -3
  251. package/dist/server/worker.d.ts.map +1 -1
  252. package/dist/server/worker.js +168 -21
  253. package/dist/server/worker.js.map +1 -1
  254. package/dist/testing.d.ts +26 -10
  255. package/dist/testing.d.ts.map +1 -1
  256. package/dist/testing.js +41 -14
  257. package/dist/testing.js.map +1 -1
  258. package/dist/theme/contracts.d.ts +14 -1
  259. package/dist/theme/contracts.d.ts.map +1 -1
  260. package/dist/theme/contracts.js +35 -6
  261. package/dist/theme/contracts.js.map +1 -1
  262. package/dist/theme/index.d.ts +1 -1
  263. package/dist/theme/index.d.ts.map +1 -1
  264. package/dist/theme/index.js +1 -1
  265. package/dist/theme/index.js.map +1 -1
  266. package/dist/theme/joint-runtime.d.ts +33 -0
  267. package/dist/theme/joint-runtime.d.ts.map +1 -0
  268. package/dist/theme/joint-runtime.js +121 -0
  269. package/dist/theme/joint-runtime.js.map +1 -0
  270. package/dist/theme/joints.d.ts.map +1 -1
  271. package/dist/theme/joints.js +15 -97
  272. package/dist/theme/joints.js.map +1 -1
  273. package/dist/theme/ktl/compile.d.ts +4 -0
  274. package/dist/theme/ktl/compile.d.ts.map +1 -1
  275. package/dist/theme/ktl/compile.js +54 -1
  276. package/dist/theme/ktl/compile.js.map +1 -1
  277. package/dist/theme/ktl/parser.d.ts +4 -0
  278. package/dist/theme/ktl/parser.d.ts.map +1 -1
  279. package/dist/theme/ktl/parser.js +8 -0
  280. package/dist/theme/ktl/parser.js.map +1 -1
  281. package/dist/theme/render.d.ts +8 -0
  282. package/dist/theme/render.d.ts.map +1 -1
  283. package/dist/theme/render.js +88 -118
  284. package/dist/theme/render.js.map +1 -1
  285. package/dist/theme/tokens.d.ts +6 -0
  286. package/dist/theme/tokens.d.ts.map +1 -1
  287. package/dist/theme/tokens.js +6 -0
  288. package/dist/theme/tokens.js.map +1 -1
  289. package/dist/theme/viewmodel.d.ts +24 -0
  290. package/dist/theme/viewmodel.d.ts.map +1 -1
  291. package/dist/theme/viewmodel.js +75 -6
  292. package/dist/theme/viewmodel.js.map +1 -1
  293. package/dist/types.d.ts +304 -56
  294. package/dist/types.d.ts.map +1 -1
  295. package/package.json +6 -2
  296. package/dist/kernel/apps.d.ts +0 -43
  297. package/dist/kernel/apps.d.ts.map +0 -1
  298. package/dist/kernel/apps.js +0 -234
  299. package/dist/kernel/apps.js.map +0 -1
@@ -0,0 +1,53 @@
1
+ import type { LogDriver, LogError, LogFields, LogLevel, LogProcess } from './types.ts';
2
+ /** What a logger knows without being told again. */
3
+ export type LogContext = {
4
+ deployment: string;
5
+ process: LogProcess;
6
+ tenant?: string | null;
7
+ /** Already hashed — see `traceOf`. */
8
+ trace?: string | null;
9
+ fn?: string;
10
+ /** Already hashed. */
11
+ actor?: string | null;
12
+ company?: string | null;
13
+ dryRun?: boolean;
14
+ };
15
+ /** The general form, for call sites that set several fields at once. */
16
+ export type LogEntry = {
17
+ level: LogLevel;
18
+ event: string;
19
+ message?: string;
20
+ fn?: string;
21
+ durationMs?: number;
22
+ dryRun?: boolean;
23
+ replayed?: boolean;
24
+ error?: unknown;
25
+ fields?: LogFields;
26
+ };
27
+ export type Logger = {
28
+ log(entry: LogEntry): void;
29
+ debug(event: string, fields?: LogFields): void;
30
+ info(event: string, fields?: LogFields): void;
31
+ warn(event: string, fields?: LogFields): void;
32
+ /** The cause is `unknown` because that is what `catch` gives you. */
33
+ error(event: string, cause?: unknown, fields?: LogFields): void;
34
+ child(context: Partial<LogContext>): Logger;
35
+ };
36
+ /**
37
+ * Pseudonymise a correlation id or an actor id for export.
38
+ *
39
+ * HMAC rather than a bare digest, and the key is the deployment secret for two
40
+ * reasons. A correlation id is often a client-chosen command key — POS sets it to
41
+ * the idempotency key — so a bare SHA-256 of `order-42` is recovered by guessing,
42
+ * which is acceptable inside one tenant's own database and is not acceptable in a
43
+ * log aggregator shared by every tenant. And `config.secret` is already required to
44
+ * be identical on every pod, so the web process and the worker process derive the
45
+ * same value for the same request, which is the only reason this field is useful.
46
+ *
47
+ * Truncated to 64 bits: enough to correlate within an incident, not a durable
48
+ * identifier for anything.
49
+ */
50
+ export declare function traceOf(value: string | null | undefined, secret: string | null): string | null;
51
+ export declare function describeError(cause: unknown, withStack: boolean): LogError;
52
+ export declare function createLogger(driver: LogDriver, context: LogContext, now?: () => Date): Logger;
53
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/log/logger.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAa,MAAM,YAAY,CAAA;AAIjG,oDAAoD;AACpD,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,wEAAwE;AACxE,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,QAAQ,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAA;IAC1B,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC9C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC7C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC7C,qEAAqE;IACrE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC/D,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAA;CAC5C,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAO9F;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,QAAQ,CAkB1E;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,UAAU,EACnB,GAAG,GAAE,MAAM,IAAuB,GACjC,MAAM,CAyCR"}
@@ -0,0 +1,94 @@
1
+ // A logger is a driver plus the context every record from this call site carries.
2
+ //
3
+ // Context is bound, not ambient. There is no AsyncLocalStorage here and that is a
4
+ // decision, not an omission: ctx.ts exists so that "the call forgot its context"
5
+ // cannot be written down, and a module-scope `log.info()` picking up its tenant
6
+ // from ambient state is exactly the pattern that file rejects for data. Everything
7
+ // in KetJS is already handed a ctx, so ambient propagation would buy nothing and
8
+ // cost the invariant.
9
+ import { createHash, createHmac } from 'node:crypto';
10
+ import { KetError } from '../../kernel/errors.js';
11
+ const STACK_MAX = 2_000;
12
+ /**
13
+ * Pseudonymise a correlation id or an actor id for export.
14
+ *
15
+ * HMAC rather than a bare digest, and the key is the deployment secret for two
16
+ * reasons. A correlation id is often a client-chosen command key — POS sets it to
17
+ * the idempotency key — so a bare SHA-256 of `order-42` is recovered by guessing,
18
+ * which is acceptable inside one tenant's own database and is not acceptable in a
19
+ * log aggregator shared by every tenant. And `config.secret` is already required to
20
+ * be identical on every pod, so the web process and the worker process derive the
21
+ * same value for the same request, which is the only reason this field is useful.
22
+ *
23
+ * Truncated to 64 bits: enough to correlate within an incident, not a durable
24
+ * identifier for anything.
25
+ */
26
+ export function traceOf(value, secret) {
27
+ const held = String(value ?? '').trim();
28
+ if (!held)
29
+ return null;
30
+ const digest = secret
31
+ ? createHmac('sha256', secret).update(held).digest('hex')
32
+ : createHash('sha256').update(`ketjs:trace\n${held}`).digest('hex');
33
+ return digest.slice(0, 16);
34
+ }
35
+ export function describeError(cause, withStack) {
36
+ if (cause instanceof KetError) {
37
+ return {
38
+ code: cause.code,
39
+ message: cause.message,
40
+ module: cause.module,
41
+ ...(withStack && cause.stack ? { stack: cause.stack.slice(0, STACK_MAX) } : {}),
42
+ };
43
+ }
44
+ if (cause instanceof Error) {
45
+ return {
46
+ code: 'E_UNEXPECTED',
47
+ message: `${cause.name}: ${cause.message}`,
48
+ module: null,
49
+ ...(withStack && cause.stack ? { stack: cause.stack.slice(0, STACK_MAX) } : {}),
50
+ };
51
+ }
52
+ return { code: 'E_UNEXPECTED', message: String(cause), module: null };
53
+ }
54
+ export function createLogger(driver, context, now = () => new Date()) {
55
+ const emit = (entry) => {
56
+ const fn = entry.fn ?? context.fn;
57
+ const dryRun = entry.dryRun ?? context.dryRun;
58
+ const record = {
59
+ at: now().toISOString(),
60
+ level: entry.level,
61
+ event: entry.event,
62
+ deployment: context.deployment,
63
+ process: context.process,
64
+ tenant: context.tenant ?? null,
65
+ trace: context.trace ?? null,
66
+ ...(entry.message === undefined ? {} : { message: entry.message }),
67
+ ...(fn === undefined ? {} : { fn }),
68
+ ...(context.actor === undefined || context.actor === null ? {} : { actor: context.actor }),
69
+ ...(context.company === undefined || context.company === null ? {} : { company: context.company }),
70
+ ...(entry.durationMs === undefined ? {} : { durationMs: entry.durationMs }),
71
+ ...(dryRun ? { dryRun: true } : {}),
72
+ ...(entry.replayed ? { replayed: true } : {}),
73
+ ...(entry.error === undefined ? {} : { error: describeError(entry.error, entry.level === 'error') }),
74
+ ...(entry.fields === undefined ? {} : { fields: entry.fields }),
75
+ };
76
+ // One record per call rather than a batch, because a caller that had a batch
77
+ // would have to hold it, and holding is what `bufferedLog` is for.
78
+ driver.write([record]);
79
+ };
80
+ return {
81
+ log: emit,
82
+ debug: (event, fields) => emit({ level: 'debug', event, ...(fields ? { fields } : {}) }),
83
+ info: (event, fields) => emit({ level: 'info', event, ...(fields ? { fields } : {}) }),
84
+ warn: (event, fields) => emit({ level: 'warn', event, ...(fields ? { fields } : {}) }),
85
+ error: (event, cause, fields) => emit({
86
+ level: 'error',
87
+ event,
88
+ ...(cause === undefined ? {} : { error: cause }),
89
+ ...(fields ? { fields } : {}),
90
+ }),
91
+ child: (extra) => createLogger(driver, { ...context, ...extra }, now),
92
+ };
93
+ }
94
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../../../../packages/ketjs/src/server/log/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { LogDriver, LogRecord } from './types.ts';
2
+ export type MemoryLog = LogDriver & {
3
+ records: LogRecord[];
4
+ clear(): void;
5
+ /** Every record with this event, in order. */
6
+ of(event: string): LogRecord[];
7
+ /** The first record with this event, or undefined. */
8
+ first(event: string): LogRecord | undefined;
9
+ };
10
+ export declare function memoryLog(): MemoryLog;
11
+ //# sourceMappingURL=memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/log/memory.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG;IAClC,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,KAAK,IAAI,IAAI,CAAA;IACb,8CAA8C;IAC9C,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CAAA;IAC9B,sDAAsD;IACtD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAC5C,CAAA;AAED,wBAAgB,SAAS,IAAI,SAAS,CAkBrC"}
@@ -0,0 +1,25 @@
1
+ // The sink a test asserts against.
2
+ //
3
+ // It exists so that a security contract can move from "the call threw" to "the
4
+ // call threw and said so": a denial nobody can observe is a denial nobody can
5
+ // alert on, and that is exactly the gap `fn_denied` and `policy_denied` close.
6
+ export function memoryLog() {
7
+ const records = [];
8
+ return {
9
+ name: 'memory',
10
+ records,
11
+ write(batch) {
12
+ records.push(...batch);
13
+ },
14
+ clear() {
15
+ records.length = 0;
16
+ },
17
+ of(event) {
18
+ return records.filter((record) => record.event === event);
19
+ },
20
+ first(event) {
21
+ return records.find((record) => record.event === event);
22
+ },
23
+ };
24
+ }
25
+ //# sourceMappingURL=memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../../../../packages/ketjs/src/server/log/memory.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,EAAE;AACF,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAa/E,MAAM,UAAU,SAAS;IACvB,MAAM,OAAO,GAAgB,EAAE,CAAA;IAC/B,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO;QACP,KAAK,CAAC,KAAK;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;QACxB,CAAC;QACD,KAAK;YACH,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QACpB,CAAC;QACD,EAAE,CAAC,KAAK;YACN,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;QAC3D,CAAC;QACD,KAAK,CAAC,KAAK;YACT,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;QACzD,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Four levels, for filtering.
3
+ *
4
+ * No `trace`: that is a tracer's job, and a duration on every record answers most
5
+ * of what a span is opened for. No `fatal`: that is an error plus a decision to end
6
+ * the process, and the second half is not a logging concern.
7
+ */
8
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
9
+ export declare const atLeast: (level: LogLevel, min: LogLevel) => boolean;
10
+ export declare const isLogLevel: (value: string) => value is LogLevel;
11
+ /** Which built-in sink to open. `auto` decides by whether stderr is a terminal. */
12
+ export type LogDriverName = 'auto' | 'console' | 'pretty' | 'file' | 'null';
13
+ export declare const isLogDriverName: (value: string) => value is LogDriverName;
14
+ /** Which process role emitted a record. Low cardinality on purpose: it is a label. */
15
+ export type LogProcess = 'http' | 'worker' | 'cli' | 'test';
16
+ /**
17
+ * Extra fields on a record.
18
+ *
19
+ * Scalars only, and that restriction is the point rather than a limitation: the
20
+ * usual way a customer payload reaches a log aggregator is somebody writing
21
+ * `log.info('saved', { input })`. Here that does not typecheck. Values arriving
22
+ * from JavaScript callers or from `catch (e)` are still sanitized at runtime by
23
+ * `redactLog`, because a type cannot check what never had a type.
24
+ */
25
+ export type LogFields = Readonly<Record<string, string | number | boolean | null>>;
26
+ /**
27
+ * A failure, reduced to what is worth keeping.
28
+ *
29
+ * `stack` is present only on error-level records and is truncated: it is the whole
30
+ * value of an `unhandled` record, and worthless everywhere else.
31
+ */
32
+ export type LogError = {
33
+ code: string;
34
+ message: string;
35
+ module: string | null;
36
+ stack?: string;
37
+ };
38
+ /**
39
+ * One event, already carrying enough context to be read without grepping elsewhere.
40
+ *
41
+ * `at` is filled by the pipeline rather than by each driver, so every driver
42
+ * reporting the same batch reports the same instant.
43
+ */
44
+ export type LogRecord = {
45
+ at: string;
46
+ level: LogLevel;
47
+ /**
48
+ * A stable noun that can be counted, not a sentence: `fn_error`, not
49
+ * "the function failed". Framework events come from `CoreEvent`; a module's
50
+ * own events must be namespaced `<module>.<event>`.
51
+ */
52
+ event: string;
53
+ /** For a human. Optional, because event plus fields is usually already enough. */
54
+ message?: string;
55
+ deployment: string;
56
+ process: LogProcess;
57
+ /** Null for a single-tenant deployment. Never promoted to a log label: unbounded. */
58
+ tenant: string | null;
59
+ /**
60
+ * Correlation, already hashed. The raw value never reaches a record: the
61
+ * framework does not persist or export it, and a log aggregator is an export.
62
+ */
63
+ trace: string | null;
64
+ fn?: string;
65
+ /** Hashed, by the same rule as `trace`. */
66
+ actor?: string | null;
67
+ company?: string | null;
68
+ durationMs?: number;
69
+ /** A preview is not an execution, and a dashboard must not count it as one. */
70
+ dryRun?: boolean;
71
+ /** An idempotent replay is not a second execution either. */
72
+ replayed?: boolean;
73
+ error?: LogError;
74
+ fields?: LogFields;
75
+ };
76
+ /**
77
+ * A sink.
78
+ *
79
+ * `write` returns nothing rather than a promise, deliberately. An await inside the
80
+ * request path changes interleaving and produces bugs that only appear under load,
81
+ * and a logging call that can be forgotten with a missing `await` is a logging call
82
+ * that will be. A driver needing I/O buffers internally and exposes `flush`.
83
+ *
84
+ * The cost, stated: a driver cannot apply backpressure to its caller. That is the
85
+ * intended trade — dropping records is better than stalling the work being logged —
86
+ * and every buffering driver here therefore has a bound and reports what it dropped.
87
+ */
88
+ export type LogDriver = {
89
+ name: string;
90
+ write(records: readonly LogRecord[]): void;
91
+ /** Push everything held. Called on shutdown, and by tests. */
92
+ flush?(): Promise<void>;
93
+ close?(): Promise<void>;
94
+ };
95
+ /** How a deployment opens a sink the framework does not own. Mirrors OpenStore. */
96
+ export type OpenLog = (config: import('../config.ts').RuntimeConfig) => LogDriver | Promise<LogDriver>;
97
+ /**
98
+ * Every event the framework itself emits.
99
+ *
100
+ * A closed list rather than free strings because an event name is a contract:
101
+ * dashboards and alerts key on it, and renaming one breaks an alert silently —
102
+ * the same failure mode, and so the same care, as renaming a permission. It is a
103
+ * value as well as a type so that a test can check the documented catalogue
104
+ * against it rather than trusting that both were updated.
105
+ */
106
+ export declare const CORE_EVENTS: readonly ['boot', 'shutdown', 'http_request', 'unhandled', 'fn_call', 'fn_error', 'fn_denied', 'policy_denied', 'job_started', 'job_completed', 'job_retrying', 'job_discarded', 'job_cancelled', 'job_ignored_abort', 'rate_limited', 'rate_pruned', 'schedule_fired', 'schedule_error', 'worker_tick_error', 'queue_notifier_unavailable', 'log_dropped', 'log_driver_failed'];
107
+ export type CoreEvent = (typeof CORE_EVENTS)[number];
108
+ /** `<module>.<event>`, the same shape a domain policy key must have. */
109
+ export declare const MODULE_EVENT: RegExp;
110
+ /** Discards everything. */
111
+ export declare function nullLog(): LogDriver;
112
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/log/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ // Operational logging. Not audit, and the difference is the whole design.
2
+ //
3
+ // An audit trail is durable business evidence: it lives in the tenant's database,
4
+ // it is queryable by the application, it is part of a domain contract, and it rolls
5
+ // back with the transaction that wrote it. KetSuite already has one.
6
+ //
7
+ // A log is none of those things. It is ephemeral operational telemetry for whoever
8
+ // is holding the pager, it leaves the process immediately, the application can never
9
+ // read it back, and a log written inside a transaction that later rolls back must
10
+ // still go out — the attempt was real, and knowing it failed is the entire point.
11
+ //
12
+ // Building either one with the other's machinery is the mistake this file exists to
13
+ // prevent, so nothing here writes to a database and nothing here is transactional.
14
+ const ORDER = { debug: 10, info: 20, warn: 30, error: 40 };
15
+ export const atLeast = (level, min) => ORDER[level] >= ORDER[min];
16
+ export const isLogLevel = (value) => Object.hasOwn(ORDER, value);
17
+ const DRIVER_NAMES = ['auto', 'console', 'pretty', 'file', 'null'];
18
+ export const isLogDriverName = (value) => DRIVER_NAMES.includes(value);
19
+ /**
20
+ * Every event the framework itself emits.
21
+ *
22
+ * A closed list rather than free strings because an event name is a contract:
23
+ * dashboards and alerts key on it, and renaming one breaks an alert silently —
24
+ * the same failure mode, and so the same care, as renaming a permission. It is a
25
+ * value as well as a type so that a test can check the documented catalogue
26
+ * against it rather than trusting that both were updated.
27
+ */
28
+ export const CORE_EVENTS = [
29
+ 'boot',
30
+ 'shutdown',
31
+ 'http_request',
32
+ 'unhandled',
33
+ 'fn_call',
34
+ 'fn_error',
35
+ 'fn_denied',
36
+ 'policy_denied',
37
+ 'job_started',
38
+ 'job_completed',
39
+ 'job_retrying',
40
+ 'job_discarded',
41
+ 'job_cancelled',
42
+ 'job_ignored_abort',
43
+ 'rate_limited',
44
+ 'rate_pruned',
45
+ 'schedule_fired',
46
+ 'schedule_error',
47
+ 'worker_tick_error',
48
+ 'queue_notifier_unavailable',
49
+ 'log_dropped',
50
+ 'log_driver_failed',
51
+ ];
52
+ /** `<module>.<event>`, the same shape a domain policy key must have. */
53
+ export const MODULE_EVENT = /^[a-z][a-z0-9_]*(?:\.[a-z][a-z0-9_]*)+$/;
54
+ /** Discards everything. */
55
+ export function nullLog() {
56
+ return { name: 'null', write: () => { } };
57
+ }
58
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../packages/ketjs/src/server/log/types.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,kFAAkF;AAClF,oFAAoF;AACpF,qEAAqE;AACrE,EAAE;AACF,mFAAmF;AACnF,qFAAqF;AACrF,kFAAkF;AAClF,kFAAkF;AAClF,EAAE;AACF,oFAAoF;AACpF,mFAAmF;AAWnF,MAAM,KAAK,GAA6B,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;AAEpF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAe,EAAE,GAAa,EAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AAE9F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAa,EAAqB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAK3F,MAAM,YAAY,GAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAErF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAa,EAA0B,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAsFtG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM;IACN,UAAU;IACV,cAAc;IACd,WAAW;IACX,SAAS;IACT,UAAU;IACV,WAAW;IACX,eAAe;IACf,aAAa;IACb,eAAe;IACf,cAAc;IACd,eAAe;IACf,eAAe;IACf,mBAAmB;IACnB,cAAc;IACd,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IACnB,4BAA4B;IAC5B,aAAa;IACb,mBAAmB;CACX,CAAA;AAIV,wEAAwE;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG,yCAAyC,CAAA;AAErE,2BAA2B;AAC3B,MAAM,UAAU,OAAO;IACrB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAA;AAC1C,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { Logger } from './log/logger.ts';
2
+ export type PolicyDenialEvidence = {
3
+ policy: string;
4
+ code: string;
5
+ actor: string | null;
6
+ targetDigest?: string;
7
+ };
8
+ export type PolicyDecision = {
9
+ policy: string;
10
+ allowed: boolean;
11
+ actor?: string | null;
12
+ /** A stable domain code; record data must not be embedded in it. */
13
+ denialCode?: string;
14
+ /** Hash or opaque identifier only, never the protected record payload. */
15
+ targetDigest?: string;
16
+ audit?: (evidence: PolicyDenialEvidence) => Promise<void>;
17
+ /**
18
+ * Where a denial is recorded operationally. Pass `ctx.log`.
19
+ *
20
+ * Separate from `audit`, and both are worth having: `audit` writes durable
21
+ * evidence into the tenant's own data, while this makes the denial visible to
22
+ * whoever is watching the deployment. The actor is not repeated into the record —
23
+ * `ctx.log` already carries it, hashed, and this one is raw.
24
+ */
25
+ log?: Logger;
26
+ };
27
+ /** Enforce one bounded domain policy after the function capability check. */
28
+ export declare function enforcePolicy(decision: PolicyDecision): Promise<void>;
29
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../../../packages/ketjs/src/server/policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAE7C,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,6EAA6E;AAC7E,wBAAsB,aAAa,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB3E"}
@@ -0,0 +1,29 @@
1
+ import { KetError } from '../kernel/errors.js';
2
+ /** Enforce one bounded domain policy after the function capability check. */
3
+ export async function enforcePolicy(decision) {
4
+ if (!/^[a-z][a-z0-9_-]*(?:\.[a-z][a-z0-9_-]*)+$/.test(decision.policy))
5
+ throw new KetError({
6
+ code: 'E_POLICY_CONTRACT_INVALID',
7
+ message: 'domain policy keys must be stable qualified identifiers',
8
+ });
9
+ if (decision.allowed)
10
+ return;
11
+ const code = decision.denialCode?.trim() || 'E_POLICY_DENIED';
12
+ decision.log?.warn('policy_denied', {
13
+ policy: decision.policy,
14
+ code,
15
+ ...(decision.targetDigest ? { target: decision.targetDigest } : {}),
16
+ });
17
+ await decision.audit?.({
18
+ policy: decision.policy,
19
+ code,
20
+ actor: decision.actor ?? null,
21
+ ...(decision.targetDigest ? { targetDigest: decision.targetDigest } : {}),
22
+ });
23
+ throw new KetError({
24
+ code,
25
+ message: `domain policy "${decision.policy}" denied this operation`,
26
+ hint: 'the caller may hold the function capability and still fail record-level policy',
27
+ });
28
+ }
29
+ //# sourceMappingURL=policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AA8B9C,6EAA6E;AAC7E,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAwB;IAC1D,IAAI,CAAC,2CAA2C,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACpE,MAAM,IAAI,QAAQ,CAAC;YACjB,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE,yDAAyD;SACnE,CAAC,CAAA;IACJ,IAAI,QAAQ,CAAC,OAAO;QAAE,OAAM;IAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,iBAAiB,CAAA;IAC7D,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE;QAClC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC,CAAA;IACF,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI;QACJ,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI;QAC7B,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAC,CAAA;IACF,MAAM,IAAI,QAAQ,CAAC;QACjB,IAAI;QACJ,OAAO,EAAE,kBAAkB,QAAQ,CAAC,MAAM,yBAAyB;QACnE,IAAI,EAAE,gFAAgF;KACvF,CAAC,CAAA;AACJ,CAAC"}
@@ -29,7 +29,7 @@ export type DurableJob = {
29
29
  insertedAt: string;
30
30
  updatedAt: string;
31
31
  };
32
- export type EnqueueJobOptions = JobEnqueueOptions & {
32
+ export type EnqueueJobOptions = Omit<JobEnqueueOptions, 'company'> & {
33
33
  queue?: string;
34
34
  maxAttempts?: number;
35
35
  actor?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../../packages/ketjs/src/server/queue.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,EAAO,KAAK,EAAE,MAAM,aAAa,CAAA;AAErG,eAAO,MAAM,WAAW,kBAAkB,CAAA;AAE1C,MAAM,MAAM,QAAQ,GAChB,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,CAAA;AAEf,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,QAAQ,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC/D,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG;IAClD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnF,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC3G,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;IAChD,UAAU,CACR,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9D,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IACxB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC3E,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACzD,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnF,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACxE,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACpC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACtC,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrF,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;IAC3C,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IACvD,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,IAAI,CAAC;QAAC,eAAe,CAAC,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACpF,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACvC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACnC,CAAA;AAoJD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CA0BrG;AA+DD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,KAAK,CAAC,CA+ThB;AAID,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAOzD"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../../../packages/ketjs/src/server/queue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../../../../packages/ketjs/src/server/queue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { Adapter } from '../types.ts';
2
+ /**
3
+ * What the caller is allowed, and how it is counted.
4
+ *
5
+ * `key` identifies who is being limited — an account id, a hashed address, a
6
+ * device. It is hashed together with the action before it is stored, so the table
7
+ * holds no identity of its own: a rate-limit row is a counter, and there is no
8
+ * reason for it to also be a record of who was somewhere.
9
+ */
10
+ export type RatePolicy = {
11
+ /** A stable, low-cardinality name for the thing being limited. */
12
+ action: string;
13
+ key: string;
14
+ limit: number;
15
+ windowMs: number;
16
+ };
17
+ export type RateVerdict = {
18
+ ok: boolean;
19
+ /** Allowance left in this window. Zero when refused. */
20
+ remaining: number;
21
+ /** How long until the window resets. Answer a refusal with it. */
22
+ retryAfterMs: number;
23
+ };
24
+ /**
25
+ * Spend one slot, or refuse.
26
+ *
27
+ * The read-then-compare-and-set is retried because losing the race is the normal
28
+ * case under exactly the load this exists for: every replica checking the same
29
+ * counter at once is not a fault, it is Tuesday. Running out of attempts refuses
30
+ * rather than allows — under contention the safe answer is the closed one.
31
+ */
32
+ export declare function claimRateSlot(adapter: Adapter, policy: RatePolicy, o?: {
33
+ now?: Date;
34
+ }): Promise<RateVerdict>;
35
+ /**
36
+ * Drop counters nobody has touched for a while.
37
+ *
38
+ * A row for an active key is reused rather than added to, so growth comes only
39
+ * from keys never seen again — a one-off address, a deleted account. Left alone
40
+ * that is unbounded, which is why this exists and why the worker calls it.
41
+ */
42
+ export declare function pruneRateSlots(adapter: Adapter, o?: {
43
+ olderThanMs?: number;
44
+ now?: Date;
45
+ }): Promise<{
46
+ removed: number;
47
+ }>;
48
+ //# sourceMappingURL=ratelimit.d.ts.map