@aifabrix/builder 2.59.0 → 2.61.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/README.md +14 -11
  2. package/docs/README.md +80 -0
  3. package/docs/builder-help/evidence-patterns.json +155 -0
  4. package/docs/builder-help/golden-examples/crm-company.json +30 -0
  5. package/docs/builder-help/golden-examples/crm-deal.json +29 -0
  6. package/docs/builder-help/golden-examples/document-storage-keyed-get.json +85 -0
  7. package/docs/builder-help/golden-examples/document-storage.json +30 -0
  8. package/docs/builder-help/golden-examples/meeting-transcript.json +29 -0
  9. package/docs/builder-help/golden-examples/repository-template.json +29 -0
  10. package/docs/builder-help/golden-examples/service-ticket.json +29 -0
  11. package/docs/builder-help/platform-roles.json +98 -0
  12. package/docs/builder-help/resource-type-catalog.json +402 -0
  13. package/lib/agent-kit/git-identity.js +180 -0
  14. package/lib/agent-kit/setup.js +3 -0
  15. package/lib/agent-kit/start.js +45 -1
  16. package/lib/api/configuration.api.js +131 -0
  17. package/lib/api/role-assistant-test-job.api.js +60 -0
  18. package/lib/api/system-secrets.api.js +72 -0
  19. package/lib/api/work-search.api.js +13 -6
  20. package/lib/app/deploy.js +8 -1
  21. package/lib/app/run-docker-fallback.js +6 -1
  22. package/lib/app/run-helpers.js +2 -1
  23. package/lib/app/run-parameter-sync.js +142 -0
  24. package/lib/app/show-display.js +1 -0
  25. package/lib/app/show-online.js +15 -0
  26. package/lib/build/docker-build-args.js +5 -2
  27. package/lib/build/index.js +3 -2
  28. package/lib/build/standard-docker-build.js +6 -3
  29. package/lib/cli/setup-app.js +19 -1
  30. package/lib/cli/setup-environment.js +156 -0
  31. package/lib/cli/setup-utility.js +24 -1
  32. package/lib/commands/datasource-capability-upsert-cli.js +112 -0
  33. package/lib/commands/datasource-capability.js +4 -2
  34. package/lib/commands/env-secret-context.js +113 -0
  35. package/lib/commands/env-secret-list.js +200 -0
  36. package/lib/commands/env-secret-push-confirm.js +54 -0
  37. package/lib/commands/env-secret-push-run.js +227 -0
  38. package/lib/commands/env-secret-push.js +168 -0
  39. package/lib/commands/repair-datasource-apply.js +2 -0
  40. package/lib/commands/repair-datasource-keyed-document.js +122 -0
  41. package/lib/commands/repair-datasource-run.js +1 -0
  42. package/lib/commands/role-assistant.js +7 -0
  43. package/lib/commands/setup-modes.js +1 -8
  44. package/lib/commands/setup-prompts.js +2 -180
  45. package/lib/commands/verify-operations-skip-e2e.js +25 -1
  46. package/lib/commands/verify-operations-steps.js +13 -1
  47. package/lib/commands/wizard-config-normalizer.js +7 -4
  48. package/lib/commands/wizard-core.js +5 -157
  49. package/lib/commands/wizard-file-saving.js +163 -0
  50. package/lib/core/env-platform-expand.js +97 -0
  51. package/lib/core/secrets-env-content.js +42 -4
  52. package/lib/core/secrets-env-write.js +10 -3
  53. package/lib/core/secrets-load.js +4 -2
  54. package/lib/datasource/binary-documents-validator.js +190 -0
  55. package/lib/datasource/capability/run-capability-upsert.js +202 -0
  56. package/lib/datasource/capability/upsert-ingredients.js +291 -0
  57. package/lib/datasource/capability/upsert-operations.js +138 -0
  58. package/lib/datasource/capability/upsert-test-scaffold.js +189 -0
  59. package/lib/datasource/validate.js +12 -5
  60. package/lib/deployment/installation/azure-infra-stage.js +3 -1
  61. package/lib/deployment/installation/infra-catalog.js +2 -5
  62. package/lib/generator/builders.js +17 -0
  63. package/lib/generator/helpers.js +23 -2
  64. package/lib/generator/index.js +13 -6
  65. package/lib/lifecycle/product-model.js +4 -3
  66. package/lib/lifecycle/report-display.js +3 -2
  67. package/lib/parameters/infra-parameter-catalog.js +1 -1
  68. package/lib/programmatic/builder-help-enterprise-sync-fabrix.js +1 -1
  69. package/lib/programmatic/builder-help-governance.js +1 -1
  70. package/lib/programmatic/builder-help.js +1 -1
  71. package/lib/role-assistant/test-cases-search.js +3 -0
  72. package/lib/role-assistant/test-job-runner.js +125 -0
  73. package/lib/role-assistant/test-runner-search.js +44 -2
  74. package/lib/role-assistant/test-runner-workhub-answers.js +4 -1
  75. package/lib/role-assistant/test-runner-workhub-missing-fields.js +42 -0
  76. package/lib/role-assistant/test-runner-workhub-wait-stop.js +94 -0
  77. package/lib/role-assistant/test-runner-workhub.js +28 -19
  78. package/lib/schema/application-schema.json +205 -2
  79. package/lib/schema/external-datasource.schema.json +23 -3
  80. package/lib/schema/infra-parameter.schema.json +139 -33
  81. package/lib/schema/infra.parameter.yaml +416 -66
  82. package/lib/schema/infrastructure-schema.json +10 -35
  83. package/lib/utils/compose-generate-docker-compose.js +16 -9
  84. package/lib/utils/datasource-binary-evidence.js +92 -0
  85. package/lib/utils/datasource-test-run-capability-scope.js +44 -1
  86. package/lib/utils/datasource-test-run-debug-display.js +2 -0
  87. package/lib/utils/datasource-test-run-display.js +8 -2
  88. package/lib/utils/datasource-test-run-issue-guidance.js +176 -0
  89. package/lib/utils/datasource-test-run-tty-log.js +2 -0
  90. package/lib/utils/docker-build.js +29 -8
  91. package/lib/utils/docker-manifest-public-port.js +36 -0
  92. package/lib/utils/env-copy.js +11 -10
  93. package/lib/utils/external-system-system-test-tty.js +3 -2
  94. package/lib/utils/image-tags.js +2 -2
  95. package/lib/utils/platform-kv-ref.js +1 -1
  96. package/lib/utils/platform-resolution.js +226 -0
  97. package/lib/utils/prepare-local-data-mount.js +58 -0
  98. package/lib/utils/resolve-docker-image-ref.js +8 -3
  99. package/lib/utils/secrets-helpers.js +0 -1
  100. package/lib/utils/system-secret-mapping.js +125 -0
  101. package/lib/utils/test-log-writer.js +2 -1
  102. package/lib/validation/external-manifest-validator.js +5 -0
  103. package/lib/validation/openapi-contract-surface-validator.js +3 -1
  104. package/lib/validation/validate-external-file.js +5 -1
  105. package/package.json +5 -4
  106. package/templates/README.md +2 -1
  107. package/templates/agent-kit/agent-kit.yaml +4 -1
  108. package/templates/agent-kit/instructions/AGENTKIT.md +1 -1
  109. package/templates/agent-kit/instructions/root.AGENTS.md +2 -0
  110. package/templates/agent-kit/skills/aifabrix-connected-system/SKILL.md +35 -2
  111. package/templates/agent-kit/skills/aifabrix-connected-system/references/delivery-gates.md +15 -0
  112. package/templates/agent-kit/skills/aifabrix-connected-system/scripts/delivery-verdict.js +176 -0
  113. package/templates/agent-kit/skills/aifabrix-plan/SKILL.md +6 -2
  114. package/templates/agent-kit/skills/aifabrix-prove/SKILL.md +28 -2
  115. package/templates/agent-kit/skills/aifabrix-prove/references/evidence-lifecycle.md +22 -0
  116. package/templates/agent-kit/skills/aifabrix-role-assistant/SKILL.md +28 -1
  117. package/templates/agent-kit/skills/aifabrix-role-assistant/references/testing-playbook.md +117 -0
  118. package/templates/agent-kit/skills/shared/feedback.md +31 -0
  119. package/templates/agent-kit/skills/shared/hosts.md +13 -3
  120. package/templates/agent-kit/skills/shared/interaction.md +83 -0
  121. package/templates/agent-kit/skills/shared/status.md +76 -0
  122. package/templates/agent-kit/workspace/BUILDER_IMPROVEMENT_FINDINGS.md +27 -0
  123. package/templates/applications/builder-api/application.yaml +1 -1
  124. package/templates/applications/builder-api/env.template +5 -1
  125. package/templates/applications/dataplane/application.yaml +30 -2
  126. package/templates/applications/dataplane/env.template +36 -5
  127. package/templates/applications/keycloak/application.yaml +6 -1
  128. package/templates/applications/miso-controller/application.yaml +96 -1
  129. package/templates/applications/miso-controller/env.template +63 -37
  130. package/templates/applications/miso-controller/rbac.yaml +17 -0
  131. package/templates/external-system/external-datasource.yaml.hbs +7 -1
  132. package/templates/marketplace/main.json +73 -225
  133. package/templates/python/Dockerfile.hbs +2 -0
  134. package/templates/python/docker-compose.hbs +1 -1
  135. package/templates/typescript/Dockerfile.hbs +2 -0
  136. package/templates/typescript/docker-compose.hbs +12 -0
  137. package/templates/agent-kit/skills/aifabrix-plan/references/interaction.md +0 -34
  138. /package/{lib/programmatic/help-content → docs/builder-help/content}/channel-onboarding.md +0 -0
  139. /package/{lib/programmatic/help-content → docs/builder-help/content}/cip-overview.md +0 -0
  140. /package/{lib/programmatic/help-content → docs/builder-help/content}/connected-system-ui.md +0 -0
  141. /package/{lib/programmatic/help-content → docs/builder-help/content}/dimensions-guide.md +0 -0
  142. /package/{lib/programmatic/help-content → docs/builder-help/content}/enterprise-sync-fabrix.md +0 -0
  143. /package/{lib/programmatic/help-content → docs/builder-help/content}/overview.md +0 -0
  144. /package/{lib/programmatic/help-content → docs/builder-help/content}/subscription-guide.md +0 -0
  145. /package/{lib/programmatic/help-content → docs/builder-help/content}/workflow.md +0 -0
