primitive-admin 1.1.0-alpha.82 → 1.1.0-alpha.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/assets/skill/skills/primitive-platform/SKILL.md +105 -675
  2. package/dist/src/commands/collections.js +61 -0
  3. package/dist/src/commands/collections.js.map +1 -1
  4. package/dist/src/commands/databases.js +10 -2
  5. package/dist/src/commands/databases.js.map +1 -1
  6. package/dist/src/commands/documents.d.ts +38 -0
  7. package/dist/src/commands/documents.js +535 -62
  8. package/dist/src/commands/documents.js.map +1 -1
  9. package/dist/src/commands/functions.js +303 -121
  10. package/dist/src/commands/functions.js.map +1 -1
  11. package/dist/src/commands/locks.js +15 -1
  12. package/dist/src/commands/locks.js.map +1 -1
  13. package/dist/src/commands/sync.d.ts +50 -0
  14. package/dist/src/commands/sync.js +560 -312
  15. package/dist/src/commands/sync.js.map +1 -1
  16. package/dist/src/lib/api-client.d.ts +103 -2
  17. package/dist/src/lib/api-client.js +162 -18
  18. package/dist/src/lib/api-client.js.map +1 -1
  19. package/dist/src/lib/config-object-descriptor.js +5 -5
  20. package/dist/src/lib/config-object-descriptor.js.map +1 -1
  21. package/dist/src/lib/db-codegen/dbTypeIR.js +8 -0
  22. package/dist/src/lib/db-codegen/dbTypeIR.js.map +1 -1
  23. package/dist/src/lib/document-ingest-artifact.d.ts +120 -0
  24. package/dist/src/lib/document-ingest-artifact.js +505 -0
  25. package/dist/src/lib/document-ingest-artifact.js.map +1 -0
  26. package/dist/src/lib/document-ingest-input.d.ts +51 -0
  27. package/dist/src/lib/document-ingest-input.js +132 -0
  28. package/dist/src/lib/document-ingest-input.js.map +1 -0
  29. package/dist/src/lib/document-ingest-rows.d.ts +137 -0
  30. package/dist/src/lib/document-ingest-rows.js +181 -0
  31. package/dist/src/lib/document-ingest-rows.js.map +1 -0
  32. package/dist/src/lib/document-ingest.d.ts +101 -0
  33. package/dist/src/lib/document-ingest.js +384 -0
  34. package/dist/src/lib/document-ingest.js.map +1 -0
  35. package/dist/src/lib/function-bundle.d.ts +6 -0
  36. package/dist/src/lib/function-bundle.js +8 -0
  37. package/dist/src/lib/function-bundle.js.map +1 -1
  38. package/dist/src/lib/function-collect.d.ts +1 -1
  39. package/dist/src/lib/function-collect.js +16 -0
  40. package/dist/src/lib/function-collect.js.map +1 -1
  41. package/dist/src/lib/function-db-types.d.ts +5 -1
  42. package/dist/src/lib/function-db-types.js +32 -3
  43. package/dist/src/lib/function-db-types.js.map +1 -1
  44. package/dist/src/lib/function-document-types.d.ts +83 -0
  45. package/dist/src/lib/function-document-types.js +155 -1
  46. package/dist/src/lib/function-document-types.js.map +1 -1
  47. package/dist/src/lib/function-grants-preflight.js +5 -0
  48. package/dist/src/lib/function-grants-preflight.js.map +1 -1
  49. package/dist/src/lib/function-log-lines.d.ts +76 -0
  50. package/dist/src/lib/function-log-lines.js +160 -0
  51. package/dist/src/lib/function-log-lines.js.map +1 -0
  52. package/dist/src/lib/function-log-row.d.ts +29 -0
  53. package/dist/src/lib/function-log-row.js +73 -0
  54. package/dist/src/lib/function-log-row.js.map +1 -0
  55. package/dist/src/lib/function-run.d.ts +53 -35
  56. package/dist/src/lib/function-run.js +55 -44
  57. package/dist/src/lib/function-run.js.map +1 -1
  58. package/dist/src/lib/function-schema-codegen.d.ts +6 -9
  59. package/dist/src/lib/function-schema-codegen.js +22 -35
  60. package/dist/src/lib/function-schema-codegen.js.map +1 -1
  61. package/dist/src/lib/function-sync.d.ts +226 -35
  62. package/dist/src/lib/function-sync.js +731 -99
  63. package/dist/src/lib/function-sync.js.map +1 -1
  64. package/dist/src/lib/function-versions.d.ts +122 -0
  65. package/dist/src/lib/function-versions.js +182 -0
  66. package/dist/src/lib/function-versions.js.map +1 -0
  67. package/dist/src/lib/generated-config-surfaces.d.ts +390 -146
  68. package/dist/src/lib/generated-config-surfaces.js +1207 -401
  69. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  70. package/dist/src/lib/generated-sdk-types.d.ts +1 -1
  71. package/dist/src/lib/generated-sdk-types.js +1 -1
  72. package/dist/src/lib/generated-sdk-types.js.map +1 -1
  73. package/dist/src/lib/log-inspection.d.ts +2 -0
  74. package/dist/src/lib/log-inspection.js +4 -0
  75. package/dist/src/lib/log-inspection.js.map +1 -1
  76. package/dist/src/lib/output.d.ts +15 -0
  77. package/dist/src/lib/output.js +28 -0
  78. package/dist/src/lib/output.js.map +1 -1
  79. package/dist/src/lib/resolve-owner.d.ts +19 -0
  80. package/dist/src/lib/resolve-owner.js +20 -0
  81. package/dist/src/lib/resolve-owner.js.map +1 -0
  82. package/dist/src/lib/skill-installer.d.ts +49 -3
  83. package/dist/src/lib/skill-installer.js +275 -100
  84. package/dist/src/lib/skill-installer.js.map +1 -1
  85. package/dist/src/lib/snapshot-audit-source.d.ts +45 -0
  86. package/dist/src/lib/snapshot-audit-source.js +58 -0
  87. package/dist/src/lib/snapshot-audit-source.js.map +1 -0
  88. package/dist/src/lib/snapshot-audit-store.d.ts +52 -0
  89. package/dist/src/lib/snapshot-audit-store.js +196 -0
  90. package/dist/src/lib/snapshot-audit-store.js.map +1 -0
  91. package/dist/src/lib/snapshot-audit.d.ts +207 -0
  92. package/dist/src/lib/snapshot-audit.js +431 -0
  93. package/dist/src/lib/snapshot-audit.js.map +1 -0
  94. package/dist/src/lib/snapshot-build-rows.d.ts +60 -0
  95. package/dist/src/lib/snapshot-build-rows.js +87 -0
  96. package/dist/src/lib/snapshot-build-rows.js.map +1 -0
  97. package/dist/src/lib/snapshot-build.d.ts +50 -0
  98. package/dist/src/lib/snapshot-build.js +111 -0
  99. package/dist/src/lib/snapshot-build.js.map +1 -0
  100. package/dist/src/lib/swift-codegen/functionGenerator.d.ts +23 -16
  101. package/dist/src/lib/swift-codegen/functionGenerator.js +34 -33
  102. package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -1
  103. package/dist/src/lib/sync-selectors.d.ts +45 -2
  104. package/dist/src/lib/sync-selectors.js +66 -5
  105. package/dist/src/lib/sync-selectors.js.map +1 -1
  106. package/package.json +2 -2
