primitive-admin 1.0.60 → 1.0.62

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 (310) hide show
  1. package/README.md +125 -69
  2. package/assets/skill/skills/primitive-platform/SKILL.md +336 -37
  3. package/dist/bin/primitive.js +29 -14
  4. package/dist/bin/primitive.js.map +1 -1
  5. package/dist/src/commands/admins.js +22 -8
  6. package/dist/src/commands/admins.js.map +1 -1
  7. package/dist/src/commands/analytics.js +96 -16
  8. package/dist/src/commands/analytics.js.map +1 -1
  9. package/dist/src/commands/apps.js +49 -188
  10. package/dist/src/commands/apps.js.map +1 -1
  11. package/dist/src/commands/blob-buckets.js +50 -155
  12. package/dist/src/commands/blob-buckets.js.map +1 -1
  13. package/dist/src/commands/collection-type-configs.js +14 -100
  14. package/dist/src/commands/collection-type-configs.js.map +1 -1
  15. package/dist/src/commands/collections.js +47 -8
  16. package/dist/src/commands/collections.js.map +1 -1
  17. package/dist/src/commands/config.d.ts +46 -0
  18. package/dist/src/commands/config.js +479 -0
  19. package/dist/src/commands/config.js.map +1 -0
  20. package/dist/src/commands/connections.d.ts +2 -0
  21. package/dist/src/commands/connections.js +100 -0
  22. package/dist/src/commands/connections.js.map +1 -0
  23. package/dist/src/commands/cron-triggers.js +84 -176
  24. package/dist/src/commands/cron-triggers.js.map +1 -1
  25. package/dist/src/commands/database-type-configs.d.ts +2 -0
  26. package/dist/src/commands/database-type-configs.js +171 -0
  27. package/dist/src/commands/database-type-configs.js.map +1 -0
  28. package/dist/src/commands/database-types.js +4 -4
  29. package/dist/src/commands/database-types.js.map +1 -1
  30. package/dist/src/commands/databases.d.ts +63 -0
  31. package/dist/src/commands/databases.js +649 -87
  32. package/dist/src/commands/databases.js.map +1 -1
  33. package/dist/src/commands/documents.js +869 -12
  34. package/dist/src/commands/documents.js.map +1 -1
  35. package/dist/src/commands/email-templates.js +18 -125
  36. package/dist/src/commands/email-templates.js.map +1 -1
  37. package/dist/src/commands/env.d.ts +12 -1
  38. package/dist/src/commands/env.js +98 -25
  39. package/dist/src/commands/env.js.map +1 -1
  40. package/dist/src/commands/feature-flags.d.ts +14 -0
  41. package/dist/src/commands/feature-flags.js +116 -0
  42. package/dist/src/commands/feature-flags.js.map +1 -0
  43. package/dist/src/commands/group-type-configs.js +14 -109
  44. package/dist/src/commands/group-type-configs.js.map +1 -1
  45. package/dist/src/commands/init.d.ts +9 -1
  46. package/dist/src/commands/init.js +1058 -279
  47. package/dist/src/commands/init.js.map +1 -1
  48. package/dist/src/commands/integrations.js +136 -421
  49. package/dist/src/commands/integrations.js.map +1 -1
  50. package/dist/src/commands/metadata-category-configs.d.ts +12 -0
  51. package/dist/src/commands/metadata-category-configs.js +112 -0
  52. package/dist/src/commands/metadata-category-configs.js.map +1 -0
  53. package/dist/src/commands/metadata.js +33 -141
  54. package/dist/src/commands/metadata.js.map +1 -1
  55. package/dist/src/commands/prompts.js +206 -563
  56. package/dist/src/commands/prompts.js.map +1 -1
  57. package/dist/src/commands/rule-sets.d.ts +1 -1
  58. package/dist/src/commands/rule-sets.js +16 -132
  59. package/dist/src/commands/rule-sets.js.map +1 -1
  60. package/dist/src/commands/scripts.js +67 -234
  61. package/dist/src/commands/scripts.js.map +1 -1
  62. package/dist/src/commands/sessions.d.ts +2 -0
  63. package/dist/src/commands/sessions.js +75 -0
  64. package/dist/src/commands/sessions.js.map +1 -0
  65. package/dist/src/commands/skill.js +2 -2
  66. package/dist/src/commands/skill.js.map +1 -1
  67. package/dist/src/commands/sync-app-settings.d.ts +113 -70
  68. package/dist/src/commands/sync-app-settings.js +193 -242
  69. package/dist/src/commands/sync-app-settings.js.map +1 -1
  70. package/dist/src/commands/sync.d.ts +1932 -49
  71. package/dist/src/commands/sync.js +9584 -1725
  72. package/dist/src/commands/sync.js.map +1 -1
  73. package/dist/src/commands/tokens.js +8 -2
  74. package/dist/src/commands/tokens.js.map +1 -1
  75. package/dist/src/commands/users.js +92 -1
  76. package/dist/src/commands/users.js.map +1 -1
  77. package/dist/src/commands/vars.js +44 -58
  78. package/dist/src/commands/vars.js.map +1 -1
  79. package/dist/src/commands/webhooks.js +318 -156
  80. package/dist/src/commands/webhooks.js.map +1 -1
  81. package/dist/src/commands/workflows.d.ts +49 -12
  82. package/dist/src/commands/workflows.js +652 -1043
  83. package/dist/src/commands/workflows.js.map +1 -1
  84. package/dist/src/lib/access-rule-display.d.ts +21 -0
  85. package/dist/src/lib/access-rule-display.js +34 -0
  86. package/dist/src/lib/access-rule-display.js.map +1 -0
  87. package/dist/src/lib/api-client.d.ts +630 -61
  88. package/dist/src/lib/api-client.js +676 -116
  89. package/dist/src/lib/api-client.js.map +1 -1
  90. package/dist/src/lib/app-settings-descriptor.d.ts +180 -25
  91. package/dist/src/lib/app-settings-descriptor.js +403 -82
  92. package/dist/src/lib/app-settings-descriptor.js.map +1 -1
  93. package/dist/src/lib/canonical-json.d.ts +12 -0
  94. package/dist/src/lib/canonical-json.js +35 -0
  95. package/dist/src/lib/canonical-json.js.map +1 -0
  96. package/dist/src/lib/cli-manifest.d.ts +8 -0
  97. package/dist/src/lib/cli-manifest.js +1 -0
  98. package/dist/src/lib/cli-manifest.js.map +1 -1
  99. package/dist/src/lib/codegen-shared/generatedFiles.d.ts +6 -2
  100. package/dist/src/lib/codegen-shared/generatedFiles.js +9 -2
  101. package/dist/src/lib/codegen-shared/generatedFiles.js.map +1 -1
  102. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.d.ts +6 -6
  103. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js +8 -8
  104. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js.map +1 -1
  105. package/dist/src/lib/config-object-descriptor.d.ts +127 -0
  106. package/dist/src/lib/config-object-descriptor.js +658 -0
  107. package/dist/src/lib/config-object-descriptor.js.map +1 -0
  108. package/dist/src/lib/config-payload.d.ts +85 -0
  109. package/dist/src/lib/config-payload.js +116 -0
  110. package/dist/src/lib/config-payload.js.map +1 -0
  111. package/dist/src/lib/config-surface.d.ts +130 -0
  112. package/dist/src/lib/config-surface.js +300 -0
  113. package/dist/src/lib/config-surface.js.map +1 -0
  114. package/dist/src/lib/credentials-store.d.ts +10 -0
  115. package/dist/src/lib/credentials-store.js +23 -0
  116. package/dist/src/lib/credentials-store.js.map +1 -1
  117. package/dist/src/lib/data-input.d.ts +23 -0
  118. package/dist/src/lib/data-input.js +50 -0
  119. package/dist/src/lib/data-input.js.map +1 -0
  120. package/dist/src/lib/db-codegen/dbTemplates.js +1 -1
  121. package/dist/src/lib/db-codegen/dbTemplates.js.map +1 -1
  122. package/dist/src/lib/db-codegen/dbTypeIR.d.ts +1 -1
  123. package/dist/src/lib/env-resolver-core.d.ts +147 -0
  124. package/dist/src/lib/env-resolver-core.js +265 -0
  125. package/dist/src/lib/env-resolver-core.js.map +1 -0
  126. package/dist/src/lib/env-resolver.d.ts +28 -6
  127. package/dist/src/lib/env-resolver.js +44 -32
  128. package/dist/src/lib/env-resolver.js.map +1 -1
  129. package/dist/src/lib/generated-allowlist.js +13 -0
  130. package/dist/src/lib/generated-allowlist.js.map +1 -1
  131. package/dist/src/lib/generated-config-surfaces.d.ts +682 -0
  132. package/dist/src/lib/generated-config-surfaces.js +4058 -0
  133. package/dist/src/lib/generated-config-surfaces.js.map +1 -0
  134. package/dist/src/lib/generated-template-lint.d.ts +212 -0
  135. package/dist/src/lib/generated-template-lint.js +624 -0
  136. package/dist/src/lib/generated-template-lint.js.map +1 -0
  137. package/dist/src/lib/init-adopt.d.ts +16 -0
  138. package/dist/src/lib/init-adopt.js +34 -0
  139. package/dist/src/lib/init-adopt.js.map +1 -0
  140. package/dist/src/lib/init-assets.d.ts +39 -0
  141. package/dist/src/lib/init-assets.js +97 -0
  142. package/dist/src/lib/init-assets.js.map +1 -0
  143. package/dist/src/lib/init-config.d.ts +44 -5
  144. package/dist/src/lib/init-config.js +80 -7
  145. package/dist/src/lib/init-config.js.map +1 -1
  146. package/dist/src/lib/init-ios-links.d.ts +50 -0
  147. package/dist/src/lib/init-ios-links.js +153 -0
  148. package/dist/src/lib/init-ios-links.js.map +1 -0
  149. package/dist/src/lib/init-plan.d.ts +80 -0
  150. package/dist/src/lib/init-plan.js +95 -0
  151. package/dist/src/lib/init-plan.js.map +1 -0
  152. package/dist/src/lib/init-production-env.d.ts +48 -0
  153. package/dist/src/lib/init-production-env.js +59 -0
  154. package/dist/src/lib/init-production-env.js.map +1 -0
  155. package/dist/src/lib/init-schema.d.ts +74 -0
  156. package/dist/src/lib/init-schema.js +358 -0
  157. package/dist/src/lib/init-schema.js.map +1 -0
  158. package/dist/src/lib/init-xcode.d.ts +33 -0
  159. package/dist/src/lib/init-xcode.js +114 -0
  160. package/dist/src/lib/init-xcode.js.map +1 -0
  161. package/dist/src/lib/integration-request-config.d.ts +30 -0
  162. package/dist/src/lib/integration-request-config.js +145 -0
  163. package/dist/src/lib/integration-request-config.js.map +1 -0
  164. package/dist/src/lib/local-state.d.ts +55 -0
  165. package/dist/src/lib/local-state.js +167 -0
  166. package/dist/src/lib/local-state.js.map +1 -0
  167. package/dist/src/lib/log-inspection.d.ts +568 -0
  168. package/dist/src/lib/log-inspection.js +639 -0
  169. package/dist/src/lib/log-inspection.js.map +1 -0
  170. package/dist/src/lib/migration-nag.d.ts +2 -2
  171. package/dist/src/lib/migration-nag.js +3 -3
  172. package/dist/src/lib/object-status-filter.d.ts +22 -0
  173. package/dist/src/lib/object-status-filter.js +45 -0
  174. package/dist/src/lib/object-status-filter.js.map +1 -0
  175. package/dist/src/lib/output.d.ts +24 -1
  176. package/dist/src/lib/output.js +42 -1
  177. package/dist/src/lib/output.js.map +1 -1
  178. package/dist/src/lib/package-manager.d.ts +140 -0
  179. package/dist/src/lib/package-manager.js +305 -0
  180. package/dist/src/lib/package-manager.js.map +1 -0
  181. package/dist/src/lib/paginate.d.ts +50 -0
  182. package/dist/src/lib/paginate.js +53 -0
  183. package/dist/src/lib/paginate.js.map +1 -1
  184. package/dist/src/lib/platform-owned.d.ts +29 -3
  185. package/dist/src/lib/platform-owned.js +42 -3
  186. package/dist/src/lib/platform-owned.js.map +1 -1
  187. package/dist/src/lib/project-config.js +13 -5
  188. package/dist/src/lib/project-config.js.map +1 -1
  189. package/dist/src/lib/query-operators.d.ts +1 -1
  190. package/dist/src/lib/query-operators.js +1 -1
  191. package/dist/src/lib/record-filter.d.ts +18 -0
  192. package/dist/src/lib/record-filter.js +55 -0
  193. package/dist/src/lib/record-filter.js.map +1 -0
  194. package/dist/src/lib/resolve-init-dev-port.d.ts +56 -0
  195. package/dist/src/lib/resolve-init-dev-port.js +55 -0
  196. package/dist/src/lib/resolve-init-dev-port.js.map +1 -0
  197. package/dist/src/lib/resolve-init-server.d.ts +64 -0
  198. package/dist/src/lib/resolve-init-server.js +77 -0
  199. package/dist/src/lib/resolve-init-server.js.map +1 -0
  200. package/dist/src/lib/resolve-platform.d.ts +43 -14
  201. package/dist/src/lib/resolve-platform.js +74 -12
  202. package/dist/src/lib/resolve-platform.js.map +1 -1
  203. package/dist/src/lib/run-status.d.ts +19 -0
  204. package/dist/src/lib/run-status.generated.d.ts +39 -0
  205. package/dist/src/lib/run-status.generated.js +66 -0
  206. package/dist/src/lib/run-status.generated.js.map +1 -0
  207. package/dist/src/lib/run-status.js +19 -0
  208. package/dist/src/lib/run-status.js.map +1 -0
  209. package/dist/src/lib/server-text-normalization.d.ts +51 -0
  210. package/dist/src/lib/server-text-normalization.js +90 -0
  211. package/dist/src/lib/server-text-normalization.js.map +1 -0
  212. package/dist/src/lib/server-url.d.ts +22 -0
  213. package/dist/src/lib/server-url.js +33 -0
  214. package/dist/src/lib/server-url.js.map +1 -0
  215. package/dist/src/lib/signing-secret-status.d.ts +81 -0
  216. package/dist/src/lib/signing-secret-status.js +116 -0
  217. package/dist/src/lib/signing-secret-status.js.map +1 -0
  218. package/dist/src/lib/skill-installer.d.ts +4 -2
  219. package/dist/src/lib/skill-installer.js +143 -12
  220. package/dist/src/lib/skill-installer.js.map +1 -1
  221. package/dist/src/lib/snapshots.d.ts +2 -2
  222. package/dist/src/lib/snapshots.js +2 -2
  223. package/dist/src/lib/swift-codegen/dbGenerator.d.ts +15 -2
  224. package/dist/src/lib/swift-codegen/dbGenerator.js +250 -18
  225. package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -1
  226. package/dist/src/lib/swift-codegen/generator.d.ts +11 -2
  227. package/dist/src/lib/swift-codegen/generator.js +181 -7
  228. package/dist/src/lib/swift-codegen/generator.js.map +1 -1
  229. package/dist/src/lib/swift-codegen/siblingSymbols.d.ts +7 -3
  230. package/dist/src/lib/swift-codegen/siblingSymbols.js +4 -1
  231. package/dist/src/lib/swift-codegen/siblingSymbols.js.map +1 -1
  232. package/dist/src/lib/sync-dir-selector.d.ts +21 -0
  233. package/dist/src/lib/sync-dir-selector.js +30 -0
  234. package/dist/src/lib/sync-dir-selector.js.map +1 -0
  235. package/dist/src/lib/sync-paths.d.ts +39 -0
  236. package/dist/src/lib/sync-paths.js +70 -2
  237. package/dist/src/lib/sync-paths.js.map +1 -1
  238. package/dist/src/lib/sync-resource-types.d.ts +138 -31
  239. package/dist/src/lib/sync-resource-types.js +241 -47
  240. package/dist/src/lib/sync-resource-types.js.map +1 -1
  241. package/dist/src/lib/sync-selectors.d.ts +95 -0
  242. package/dist/src/lib/sync-selectors.js +228 -0
  243. package/dist/src/lib/sync-selectors.js.map +1 -0
  244. package/dist/src/lib/template.d.ts +62 -4
  245. package/dist/src/lib/template.js +147 -39
  246. package/dist/src/lib/template.js.map +1 -1
  247. package/dist/src/lib/test-case-keys.d.ts +29 -0
  248. package/dist/src/lib/test-case-keys.js +55 -0
  249. package/dist/src/lib/test-case-keys.js.map +1 -0
  250. package/dist/src/lib/test-case-variables.d.ts +15 -0
  251. package/dist/src/lib/test-case-variables.js +29 -0
  252. package/dist/src/lib/test-case-variables.js.map +1 -0
  253. package/dist/src/lib/toml-database-config.d.ts +4 -4
  254. package/dist/src/lib/toml-database-config.js +27 -34
  255. package/dist/src/lib/toml-database-config.js.map +1 -1
  256. package/dist/src/lib/toml-metadata-config.d.ts +9 -5
  257. package/dist/src/lib/toml-metadata-config.js +40 -45
  258. package/dist/src/lib/toml-metadata-config.js.map +1 -1
  259. package/dist/src/lib/toml-native-form.d.ts +1 -1
  260. package/dist/src/lib/toml-native-form.js +1 -1
  261. package/dist/src/lib/toml-params-validator.d.ts +1 -1
  262. package/dist/src/lib/toml-params-validator.js +1 -1
  263. package/dist/src/lib/toml-scalar-edit.d.ts +43 -0
  264. package/dist/src/lib/toml-scalar-edit.js +283 -0
  265. package/dist/src/lib/toml-scalar-edit.js.map +1 -0
  266. package/dist/src/lib/user-selector.d.ts +24 -0
  267. package/dist/src/lib/user-selector.js +33 -0
  268. package/dist/src/lib/user-selector.js.map +1 -0
  269. package/dist/src/lib/version-check.d.ts +25 -0
  270. package/dist/src/lib/version-check.js +77 -8
  271. package/dist/src/lib/version-check.js.map +1 -1
  272. package/dist/src/lib/watch.d.ts +121 -0
  273. package/dist/src/lib/watch.js +169 -0
  274. package/dist/src/lib/watch.js.map +1 -0
  275. package/dist/src/lib/workflow-apply.d.ts +69 -45
  276. package/dist/src/lib/workflow-apply.js +99 -72
  277. package/dist/src/lib/workflow-apply.js.map +1 -1
  278. package/dist/src/lib/workflow-codegen/generator.js +4 -4
  279. package/dist/src/lib/workflow-codegen/generator.js.map +1 -1
  280. package/dist/src/lib/workflow-codegen/invokerIR.d.ts +11 -0
  281. package/dist/src/lib/workflow-codegen/invokerIR.js +5 -0
  282. package/dist/src/lib/workflow-codegen/invokerIR.js.map +1 -1
  283. package/dist/src/lib/workflow-config-apply.d.ts +70 -0
  284. package/dist/src/lib/workflow-config-apply.js +137 -0
  285. package/dist/src/lib/workflow-config-apply.js.map +1 -0
  286. package/dist/src/lib/workflow-config-sidecar.d.ts +63 -0
  287. package/dist/src/lib/workflow-config-sidecar.js +96 -0
  288. package/dist/src/lib/workflow-config-sidecar.js.map +1 -0
  289. package/dist/src/lib/workflow-defaults.d.ts +29 -0
  290. package/dist/src/lib/workflow-defaults.js +41 -0
  291. package/dist/src/lib/workflow-defaults.js.map +1 -0
  292. package/dist/src/lib/workflow-fragments.d.ts +23 -0
  293. package/dist/src/lib/workflow-fragments.js +229 -8
  294. package/dist/src/lib/workflow-fragments.js.map +1 -1
  295. package/dist/src/lib/workflow-include-preserve.d.ts +76 -0
  296. package/dist/src/lib/workflow-include-preserve.js +286 -0
  297. package/dist/src/lib/workflow-include-preserve.js.map +1 -0
  298. package/dist/src/lib/workflow-payload.d.ts +31 -20
  299. package/dist/src/lib/workflow-payload.js +100 -93
  300. package/dist/src/lib/workflow-payload.js.map +1 -1
  301. package/dist/src/lib/workflow-toml-validator.d.ts +80 -3
  302. package/dist/src/lib/workflow-toml-validator.js +231 -3
  303. package/dist/src/lib/workflow-toml-validator.js.map +1 -1
  304. package/dist/src/types/index.d.ts +78 -22
  305. package/dist/src/validators.d.ts +7 -7
  306. package/dist/src/validators.js +6 -6
  307. package/package.json +11 -6
  308. package/dist/src/commands/settings.d.ts +0 -15
  309. package/dist/src/commands/settings.js +0 -102
  310. package/dist/src/commands/settings.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-object-descriptor.js","sourceRoot":"","sources":["../../../src/lib/config-object-descriptor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Definition-driven TOML ↔ payload projection (issue #2644).
3
+ *
4
+ * Every configuration object used to restate its field surface twice inside the
5
+ * CLI — once in a pull serializer and once in a push payload literal — so a
6
+ * field added to one and not the other simply disappeared, and a pull → push
7
+ * cycle cleared it server-side. These two functions replace both halves: the
8
+ * FIELD LIST comes from the vendored definition, and only the handful of fields
9
+ * whose shape or presence semantics are genuinely their own carry a producer.
10
+ *
11
+ * `projectRecordToToml` is the pull half, `buildPayloadFromToml` the push half.
12
+ * They read the same `ConfigTable`, so they cannot disagree about which fields
13
+ * exist — which is the whole point.
14
+ */
15
+ import { writableFieldNames, type ConfigField, type ConfigTable } from "./generated-config-surfaces.js";
16
+ export type PushMode = "create" | "update";
17
+ /**
18
+ * Per-field value producer for the PULL half: the value to write under the
19
+ * field's `tomlKey`, or `undefined` to omit the key. Registered only for fields
20
+ * whose emitted shape is their own (a parsed JSON blob, a derived default);
21
+ * every other field follows its declared `emit`.
22
+ */
23
+ export type PullValue = (record: any, field: ConfigField) => any;
24
+ /**
25
+ * Per-field value producer for the PUSH half. `value` is the raw TOML value
26
+ * under the field's `tomlKey`. Registered only for fields whose presence
27
+ * semantics are their own — most importantly the TOML-owned fields that send
28
+ * `?? null` so removing a line CLEARS the value server-side (#1567) rather than
29
+ * leaving a stale one live.
30
+ */
31
+ export type PushValue = (value: any, mode: PushMode, tomlTable: any) => any;
32
+ /**
33
+ * Project a server record onto its TOML table, using the definition's field
34
+ * list and `emit` semantics.
35
+ *
36
+ * `emit: "always"` writes the value as-is (an `undefined` is dropped by the
37
+ * TOML serializer). `emit: "whenSet"` omits an unset value — `isEmptyForEmit`
38
+ * is #1033's shared rule, where an empty array/object counts as unset while
39
+ * `false` and `0` never do — so a fresh pull does not write noisy empty keys
40
+ * (and `config diff` does not report a difference that is not there).
41
+ *
42
+ * A field WITH a producer skips that emptiness rule: the producer decides, and
43
+ * says "omit" by returning `undefined` or `null` (TOML has no null). This is
44
+ * what the workflow serializer has always done, and it is load-bearing — the
45
+ * empty JSON Schema `{}` is a real, distinct value ("accepts anything"), so a
46
+ * generic "an empty object is unset" would drop it on pull and the next push
47
+ * would clear it server-side.
48
+ */
49
+ export declare function projectRecordToToml(table: ConfigTable, record: any, values?: Record<string, PullValue>): Record<string, any>;
50
+ /**
51
+ * Build the create/update body's field half from a parsed TOML table.
52
+ *
53
+ * Only fields the definition says the server accepts in `mode` are included, so
54
+ * an immutable key (`ttlTier`) or a field the create handler assigns itself
55
+ * (`state`) is never sent — the definition is what records that, not a comment
56
+ * at the call site. A field with no producer is a scalar passthrough: the TOML
57
+ * value is forwarded as-is, and a truly-absent key is `undefined`, which
58
+ * `JSON.stringify` drops so the stored value stands.
59
+ */
60
+ export declare function buildPayloadFromToml(table: ConfigTable, tomlTable: any, { mode, values }: {
61
+ mode: PushMode;
62
+ values?: Record<string, PushValue>;
63
+ }): Record<string, any>;
64
+ /**
65
+ * Build the create/update body from an entity ALREADY in wire shape.
66
+ *
67
+ * The structured objects parse their TOML into an entity first — resolving a
68
+ * `ruleSetName` to the id the server wants, defaulting `autoAddCreator`,
69
+ * re-serializing the `[models.*]` blocks into the stored `schema` string — and
70
+ * only then build the body. `buildPayloadFromToml` reads TOML keys; this reads
71
+ * wire field names, so the same definition drives both without either of them
72
+ * restating the field list.
73
+ */
74
+ export declare function projectEntityToPayload(table: ConfigTable, entity: any, { mode, values }: {
75
+ mode: PushMode;
76
+ values?: Record<string, PushValue>;
77
+ }): Record<string, any>;
78
+ /**
79
+ * A TOML-owned field: send value-or-`null` so removing the line from the file
80
+ * clears it server-side (#1567). Shared because six objects need exactly this
81
+ * for `description`, and stating it once is the point of the epic.
82
+ */
83
+ export declare const tomlOwned: PushValue;
84
+ /** The field names `mode` accepts — re-exported so callers need one import. */
85
+ export { writableFieldNames };
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Definition-driven TOML ↔ payload projection (issue #2644).
3
+ *
4
+ * Every configuration object used to restate its field surface twice inside the
5
+ * CLI — once in a pull serializer and once in a push payload literal — so a
6
+ * field added to one and not the other simply disappeared, and a pull → push
7
+ * cycle cleared it server-side. These two functions replace both halves: the
8
+ * FIELD LIST comes from the vendored definition, and only the handful of fields
9
+ * whose shape or presence semantics are genuinely their own carry a producer.
10
+ *
11
+ * `projectRecordToToml` is the pull half, `buildPayloadFromToml` the push half.
12
+ * They read the same `ConfigTable`, so they cannot disagree about which fields
13
+ * exist — which is the whole point.
14
+ */
15
+ import { isEmptyForEmit, writableFieldNames, } from "./generated-config-surfaces.js";
16
+ /**
17
+ * Project a server record onto its TOML table, using the definition's field
18
+ * list and `emit` semantics.
19
+ *
20
+ * `emit: "always"` writes the value as-is (an `undefined` is dropped by the
21
+ * TOML serializer). `emit: "whenSet"` omits an unset value — `isEmptyForEmit`
22
+ * is #1033's shared rule, where an empty array/object counts as unset while
23
+ * `false` and `0` never do — so a fresh pull does not write noisy empty keys
24
+ * (and `config diff` does not report a difference that is not there).
25
+ *
26
+ * A field WITH a producer skips that emptiness rule: the producer decides, and
27
+ * says "omit" by returning `undefined` or `null` (TOML has no null). This is
28
+ * what the workflow serializer has always done, and it is load-bearing — the
29
+ * empty JSON Schema `{}` is a real, distinct value ("accepts anything"), so a
30
+ * generic "an empty object is unset" would drop it on pull and the next push
31
+ * would clear it server-side.
32
+ */
33
+ export function projectRecordToToml(table, record, values = {}) {
34
+ const out = {};
35
+ for (const field of table.fields) {
36
+ const produce = values[field.field];
37
+ const value = produce ? produce(record, field) : record?.[field.field];
38
+ if (produce) {
39
+ if (value === undefined || value === null)
40
+ continue;
41
+ }
42
+ else if (field.emit === "whenSet" && isEmptyForEmit(value, field.type)) {
43
+ continue;
44
+ }
45
+ if (value === undefined)
46
+ continue;
47
+ out[field.tomlKey] = value;
48
+ }
49
+ return out;
50
+ }
51
+ /**
52
+ * Build the create/update body's field half from a parsed TOML table.
53
+ *
54
+ * Only fields the definition says the server accepts in `mode` are included, so
55
+ * an immutable key (`ttlTier`) or a field the create handler assigns itself
56
+ * (`state`) is never sent — the definition is what records that, not a comment
57
+ * at the call site. A field with no producer is a scalar passthrough: the TOML
58
+ * value is forwarded as-is, and a truly-absent key is `undefined`, which
59
+ * `JSON.stringify` drops so the stored value stands.
60
+ */
61
+ export function buildPayloadFromToml(table, tomlTable, { mode, values = {} }) {
62
+ const source = tomlTable && typeof tomlTable === "object" ? tomlTable : {};
63
+ const payload = {};
64
+ for (const field of table.fields) {
65
+ if (!field.writableOn.includes(mode))
66
+ continue;
67
+ const produce = values[field.field];
68
+ if (produce) {
69
+ payload[field.field] = produce(source[field.tomlKey], mode, source);
70
+ continue;
71
+ }
72
+ const value = source[field.tomlKey];
73
+ // #2880 DSO-002 — the file is the source of truth (#1567), so an absent key
74
+ // means the field's DECLARED default rather than "leave whatever the server
75
+ // has". Sending it is what makes the comparison's reading of that absence
76
+ // (the same default) something a push can converge on: dropping the key
77
+ // left an out-of-band change in place and re-reported it on every run.
78
+ payload[field.field] =
79
+ value === undefined && field.serverDefault !== undefined
80
+ ? field.serverDefault
81
+ : value;
82
+ }
83
+ return payload;
84
+ }
85
+ /**
86
+ * Build the create/update body from an entity ALREADY in wire shape.
87
+ *
88
+ * The structured objects parse their TOML into an entity first — resolving a
89
+ * `ruleSetName` to the id the server wants, defaulting `autoAddCreator`,
90
+ * re-serializing the `[models.*]` blocks into the stored `schema` string — and
91
+ * only then build the body. `buildPayloadFromToml` reads TOML keys; this reads
92
+ * wire field names, so the same definition drives both without either of them
93
+ * restating the field list.
94
+ */
95
+ export function projectEntityToPayload(table, entity, { mode, values = {} }) {
96
+ const source = entity && typeof entity === "object" ? entity : {};
97
+ const payload = {};
98
+ for (const field of table.fields) {
99
+ if (!field.writableOn.includes(mode))
100
+ continue;
101
+ const produce = values[field.field];
102
+ payload[field.field] = produce
103
+ ? produce(source[field.field], mode, source)
104
+ : source[field.field];
105
+ }
106
+ return payload;
107
+ }
108
+ /**
109
+ * A TOML-owned field: send value-or-`null` so removing the line from the file
110
+ * clears it server-side (#1567). Shared because six objects need exactly this
111
+ * for `description`, and stating it once is the point of the epic.
112
+ */
113
+ export const tomlOwned = (value) => value ?? null;
114
+ /** The field names `mode` accepts — re-exported so callers need one import. */
115
+ export { writableFieldNames };
116
+ //# sourceMappingURL=config-payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-payload.js","sourceRoot":"","sources":["../../../src/lib/config-payload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * The CLI's view of the configuration-object definitions (issue #2644).
3
+ *
4
+ * Everything here reads the committed, build-time-vendored artifact
5
+ * `generated-config-surfaces.ts` — the CLI never imports server `src/` at
6
+ * runtime. This module is the small amount of CLI-side wiring on top: table
7
+ * lookup that fails loudly, and the two unrecognized-key behaviors the design
8
+ * gate settled (2026-08-12):
9
+ *
10
+ * - `config push` REJECTS any TOML key a definition does not recognize, so a
11
+ * mistyped key fails locally instead of being silently dropped.
12
+ * - `config pull` WARNS about any server key this CLI version does not know and
13
+ * does NOT write it to the file. Writing it through would set a trap: the
14
+ * next push would reject the key it had just written. A version-gap round
15
+ * trip is therefore loud-and-lossy — push omits what it does not know, so
16
+ * the server keeps its stored values — never silently destructive.
17
+ */
18
+ import { retiredConfigKey, type ConfigObjectSurface, type ConfigField, type ConfigTable } from "./generated-config-surfaces.js";
19
+ export { retiredConfigKey };
20
+ /** A surface by label. Throws rather than silently skipping checks. */
21
+ export declare function requireConfigSurface(label: string): ConfigObjectSurface;
22
+ /** A table by label and TOML path. Throws rather than silently skipping checks. */
23
+ export declare function requireConfigTable(label: string, tomlPath: readonly string[]): ConfigTable;
24
+ /** The `[workflow]` table — the first migrated object (#2644 phase 1). */
25
+ export declare const WORKFLOW_TABLE: ConfigTable;
26
+ export declare const PROMPT_TABLE: ConfigTable;
27
+ export declare const PROMPT_CONFIG_TABLE: ConfigTable;
28
+ export declare const INTEGRATION_TABLE: ConfigTable;
29
+ export declare const WEBHOOK_TABLE: ConfigTable;
30
+ export declare const CRON_TRIGGER_TABLE: ConfigTable;
31
+ export declare const BLOB_BUCKET_TABLE: ConfigTable;
32
+ export declare const EMAIL_TEMPLATE_TABLE: ConfigTable;
33
+ export declare const DATABASE_TYPE_TABLE: ConfigTable;
34
+ export declare const RULE_SET_TABLE: ConfigTable;
35
+ export declare const GROUP_TYPE_CONFIG_TABLE: ConfigTable;
36
+ export declare const COLLECTION_TYPE_CONFIG_TABLE: ConfigTable;
37
+ export declare const METADATA_CATEGORY_CONFIG_TABLE: ConfigTable;
38
+ /**
39
+ * The `[test]` table of a `<key>.tests/*.toml` sidecar (#2644 phase 3).
40
+ *
41
+ * Test cases are a registered surface but NOT a `SYNC_RESOURCE_TYPES`
42
+ * directory, so the preflight that crosses the registry with that table never
43
+ * reaches them. Resolved here so the sidecar files get the same
44
+ * unrecognized-key posture as every per-entity file: push rejects a key the
45
+ * definition does not know, pull names a server key this CLI cannot manage.
46
+ */
47
+ export declare const TEST_CASE_TABLE: ConfigTable;
48
+ /** The `test-case` surface itself, for the sidecars' document-shape check. */
49
+ export declare const TEST_CASE_SURFACE: ConfigObjectSurface;
50
+ /**
51
+ * Does this field's declared type genuinely admit more than one spelling
52
+ * (#2880 criterion 5)?
53
+ *
54
+ * Two sources, both recorded rather than inferred: the definition's own
55
+ * `dualEncoded` marker (the #2869 server-`StringField` numbers), and the `json`
56
+ * type, which `config pull` itself writes either as a native TOML table or —
57
+ * for a value TOML cannot hold — as JSON text.
58
+ */
59
+ export declare function fieldAdmitsMultipleEncodings(field: ConfigField): boolean;
60
+ /**
61
+ * Does this string spell a number the way the SERVER reads one back (#2880)?
62
+ *
63
+ * The grammar is `parseFloat`'s — sign, digits, one dot, an exponent, and
64
+ * nothing else — because that is what the server applies to the string it
65
+ * stored when it returns the value parsed. Published here so the declared-type
66
+ * validator and the comparator decide "is a number" the same way: a dual
67
+ * encoding the validator accepts must be one the comparison can equate, or
68
+ * `temperature = "warm"` passes preflight and then differs from the `null` the
69
+ * server reads it back as, on every run, with no push that can clear it.
70
+ */
71
+ export declare function spellsDecimalNumber(value: string): boolean;
72
+ /**
73
+ * Every value in `tomlData` whose spelling does not match the type its field
74
+ * declares (#2880 criterion 5).
75
+ *
76
+ * Run by `config push`'s preflight — so a mistyped value fails before any
77
+ * request is issued — and by `config diff`, which renders the identical
78
+ * message instead of calling the file Synced. One validator, one message, two
79
+ * commands: the failure this replaces is a file diff reports as Synced and
80
+ * push then rejects (or, worse, coerces into a value the author did not write).
81
+ *
82
+ * A repeated table names the offending entry by index, so a typo in the third
83
+ * `[[configs]]` block is as findable as one in the first.
84
+ */
85
+ export declare function configDeclaredTypeErrors(filePath: string, tomlData: unknown, table: ConfigTable): string[];
86
+ /**
87
+ * TOML keys in `table` that the definition does not recognize.
88
+ *
89
+ * `config push` turns these into a hard error naming each key, for every migrated
90
+ * type — today's workflow posture (`validateWorkflowToml`'s misnest detector),
91
+ * generalized to whole tables and every configuration object.
92
+ */
93
+ export declare function findUnknownTomlKeys(tomlTable: unknown, table: ConfigTable): string[];
94
+ /**
95
+ * Server-response keys this CLI version does not recognize — a newer server
96
+ * returning a field the vendored definition has never heard of.
97
+ */
98
+ export declare function findUnknownServerKeys(payload: unknown, table: ConfigTable): string[];
99
+ /**
100
+ * The `config pull` warning for keys this CLI version cannot manage. Names the
101
+ * file and every key, and says what to do — nothing is dropped without a
102
+ * message (#2644 criterion 6).
103
+ */
104
+ export declare function unrecognizedPullKeysMessage(file: string, tomlPath: readonly string[], keys: readonly string[]): string;
105
+ /**
106
+ * Name the server keys this CLI version does not recognize, without writing
107
+ * them (#2644 criterion 6). No logger means no warning — the caller decides
108
+ * where the message goes.
109
+ */
110
+ export declare function warnUnrecognizedServerKeys(record: unknown, table: ConfigTable, file: string, logger?: (message: string) => void): void;
111
+ /**
112
+ * Top-level TOML keys in `tomlData` the object's definition does not declare —
113
+ * a typo'd table header (`[integraton]`), a table from a newer CLI, or a stray
114
+ * section. Rejected by `config push` for the same reason an unrecognized key
115
+ * inside a table is: silently ignoring it made the file push as though the
116
+ * table it meant to write were empty, which CLEARED the TOML-owned fields
117
+ * server-side.
118
+ */
119
+ export declare function findUnknownDocumentKeys(tomlData: unknown, surface: ConfigObjectSurface): string[];
120
+ /** Field tables present in the wrong shape — `[configs]` for `[[configs]]`. */
121
+ export declare function findMisshapenTables(tomlData: unknown, surface: ConfigObjectSurface): Array<{
122
+ key: string;
123
+ expected: "table" | "array of tables";
124
+ }>;
125
+ /** The `config push` error for unrecognized top-level TOML tables. */
126
+ export declare function unrecognizedPushTablesMessage(file: string, keys: readonly string[]): string;
127
+ /** The `config push` error for a field table written with the wrong array markers. */
128
+ export declare function misshapenTableMessage(file: string, key: string, expected: "table" | "array of tables"): string;
129
+ /** The `config push` error for unrecognized TOML keys. */
130
+ export declare function unrecognizedPushKeysMessage(file: string, tomlPath: readonly string[], keys: readonly string[]): string;