@@ -3,7 +3,10 @@
3
3
  "$id": "aifabrix://schema/infra-parameter.schema.json",
4
4
  "title": "Infra parameter catalog",
5
5
  "type": "object",
6
- "required": ["version", "parameters"],
6
+ "required": [
7
+ "version",
8
+ "parameters"
9
+ ],
7
10
  "additionalProperties": false,
8
11
  "properties": {
9
12
  "version": {
@@ -12,7 +15,10 @@
12
15
  },
13
16
  "standardUpInfraEnsureKeys": {
14
17
  "type": "array",
15
- "items": { "type": "string", "minLength": 1 },
18
+ "items": {
19
+ "type": "string",
20
+ "minLength": 1
21
+ },
16
22
  "description": "Extra keys always merged on up-infra (e.g. default miso-controller DB pair when no workspace template lists them)."
17
23
  },
18
24
  "defaults": {
@@ -20,28 +26,47 @@
20
26
  "additionalProperties": false,
21
27
  "description": "Default values for {{adminPassword}}, {{adminEmail}}, {{userPassword}} in literal generator values; overridden by aifabrix up-infra flags.",
22
28
  "properties": {
23
- "adminEmail": { "type": "string" },
24
- "adminPassword": { "type": "string" },
25
- "userPassword": { "type": "string" }
29
+ "adminEmail": {
30
+ "type": "string"
31
+ },
32
+ "adminPassword": {
33
+ "type": "string"
34
+ },
35
+ "userPassword": {
36
+ "type": "string"
37
+ }
26
38
  }
27
39
  },
28
40
  "parameters": {
29
41
  "type": "array",
30
- "items": { "$ref": "#/definitions/parameterEntry" }
42
+ "items": {
43
+ "$ref": "#/definitions/parameterEntry"
44
+ }
31
45
  }
32
46
  },