@@ -33,7 +33,7 @@
33
33
  * `models/models.toml`, and the `DocumentSchemas` augmentation that types
34
34
  * `ctx.doc(documentId).model("<Model>")`; open when the project has none;
35
35
  * - `generated/<key>.generated.ts` (#3281, same renderer) — the per-key
36
- * CLIENT invoker, with the mode fixed at generation time. Excluded from
36
+ * CLIENT invoker, carrying every verb since #3482. Excluded from
37
37
  * the scaffolded program (it imports `js-bao-wss-client`), and written to
38
38
  * `-o <dir>` instead when `functions codegen` is told so;
39
39
  * - `tsconfig.json` — the wiring, so an editor and a bare `tsc` both see the
@@ -57,7 +57,7 @@ import { existsSync, mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync
57
57
  import { basename, dirname, join, relative, resolve, sep } from "path";
58
58
  import { parseConfigToml } from "./config-toml.js";
59
59
  import { FUNCTION_INVOKERS_DIR, FUNCTION_TYPES_DECLARATION_FILE, GENERATED_FILE_SUFFIX, functionSchemaSources, renderFunctionInvokers, renderFunctionSchemasDeclaration, } from "./function-schema-codegen.js";
60
- import { DOCUMENT_TYPES_DECLARATION_FILE, documentSchemaSource, renderDocumentTypesDeclaration, } from "./function-document-types.js";
60
+ import { DOCUMENT_TYPES_DECLARATION_FILE, DOCUMENT_SCHEMA_TREE_FILE, resolveDocumentSchema, renderDocumentTypesDeclaration, } from "./function-document-types.js";
61
61
  import { PROMPT_TYPES_DECLARATION_FILE, promptSchemaSources, renderPromptSchemasDeclaration, } from "./prompt-schema-codegen.js";
62
62
  import { describeDbType } from "./db-codegen/dbTypeIR.js";
63
63
  import { tsTypeForDbFieldType } from "./db-codegen/dbTsTypes.js";
@@ -559,6 +559,10 @@ function reportedPath(configDir, absolute) {
559
559
  * Taking the file name unconditionally would type the handle under a key the
560
560
  * platform never hears about, so `ctx.db(id, "<declared-type>")` — the key the
561
561
  * grant names — would not compile while a wrong one would (SO3182-003).
562
+ *
563
+ * Every `.toml` here is a database type. The generated document-schema copy is
564
+ * a rule about `functions/`, so it is not filtered out here (CR3455-003): a
565
+ * type that happens to share its base name is this directory's own business.
562
566
  */
563
567
  export function databaseTypeSources(configDir) {
564
568
  const dir = join(configDir, "database-type-configs");
@@ -603,6 +607,8 @@ export function planFunctionTypeArtifacts(configDir, sdkTypes, options = {}) {
603
607
  const functionsDir = join(configDir, "functions");
604
608
  if (!existsSync(functionsDir))
605
609
  return [];
610
+ // #3455 — one resolution for both the declaration below and the tree copy.
611
+ const documentSchema = resolveDocumentSchema(configDir);
606
612
  const declaration = renderDbTypesDeclaration(databaseTypeSources(configDir));
607
613
  // #3281 — the functions declaration and the per-key invokers, from the same
608
614
  // `functions/*.toml`. A malformed schema throws naming the file: the honest
@@ -633,10 +639,15 @@ export function planFunctionTypeArtifacts(configDir, sdkTypes, options = {}) {
633
639
  },
634
640
  // #3281 — the document handle's declaration, from the project's
635
641
  // `models/models.toml` (open when the project has none).
642
+ //
643
+ // #3455 (D3455-009) — through the SAME resolution push and diff use, so a
644
+ // tree pulled into a project with no `models/models.toml` is typed from
645
+ // the schema its active version was pushed with rather than losing its
646
+ // types the moment it is pulled.
636
647
  {
637
648
  relative: `functions/${DOCUMENT_TYPES_DECLARATION_FILE}`,
638
649
  absolute: join(functionsDir, DOCUMENT_TYPES_DECLARATION_FILE),
639
- contents: renderDocumentTypesDeclaration(documentSchemaSource(configDir)),
650
+ contents: renderDocumentTypesDeclaration(documentSchema.declarationSource),
640
651
  regenerated: true,
641
652
  },
642
653
  // #3330 — `ctx.prompts.run`'s output types, from this tree's
@@ -647,6 +658,24 @@ export function planFunctionTypeArtifacts(configDir, sdkTypes, options = {}) {
647
658
  contents: renderPromptSchemasDeclaration(promptSchemaSources(configDir)),
648
659
  regenerated: true,
649
660
  },
661
+ // #3455 (D3455-009) — the project's document schema, copied into the tree
662
+ // so a fresh `config pull` into a project that has no `models/models.toml`
663
+ // still rebuilds the same envelope and reads Synced.
664
+ //
665
+ // Regenerated from the PROJECT file whenever there is one, and otherwise
666
+ // left exactly alone: when the copy is itself what the resolution answered
667
+ // (rule 2) it IS the source, and rewriting a file from itself would be the
668
+ // second source of truth the fixed precedence exists to avoid.
669
+ ...(documentSchema.origin === "project" && documentSchema.source
670
+ ? [
671
+ {
672
+ relative: `functions/${DOCUMENT_SCHEMA_TREE_FILE}`,
673
+ absolute: join(functionsDir, DOCUMENT_SCHEMA_TREE_FILE),
674
+ contents: documentSchema.source.content,
675
+ regenerated: true,
676
+ },
677
+ ]
678
+ : []),
650
679
  ...invokers.map((invoker) => {
651
680
  const absolute = join(invokerDir, invoker.fileName);
652
681
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"function-db-types.js","sourceRoot":"","sources":["../../../src/lib/function-db-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,MAAM,EACN,aAAa,GACd,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,gCAAgC,GACjC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,+BAA+B,EAC/B,oBAAoB,EACpB,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,0BAA0B,CAAC;AACzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAsB;IACzD,yBAAyB;IACzB,cAAc;IACd,+BAA+B;IAC/B,+BAA+B;IAC/B,qEAAqE;IACrE,6BAA6B;CAC9B,CAAC;AAEF,gEAAgE;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,qBAAqB,KAAK,CAAC;AAQ/D,MAAM,MAAM,GAAG;;;;;;;;;;CAUd,CAAC;AAEF,SAAS,KAAK,CAAC,KAAa;IAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACjD,CAAC;AAED,iFAAiF;AACjF,SAAS,SAAS,CAAC,IAAY,EAAE,UAAqB;IACpD,IAAI,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5E,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAsC;IAEtC,MAAM,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACvC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/E,CAAC;IAEF,MAAM,KAAK,GAAa,CAAC,MAAM,EAAE,6CAA6C,CAAC,CAAC;IAChF,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QAC3B,IAAI,OAAO,GAAoD,EAAE,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,cAAc,CAAC;gBACxB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;iBACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACd,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;gBACnC,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACzB,OAAO,CAAC,IAAI,CACV,SAAS,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAC5B,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACxB,KAAK,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAC1C,CAAC;gBACJ,CAAC;gBACD,6DAA6D;gBAC7D,gEAAgE;gBAChE,yBAAyB;gBACzB,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACnD,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;wBAAE,SAAS;oBACpC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACtB,OAAO,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YAClD,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;YACxE,wEAAwE;YACxE,2DAA2D;YAC3D,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACnD,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;gBAC3E,SAAS;YACX,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,2EAA2E;IAC3E,yEAAyE;IACzE,0DAA0D;IAC1D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,uBAAuB;IACrC,OAAO,CACL,IAAI,CAAC,SAAS,CACZ;QACE,wEAAwE;QACxE,sEAAsE;QACtE,qEAAqE;QACrE,SAAS;QACT,iEAAiE;QACjE,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,QAAQ;YAChB,gBAAgB,EAAE,SAAS;YAC3B,iEAAiE;YACjE,oEAAoE;YACpE,iEAAiE;YACjE,+DAA+D;YAC/D,iEAAiE;YACjE,wDAAwD;YACxD,eAAe;YACf,GAAG,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;YAC5B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,EAAE;YACT,KAAK,EAAE;gBACL,qBAAqB,EAAE,CAAC,KAAK,cAAc,EAAE,CAAC;aAC/C;SACF;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5E,kEAAkE;QAClE,oEAAoE;QACpE,qEAAqE;QACrE,2BAA2B;QAC3B,OAAO,EAAE,CAAC,iBAAiB,CAAC;KAC7B,EACD,IAAI,EACJ,CAAC,CACF,GAAG,IAAI,CACT,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAE1D,wEAAwE;AACxE,MAAM,eAAe,GAAG,SAAS,CAAC;AAElC;;;;;;;;GAQG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBAChB,MAAM,GAAG,KAAK,CAAC;gBACf,GAAG,IAAI,EAAE,CAAC;YACZ,CAAC;;gBAAM,GAAG,IAAI,GAAG,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,OAAO,GAAG,KAAK,CAAC;gBAChB,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,EAAE,CAAC;YACN,CAAC;;gBAAM,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YACrC,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,IAAI,EAAE,CAAC;YACV,IAAI,OAAO;gBAAE,OAAO,GAAG,KAAK,CAAC;iBACxB,IAAI,EAAE,KAAK,IAAI;gBAAE,OAAO,GAAG,IAAI,CAAC;iBAChC,IAAI,EAAE,KAAK,GAAG;gBAAE,QAAQ,GAAG,KAAK,CAAC;YACtC,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,QAAQ,GAAG,IAAI,CAAC;YAChB,GAAG,IAAI,EAAE,CAAC;YACV,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC/B,MAAM,GAAG,IAAI,CAAC;YACd,GAAG,IAAI,GAAG,CAAC;YACX,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC/B,OAAO,GAAG,IAAI,CAAC;YACf,GAAG,IAAI,GAAG,CAAC;YACX,SAAS;QACX,CAAC;QACD,GAAG,IAAI,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAuBD,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc,EAAE,IAAY;IACtD,OAAO,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,KAAK,KAAK,IAAI,CAAC;AACjD,CAAC;AAED,iFAAiF;AACjF,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACzD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC5D,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACzC,OAAO,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,CAAC;AAC9D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,CACL,UAAU,KAAK,IAAI;QACnB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;QAC5B,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC1B,UAAU,CAAC,UAAU,CAAC,GAAG,qBAAqB,GAAG,CAAC,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,mEAAmE;AACnE,SAAS,iBAAiB,CAAC,OAAkB;IAC3C,gEAAgE;IAChE,4EAA4E;IAC5E,kEAAkE;IAClE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,CACL,UAAU,KAAK,qBAAqB;YACpC,UAAU,CAAC,UAAU,CAAC,GAAG,qBAAqB,GAAG,CAAC,CACnD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,MAAW,EAAE,OAAwB;IAC/D,MAAM,eAAe,GACnB,MAAM,CAAC,eAAe,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ;QAClE,CAAC,CAAC,MAAM,CAAC,eAAe;QACxB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,KAAK,GACT,eAAe,CAAC,KAAK,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,QAAQ;QAChE,CAAC,CAAC,eAAe,CAAC,KAAK;QACvB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACvD,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,MAAM,KAAK,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,4EAA4E;IAC5E,2EAA2E;IAC3E,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC;IACjF,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IACtC,mEAAmE;IACnE,iEAAiE;IACjE,+DAA+D;IAC/D,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC5D,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAChE,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/E,OAAO;QACL,OAAO,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,cAAc,EAAE,CAAC;QAChD,mBAAmB,EACjB,aAAa,IAAI,mBAAmB;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAC7B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CACnE;QACP,OAAO,EAAE,CAAC,aAAa,IAAI,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC9E,sEAAsE;QACtE,iEAAiE;QACjE,kBAAkB,EAChB,OAAO,CAAC,kBAAkB;YAC1B,CAAC,aAAa,IAAI,qBAAqB,CAAC;YACxC,CAAC,iBAAiB,CAAC,OAAO,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,IAAwB;IACvC,OAAO,CACL,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAC/F,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAwB;IAC5C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CACX,2CAA2C,oBAAoB,OAAO;YACpE,MAAM,cAAc,uDAAuD,CAC9E,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,QAAQ,CAAC,IAAI,CACX,8BAA8B,IAAI,CAAC,mBAAmB;aACnD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,CAAC;aAC5B,IAAI,CAAC,IAAI,CAAC,2DAA2D,CACzE,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CACX,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CACX,+BAA+B,iBAAiB,6BAA6B;YAC3E,wEAAwE,CAC3E,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAaD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAAuB,EACvB,UAA2B,EAAE,kBAAkB,EAAE,KAAK,EAAE;IAExD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC/D,CAAC;IAED,IAAI,MAAW,CAAC;IAChB,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,SAAS,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE;oBACR,oEAAoE;wBAClE,wEAAwE;iBAC3E;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC,uDAAuD,CAAC;SACpE,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,qEAAqE;QACrE,2EAA2E;QAC3E,UAAU;QACV,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1D,CAAC;IAED,MAAM,eAAe,GACnB,MAAM,CAAC,eAAe,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ;QAClE,CAAC,CAAC,MAAM,CAAC,eAAe;QACxB,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,GAAG,EAAE,CAAC,CAAC;IACpC,MAAM,KAAK,GACT,eAAe,CAAC,KAAK,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,QAAQ;QAChE,CAAC,CAAC,eAAe,CAAC,KAAK;QACvB,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACvD,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;YAC7B,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,cAAc,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACxD,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,2EAA2E;QAC3E,sEAAsE;QACtE,yEAAyE;QACzE,+DAA+D;QAC/D,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;;YACzC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IAC1C,CAAC;IACD,IACE,IAAI,CAAC,kBAAkB;QACvB,sDAAsD;QACtD,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,EACxF,CAAC;QACD,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC5E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAuB,EACvB,UAA2B,EAAE,kBAAkB,EAAE,KAAK,EAAE;IAExD,OAAO,wBAAwB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;AAC9D,CAAC;AAoBD,wDAAwD;AACxD,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,UAAuC,EAAE;IAEzC,OAAO,OAAO,CAAC,UAAU;QACvB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;QAC7B,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC;AAC1D,CAAC;AAED,+EAA+E;AAC/E,SAAS,YAAY,CAAC,SAAiB,EAAE,QAAgB;IACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;IACnD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,WAAmB,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAQ,eAAe,CAAC,WAAW,CAAC,CAAC;YACjD,IAAI,MAAM,EAAE,IAAI,EAAE,YAAY;gBAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;YACnE,2DAA2D;QAC7D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC;YACX,YAAY,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;YACjD,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAAiB,EACjB,QAAiB,EACjB,UAAuC,EAAE;IAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,MAAM,WAAW,GAAG,wBAAwB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,oCAAoC;IACpC,MAAM,eAAe,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,oBAAoB,GAAG,gCAAgC,CAAC,eAAe,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;IAEzD,MAAM,SAAS,GAA2B;QACxC;YACE,QAAQ,EAAE,aAAa,yBAAyB,EAAE;YAClD,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,yBAAyB,CAAC;YACvD,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,IAAI;SAClB;QACD;YACE,QAAQ,EAAE,aAAa,cAAc,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC;YAC5C,QAAQ,EAAE,QAAQ,IAAI,YAAY,EAAE;YACpC,WAAW,EAAE,IAAI;SAClB;QACD;YACE,QAAQ,EAAE,aAAa,+BAA+B,EAAE;YACxD,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,+BAA+B,CAAC;YAC7D,QAAQ,EAAE,oBAAoB;YAC9B,WAAW,EAAE,IAAI;SAClB;QACD,gEAAgE;QAChE,yDAAyD;QACzD;YACE,QAAQ,EAAE,aAAa,+BAA+B,EAAE;YACxD,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,+BAA+B,CAAC;YAC7D,QAAQ,EAAE,8BAA8B,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YACzE,WAAW,EAAE,IAAI;SAClB;QACD,6DAA6D;QAC7D,uDAAuD;QACvD;YACE,QAAQ,EAAE,aAAa,6BAA6B,EAAE;YACtD,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,6BAA6B,CAAC;YAC3D,QAAQ,EAAE,8BAA8B,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;YACxE,WAAW,EAAE,IAAI;SAClB;QACD,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACpD,OAAO;gBACL,QAAQ,EAAE,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC3C,QAAQ;gBACR,QAAQ,EAAE,OAAO,CAAC,OAAO;gBACzB,WAAW,EAAE,IAAI;aAClB,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;IAEF,2EAA2E;IAC3E,wEAAwE;IACxE,mEAAmE;IACnE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IACjE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,MAAM,EAAE,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IACzF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,SAAS,CAAC,IAAI,CAAC;YACb,QAAQ,EAAE,aAAa,uBAAuB,EAAE;YAChD,QAAQ,EAAE,YAAY;YACtB,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,UAAuC,EAAE;IAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IACjE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,EAAE,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACtB,SAAiB,EACjB,OAAoC;IAEpC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC;IACvE,MAAM,WAAW,GACf,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,UAAU;QACrD,qBAAqB,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9C,OAAO,EAAE,kBAAkB,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,WAAW,EAAE,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,SAAiB,EACjB,OAAwC,EACxC,OAAoC;IAEpC,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrD,OAAO,WAAW,CAAC,GAAG,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACxB,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,QAAiB,EACjB,UAAuC,EAAE;IAEzC,MAAM,SAAS,GAAG,yBAAyB,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,MAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,SAAS;QACX,CAAC;QACD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IACD,4EAA4E;IAC5E,2EAA2E;IAC3E,0EAA0E;IAC1E,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,UAAuC,EAAE;IAEzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACzE,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY;IACnB,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"function-db-types.js","sourceRoot":"","sources":["../../../src/lib/function-db-types.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,51 @@ export declare const DOCUMENT_TYPES_DECLARATION_FILE = "primitive-document-types
24
24
  export declare const DOCUMENT_SCHEMA_RELATIVE: string;
25
25
  /** The web client's starter schema, the fallback. */
26
26
  export declare const WEB_DOCUMENT_SCHEMA_RELATIVE: string;
27
+ /**
28
+ * The generated copy `config pull` writes into the tree — #3455 (D3455-009).
29
+ *
30
+ * `config diff` rebuilds the envelope from the local tree and compares its
31
+ * hash with the active version's (#3201's pull-then-diff invariant). Once the
32
+ * document schema is INSIDE the envelope, a fresh pull into a project that has
33
+ * no `models/models.toml` would rebuild a schema-less envelope, read Modified,
34
+ * and a repush from it would silently drop the schema. So pull writes the
35
+ * active version's schema here, and push and diff resolve the project file
36
+ * FIRST and this copy only as the fallback — one fixed precedence, and push
37
+ * regenerates the copy, so there is no second source of truth.
38
+ *
39
+ * The `.generated.` segment is load-bearing, not decoration (CR3455-002): a
40
+ * function key is `^[a-zA-Z0-9][a-zA-Z0-9_-]{2,63}$`, so a base name carrying a
41
+ * dot can never BE one. Without it this file and an authored
42
+ * `functions/<key>.toml` share a namespace, and a tree whose author had already
43
+ * pushed a function by that key would have its declaration overwritten by a
44
+ * push and deleted by a pull. The name makes the collision unconstructible
45
+ * rather than detected.
46
+ */
47
+ export declare const DOCUMENT_SCHEMA_TREE_FILE = "primitive-document-schema.generated.toml";
48
+ /**
49
+ * Whether a `functions/*.toml` entry is a FUNCTION DECLARATION — #3455.
50
+ *
51
+ * The generated schema copy lives beside the other generated artifacts and is
52
+ * the only `.toml` in that directory that is not a function. Every scan of
53
+ * `functions/` goes through this one predicate rather than filtering on the
54
+ * extension, because a scan that forgot would read the schema as a function
55
+ * whose key is `primitive-document-schema.generated` — a name the boundary
56
+ * refuses — and take the whole push down with it.
57
+ *
58
+ * It states a rule about the FUNCTIONS directory. A scan of any other
59
+ * directory filters on the extension: a resource there keyed for its own
60
+ * namespace is none of this predicate's business (CR3455-003).
61
+ */
62
+ export declare function isFunctionDeclarationFile(fileName: string): boolean;
63
+ /**
64
+ * The cap on the authored schema bytes, refused by name at the push boundary.
65
+ *
66
+ * The server's `MAX_DOCUMENT_SCHEMA_BYTES` (`src/server-functions/
67
+ * document-schema-seed.ts`) must equal this; the byte-parity pin in
68
+ * `cli/tests/unit/function-bundle-3179.test.ts` is what says so.
69
+ */
70
+ export declare const MAX_DOCUMENT_SCHEMA_BYTES: number;
71
+ export declare const MAX_DOCUMENT_SCHEMA_LABEL = "512 KiB";
27
72
  export interface DocumentSchemaSource {
28
73
  /** Absolute path of the file that was read. */
29
74
  path: string;
@@ -41,6 +86,44 @@ export declare function projectRootFor(configDir: string): string | null;
41
86
  * client's copy as the fallback.
42
87
  */
43
88
  export declare function documentSchemaSource(configDir: string): DocumentSchemaSource | null;
89
+ /** Which rule answered — see {@link resolveDocumentSchema}. */
90
+ export type DocumentSchemaOrigin = "project" | "tree" | "none";
91
+ export interface DocumentSchemaResolution {
92
+ /**
93
+ * The schema a push CARRIES, and what the seed is built from. Null when the
94
+ * project declares none, or when the file it declares is unusable.
95
+ */
96
+ source: DocumentSchemaSource | null;
97
+ /**
98
+ * What `primitive-document-types.d.ts` is rendered from — the file the rules
99
+ * picked whether or not it parses, so a broken file still names itself in
100
+ * the declaration instead of reading as "this project has no schema".
101
+ */
102
+ declarationSource: DocumentSchemaSource | null;
103
+ origin: DocumentSchemaOrigin;
104
+ /** Why a file that WAS found is not carried. Names the file. */
105
+ warning: string | null;
106
+ }
107
+ /**
108
+ * The ONE resolution rule push, pull and diff share — #3455 (D3455-009).
109
+ *
110
+ * 1. The project's `models/models.toml` (or the web fallback, in
111
+ * `documentSchemaSource`'s order) when present.
112
+ * 2. Else the tree's generated copy
113
+ * `functions/primitive-document-schema.generated.toml`.
114
+ * 3. Else none.
115
+ *
116
+ * A rule-1 file that is present but unusable — over the cap, or not parsing —
117
+ * yields NO schema and a warning naming it (D3455-004), and the tree copy is
118
+ * NOT consulted: a broken project file is not an absent one, and quietly
119
+ * pushing an older copy of the schema in its place would be the one outcome an
120
+ * author cannot see. An unusable tree copy is treated the same way, so a push
121
+ * is never refused by the server for a file this CLI wrote.
122
+ *
123
+ * Because push, pull and diff all resolve the same way, the pull-then-diff
124
+ * invariant holds by construction rather than by two code paths agreeing.
125
+ */
126
+ export declare function resolveDocumentSchema(configDir: string): DocumentSchemaResolution;
44
127
  /**
45
128
  * The declaration for a project's document schema.
46
129
  *
@@ -31,6 +31,53 @@ export const DOCUMENT_TYPES_DECLARATION_FILE = "primitive-document-types.d.ts";
31
31
  export const DOCUMENT_SCHEMA_RELATIVE = join("models", "models.toml");
32
32
  /** The web client's starter schema, the fallback. */
33
33
  export const WEB_DOCUMENT_SCHEMA_RELATIVE = join("src", "models", "models.toml");
34
+ /**
35
+ * The generated copy `config pull` writes into the tree — #3455 (D3455-009).
36
+ *
37
+ * `config diff` rebuilds the envelope from the local tree and compares its
38
+ * hash with the active version's (#3201's pull-then-diff invariant). Once the
39
+ * document schema is INSIDE the envelope, a fresh pull into a project that has
40
+ * no `models/models.toml` would rebuild a schema-less envelope, read Modified,
41
+ * and a repush from it would silently drop the schema. So pull writes the
42
+ * active version's schema here, and push and diff resolve the project file
43
+ * FIRST and this copy only as the fallback — one fixed precedence, and push
44
+ * regenerates the copy, so there is no second source of truth.
45
+ *
46
+ * The `.generated.` segment is load-bearing, not decoration (CR3455-002): a
47
+ * function key is `^[a-zA-Z0-9][a-zA-Z0-9_-]{2,63}$`, so a base name carrying a
48
+ * dot can never BE one. Without it this file and an authored
49
+ * `functions/<key>.toml` share a namespace, and a tree whose author had already
50
+ * pushed a function by that key would have its declaration overwritten by a
51
+ * push and deleted by a pull. The name makes the collision unconstructible
52
+ * rather than detected.
53
+ */
54
+ export const DOCUMENT_SCHEMA_TREE_FILE = "primitive-document-schema.generated.toml";
55
+ /**
56
+ * Whether a `functions/*.toml` entry is a FUNCTION DECLARATION — #3455.
57
+ *
58
+ * The generated schema copy lives beside the other generated artifacts and is
59
+ * the only `.toml` in that directory that is not a function. Every scan of
60
+ * `functions/` goes through this one predicate rather than filtering on the
61
+ * extension, because a scan that forgot would read the schema as a function
62
+ * whose key is `primitive-document-schema.generated` — a name the boundary
63
+ * refuses — and take the whole push down with it.
64
+ *
65
+ * It states a rule about the FUNCTIONS directory. A scan of any other
66
+ * directory filters on the extension: a resource there keyed for its own
67
+ * namespace is none of this predicate's business (CR3455-003).
68
+ */
69
+ export function isFunctionDeclarationFile(fileName) {
70
+ return fileName.endsWith(".toml") && fileName !== DOCUMENT_SCHEMA_TREE_FILE;
71
+ }
72
+ /**
73
+ * The cap on the authored schema bytes, refused by name at the push boundary.
74
+ *
75
+ * The server's `MAX_DOCUMENT_SCHEMA_BYTES` (`src/server-functions/
76
+ * document-schema-seed.ts`) must equal this; the byte-parity pin in
77
+ * `cli/tests/unit/function-bundle-3179.test.ts` is what says so.
78
+ */
79
+ export const MAX_DOCUMENT_SCHEMA_BYTES = 512 * 1024;
80
+ export const MAX_DOCUMENT_SCHEMA_LABEL = "512 KiB";
34
81
  const HEADER = `// GENERATED by \`primitive config push\` from the project's models/models.toml.
35
82
  // DO NOT EDIT — your changes are overwritten on the next push.
36
83
  //
@@ -101,8 +148,106 @@ function fileLabel(source) {
101
148
  if (source.path.endsWith(candidate))
102
149
  return candidate.split(sep).join("/");
103
150
  }
151
+ if (source.path.endsWith(join("functions", DOCUMENT_SCHEMA_TREE_FILE))) {
152
+ return `functions/${DOCUMENT_SCHEMA_TREE_FILE}`;
153
+ }
104
154
  return source.path;
105
155
  }
156
+ /** Why `content` may not be carried, or null. The push builder's own rule. */
157
+ function documentSchemaProblem(source) {
158
+ const size = Buffer.byteLength(source.content, "utf-8");
159
+ if (size > MAX_DOCUMENT_SCHEMA_BYTES) {
160
+ return (`${fileLabel(source)} is ${size} bytes, over the ` +
161
+ `${MAX_DOCUMENT_SCHEMA_BYTES}-byte (${MAX_DOCUMENT_SCHEMA_LABEL}) cap`);
162
+ }
163
+ try {
164
+ const data = parseConfigToml(source.content);
165
+ if (!data?.models) {
166
+ return `${fileLabel(source)} has no [models] section`;
167
+ }
168
+ // #3501 — a push is an authoring door, so a field name the engine
169
+ // reserves stops the schema here rather than at the server. `type` maps to
170
+ // the internal `_type` column, so a model declaring it would seed a
171
+ // document whose filters match the MODEL NAME instead of the stored value.
172
+ loadSchemaFromTomlString(stringifyConfigToml({ models: data.models }), {
173
+ strict: false,
174
+ rejectReservedFieldNames: true,
175
+ });
176
+ }
177
+ catch (error) {
178
+ const message = String(error?.message ?? error).split("\n")[0];
179
+ // A reserved name is not a syntax error — the file parses, and saying it
180
+ // does not would send the author looking for a typo (matched on the
181
+ // error's NAME so the CLI needs no second import from js-bao).
182
+ if (error?.name === "ReservedFieldNameError") {
183
+ return `${fileLabel(source)} declares a reserved field name: ${message}`;
184
+ }
185
+ return `${fileLabel(source)} does not parse: ${message}`;
186
+ }
187
+ return null;
188
+ }
189
+ /**
190
+ * The ONE resolution rule push, pull and diff share — #3455 (D3455-009).
191
+ *
192
+ * 1. The project's `models/models.toml` (or the web fallback, in
193
+ * `documentSchemaSource`'s order) when present.
194
+ * 2. Else the tree's generated copy
195
+ * `functions/primitive-document-schema.generated.toml`.
196
+ * 3. Else none.
197
+ *
198
+ * A rule-1 file that is present but unusable — over the cap, or not parsing —
199
+ * yields NO schema and a warning naming it (D3455-004), and the tree copy is
200
+ * NOT consulted: a broken project file is not an absent one, and quietly
201
+ * pushing an older copy of the schema in its place would be the one outcome an
202
+ * author cannot see. An unusable tree copy is treated the same way, so a push
203
+ * is never refused by the server for a file this CLI wrote.
204
+ *
205
+ * Because push, pull and diff all resolve the same way, the pull-then-diff
206
+ * invariant holds by construction rather than by two code paths agreeing.
207
+ */
208
+ export function resolveDocumentSchema(configDir) {
209
+ const project = documentSchemaSource(configDir);
210
+ if (project) {
211
+ const problem = documentSchemaProblem(project);
212
+ if (problem) {
213
+ return {
214
+ source: null,
215
+ declarationSource: project,
216
+ origin: "none",
217
+ warning: `${problem}; it is not carried, so first-writer seeding is off for this push`,
218
+ };
219
+ }
220
+ return {
221
+ source: project,
222
+ declarationSource: project,
223
+ origin: "project",
224
+ warning: null,
225
+ };
226
+ }
227
+ const treeCopy = join(resolve(configDir), "functions", DOCUMENT_SCHEMA_TREE_FILE);
228
+ if (existsSync(treeCopy)) {
229
+ let source = null;
230
+ try {
231
+ source = { path: treeCopy, content: readFileSync(treeCopy, "utf-8") };
232
+ }
233
+ catch {
234
+ source = null;
235
+ }
236
+ if (source) {
237
+ const problem = documentSchemaProblem(source);
238
+ if (problem) {
239
+ return {
240
+ source: null,
241
+ declarationSource: source,
242
+ origin: "none",
243
+ warning: `${problem}; it is not carried, so first-writer seeding is off for this push`,
244
+ };
245
+ }
246
+ return { source, declarationSource: source, origin: "tree", warning: null };
247
+ }
248
+ }
249
+ return { source: null, declarationSource: null, origin: "none", warning: null };
250
+ }
106
251
  /**
107
252
  * The declaration for a project's document schema.
108
253
  *
@@ -119,21 +264,30 @@ export function renderDocumentTypesDeclaration(source) {
119
264
  }
120
265
  let schemas = [];
121
266
  let problem = null;
267
+ let reserved = false;
122
268
  try {
123
269
  const data = parseConfigToml(source.content);
124
270
  schemas = data?.models
125
271
  ? loadSchemaFromTomlString(stringifyConfigToml({ models: data.models }), {
126
272
  strict: false,
273
+ // #3501 — the same refusal `documentSchemaProblem` makes, so a
274
+ // model the push will not carry is not typed here either. A
275
+ // generated `type?: string` would promise a field whose filters
276
+ // match the model name instead of the stored value.
277
+ rejectReservedFieldNames: true,
127
278
  })
128
279
  : [];
129
280
  }
130
281
  catch (error) {
131
282
  problem = String(error?.message ?? error);
283
+ reserved = error?.name === "ReservedFieldNameError";
132
284
  }
133
285
  if (problem !== null) {
134
286
  // No augmentation: an untyped handle is what a schemaless project gets
135
287
  // anyway, and the file is named so the author knows where to look.
136
- lines.push(`// ${fileLabel(source)} does not parse, so it contributes no types:`);
288
+ lines.push(reserved
289
+ ? `// ${fileLabel(source)} declares a reserved field name, so it contributes no types:`
290
+ : `// ${fileLabel(source)} does not parse, so it contributes no types:`);
137
291
  for (const line of problem.split("\n").slice(0, 3))
138
292
  lines.push(`// ${line}`);
139
293
  lines.push("export interface PrimitiveDocumentSchemas {}");
@@ -1 +1 @@
1
- {"version":3,"file":"function-document-types.js","sourceRoot":"","sources":["../../../src/lib/function-document-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-document-types.js","sourceRoot":"","sources":["../../../src/lib/function-document-types.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,11 @@ export function configObjectKeysFromTree(configDir) {
42
42
  *
43
43
  * The key is the `[<table>].key` the file declares, falling back to the file
44
44
  * name — the same precedence the push path resolves an object's identity by.
45
+ *
46
+ * Every `.toml` in the directory counts. The generated document-schema copy is
47
+ * a rule about `functions/` and is not one here (CR3455-003) — dropping an
48
+ * object by a foreign directory's rule would refuse a grant on a target the
49
+ * tree really declares.
45
50
  */
46
51
  function keysFromDir(configDir, dirName, table) {
47
52
  const keys = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"function-grants-preflight.js","sourceRoot":"","sources":["../../../src/lib/function-grants-preflight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-grants-preflight.js","sourceRoot":"","sources":["../../../src/lib/function-grants-preflight.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * One invocation's captured console output, in the order it was printed —
3
+ * #3453 (D3453-005).
4
+ *
5
+ * `primitive functions logs --run <run-id>` used to print the same one-row-per
6
+ * record table the listing prints, so the LINES — the thing an operator opened
7
+ * the logs for — were only reachable through `--json`. This renders them, under
8
+ * the step that wrote them.
9
+ *
10
+ * Pure, and separate from the command, for the reason `function-log-row.ts`
11
+ * gives: a rendering rule that lives inside an action can only be tested by
12
+ * spawning the CLI, and this one has enough cases (two orderings, a header that
13
+ * changes, a throw, a pre-change record) that spawning for each would be the
14
+ * wrong trade.
15
+ */
16
+ /** The marker a truncated record ends with, so loss is never silent. */
17
+ export declare const TRUNCATION_MARKER = "\u2026 truncated: the platform's per-record cap dropped later lines";
18
+ /**
19
+ * What an EMPTY record whose attempt ended in the engine says — #3564,
20
+ * criterion 2 (D3564-007).
21
+ *
22
+ * The filing's own complaint: the invocation log held no console output for
23
+ * these attempts, with `truncated`, `logsUnavailable` and `contentSuppressed`
24
+ * all unset, so the silence read as "logs lost" when it meant "the handler
25
+ * printed nothing before the engine took the isolate away". This renderer
26
+ * printed nothing at all for such a record, which is the reading the filing
27
+ * asks to be able to make.
28
+ *
29
+ * Two facts, never collapsed into one: the first half says the attempt ended
30
+ * in the engine, and the SECOND half is chosen by the drain's own flags. A
31
+ * drain that failed — which `DrainedLogs.unavailable` names isolate eviction
32
+ * as a cause of — is reported as unavailable rather than as an empty handler,
33
+ * because those are opposite statements and this is precisely the case where
34
+ * guessing would be wrong.
35
+ */
36
+ export declare const ENGINE_END_PREFIX = "ended in the engine";
37
+ /**
38
+ * One record's console output, ready to print under its `functionLogLine`.
39
+ *
40
+ * A header is emitted whenever the label CHANGES, so two lines from one body
41
+ * sit under one header and a body re-entered after another step gets its own.
42
+ * A `thrown` entry — the wrapper's own record of a body that failed — takes a
43
+ * `!` in the gutter rather than an extra column, so the columns stay aligned.
44
+ *
45
+ * A record with NO lines whose attempt ended in the engine says so instead of
46
+ * printing nothing (#3564, {@link ENGINE_END_PREFIX}). The derivation is by
47
+ * the record's own `endedIn`, which the platform derived from its stored code
48
+ * — never by re-reading its message here, so a record written before this
49
+ * child renders exactly as it rendered then (edge 32).
50
+ */
51
+ export declare function renderInvocationLines(record: any): string[];
52
+ /** What `logs --run` was able to read before it renders anything. */
53
+ export interface RunLogsInput {
54
+ /** The filtered page, NEWEST first, as the listing route answers it. */
55
+ records: any[];
56
+ /** The run's step rows, or null when the read failed. */
57
+ trace: any[] | null;
58
+ /** The trace read's failure, if it had one. */
59
+ traceError?: string | null;
60
+ }
61
+ /**
62
+ * The whole of `logs --run`'s human output — #3453 (D3453-005).
63
+ *
64
+ * Returned rather than printed so every one of its rules is decidable without
65
+ * a server (#3187's lesson): which runs get a table, what a failed trace read
66
+ * costs, and the order the records come out in. The command does the two I/O
67
+ * reads and prints what comes back.
68
+ *
69
+ * Records are reversed because the listing answers newest first and a run is
70
+ * read forwards — an operator following what happened wants the first
71
+ * invocation at the top.
72
+ */
73
+ export declare function renderRunLogs(input: RunLogsInput): {
74
+ lines: string[];
75
+ warning: string | null;
76
+ };