33
47
  "definitions": {
34
48
  "ensureOnEnum": {
35
49
  "type": "string",
36
- "enum": ["upInfra", "resolveApp", "appRegister"]
50
+ "enum": [
51
+ "upInfra",
52
+ "resolveApp",
53
+ "appRegister"
54
+ ]
37
55
  },
38
56
  "scopeEnum": {
39
57
  "type": "string",
40
- "enum": ["infra", "app", "shared-service", "system"]
58
+ "enum": [
59
+ "infra",
60
+ "app",
61
+ "shared-service",
62
+ "system"
63
+ ]
41
64
  },
42
65
  "generator": {
43
66
  "type": "object",
44
- "required": ["type"],
67
+ "required": [
68
+ "type"
69
+ ],
45
70
  "additionalProperties": false,
46
71
  "properties": {
47
72
  "type": {
@@ -67,17 +92,47 @@
67
92
  "maximum": 512,
68
93
  "description": "For randomAlphanumeric: character count (default 32). For password: default 8. Charset [a-zA-Z0-9]."
69
94
  },
70
- "pairId": { "type": "string", "minLength": 1 },
71
- "part": { "type": "string", "enum": ["private", "public"] }
95
+ "pairId": {
96
+ "type": "string",
97
+ "minLength": 1
98
+ },
99
+ "part": {
100
+ "type": "string",
101
+ "enum": [
102
+ "private",
103
+ "public"
104
+ ]
105
+ }
72
106
  },
73
107
  "allOf": [
74
108
  {
75
- "if": { "properties": { "type": { "const": "literal" } } },
76
- "then": { "required": ["value"] }
109
+ "if": {
110
+ "properties": {
111
+ "type": {
112
+ "const": "literal"
113
+ }
114
+ }
115
+ },
116
+ "then": {
117
+ "required": [
118
+ "value"
119
+ ]
120
+ }
77
121
  },
78
122
  {
79
- "if": { "properties": { "type": { "const": "rsaKeyPair" } } },
80
- "then": { "required": ["pairId", "part"] }
123
+ "if": {
124
+ "properties": {
125
+ "type": {
126
+ "const": "rsaKeyPair"
127
+ }
128
+ }
129
+ },
130
+ "then": {
131
+ "required": [
132
+ "pairId",
133
+ "part"
134
+ ]
135
+ }
81
136
  }
82
137
  ]
83
138
  },
@@ -85,19 +140,32 @@
85
140
  "type": "object",
86
141
  "additionalProperties": false,
87
142
  "properties": {
88
- "vaultSecretName": { "type": "string" },
89
- "vaultSecretNamePattern": { "type": "string" },
143
+ "vaultSecretName": {
144
+ "type": "string"
145
+ },
146
+ "vaultSecretNamePattern": {
147
+ "type": "string"
148
+ },
90
149
  "legacyVaultSecretNames": {
91
150
  "type": "array",
92
- "items": { "type": "string", "minLength": 1 },
151
+ "items": {
152
+ "type": "string",
153
+ "minLength": 1
154
+ },
93
155
  "uniqueItems": true
94
156
  },
95
- "notes": { "type": "string" }
157
+ "notes": {
158
+ "type": "string"
159
+ }
96
160
  }
97
161
  },
98
162
  "parameterEntry": {
99
163
  "type": "object",
100
- "required": ["scope", "generator", "ensureOn"],
164
+ "required": [
165
+ "scope",
166
+ "generator",
167
+ "ensureOn"
168
+ ],
101
169
  "additionalProperties": false,
102
170
  "properties": {
103
171
  "key": {
@@ -108,8 +176,13 @@
108
176
  "type": "string",
109
177
  "minLength": 1
110
178
  },
111
- "category": { "type": "string", "minLength": 1 },
112
- "sensitive": { "type": "boolean" },
179
+ "category": {
180
+ "type": "string",
181
+ "minLength": 1
182
+ },
183
+ "sensitive": {
184
+ "type": "boolean"
185
+ },
113
186
  "valueSource": {
114
187
  "type": "string",
115
188
  "enum": [
@@ -120,31 +193,64 @@
120
193
  "optionalInput"
121
194
  ]
122
195
  },
123
- "requiredOnSystemOnboarding": { "type": "boolean" },
124
- "ownerAppKey": { "type": "string", "minLength": 1 },
196
+ "requiredOnSystemOnboarding": {
197
+ "type": "boolean"
198
+ },
199
+ "ownerAppKey": {
200
+ "type": "string",
201
+ "minLength": 1
202
+ },
125
203
  "sharedWithAppKeys": {
126
204
  "type": "array",
127
- "items": { "type": "string", "minLength": 1 },
205
+ "items": {
206
+ "type": "string",
207
+ "minLength": 1
208
+ },
128
209
  "minItems": 1,
129
210
  "uniqueItems": true,
130
211
  "description": "Named applications, other than ownerAppKey, that may read this value."
131
212
  },
132
- "scope": { "$ref": "#/definitions/scopeEnum" },
133
- "generator": { "$ref": "#/definitions/generator" },
213
+ "visibility": {
214
+ "type": "array",
215
+ "items": {
216
+ "type": "string"
217
+ },
218
+ "description": "App keys allowed to read this parameter. Canonical field in the Miso catalog that lib/schema/infra.parameter.yaml mirrors; sharedWithAppKeys is the older Builder spelling."
219
+ },
220
+ "scope": {
221
+ "$ref": "#/definitions/scopeEnum"
222
+ },
223
+ "generator": {
224
+ "$ref": "#/definitions/generator"
225
+ },
134
226
  "ensureOn": {
135
227
  "type": "array",
136
228
  "minItems": 1,
137
- "items": { "$ref": "#/definitions/ensureOnEnum" }
229
+ "items": {
230
+ "$ref": "#/definitions/ensureOnEnum"
231
+ }
232
+ },
233
+ "requiredForLocal": {
234
+ "type": "boolean"
235
+ },
236
+ "azure": {
237
+ "$ref": "#/definitions/azureBlock"
138
238
  },
139
- "requiredForLocal": { "type": "boolean" },
140
- "azure": { "$ref": "#/definitions/azureBlock" },
141
- "notes": { "type": "string" }
239
+ "notes": {
240
+ "type": "string"
241
+ }
142
242
  },
143
243
  "allOf": [
144
244
  {
145
245
  "if": {
146
- "required": ["scope"],
147
- "properties": { "scope": { "const": "system" } }
246
+ "required": [
247
+ "scope"
248
+ ],
249
+ "properties": {
250
+ "scope": {
251
+ "const": "system"
252
+ }
253
+ }
148
254
  },
149
255
  "then": {
150
256
  "required": [