@open-mercato/cli 0.6.8-develop.7000.1.0ae682bad1 → 0.6.8-develop.7003.1.24fef49d48
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.
- package/.turbo/turbo-build.log +4 -3
- package/build.mjs +45 -30
- package/dist/agentic/guides/module-facts.json +124 -124
- package/dist/agentic/guides/module-facts.v2.json +124 -124
- package/dist/agentic/guides/modules/ai_assistant/index.md +1 -1
- package/dist/agentic/guides/modules/api_docs/index.md +1 -1
- package/dist/agentic/guides/modules/api_keys/index.md +1 -1
- package/dist/agentic/guides/modules/attachments/index.md +1 -1
- package/dist/agentic/guides/modules/audit_logs/index.md +1 -1
- package/dist/agentic/guides/modules/auth/index.md +1 -1
- package/dist/agentic/guides/modules/business_rules/index.md +1 -1
- package/dist/agentic/guides/modules/catalog/index.md +1 -1
- package/dist/agentic/guides/modules/channel_apns/index.md +1 -1
- package/dist/agentic/guides/modules/channel_expo/index.md +1 -1
- package/dist/agentic/guides/modules/channel_fcm/index.md +1 -1
- package/dist/agentic/guides/modules/channel_gmail/index.md +1 -1
- package/dist/agentic/guides/modules/channel_imap/index.md +1 -1
- package/dist/agentic/guides/modules/checkout/index.md +1 -1
- package/dist/agentic/guides/modules/communication_channels/index.md +1 -1
- package/dist/agentic/guides/modules/configs/index.md +1 -1
- package/dist/agentic/guides/modules/content/index.md +1 -1
- package/dist/agentic/guides/modules/currencies/index.md +1 -1
- package/dist/agentic/guides/modules/customer_accounts/index.md +1 -1
- package/dist/agentic/guides/modules/customers/index.md +1 -1
- package/dist/agentic/guides/modules/dashboards/index.md +1 -1
- package/dist/agentic/guides/modules/data_sync/index.md +1 -1
- package/dist/agentic/guides/modules/design_system/index.md +1 -1
- package/dist/agentic/guides/modules/devices/index.md +1 -1
- package/dist/agentic/guides/modules/dictionaries/index.md +1 -1
- package/dist/agentic/guides/modules/directory/index.md +1 -1
- package/dist/agentic/guides/modules/entities/index.md +1 -1
- package/dist/agentic/guides/modules/eudr/index.md +1 -1
- package/dist/agentic/guides/modules/events/index.md +1 -1
- package/dist/agentic/guides/modules/feature_toggles/index.md +1 -1
- package/dist/agentic/guides/modules/gateway_stripe/index.md +1 -1
- package/dist/agentic/guides/modules/generators/index.md +1 -1
- package/dist/agentic/guides/modules/inbox_ops/index.md +1 -1
- package/dist/agentic/guides/modules/integrations/index.md +1 -1
- package/dist/agentic/guides/modules/messages/index.md +1 -1
- package/dist/agentic/guides/modules/notifications/index.md +1 -1
- package/dist/agentic/guides/modules/onboarding/index.md +1 -1
- package/dist/agentic/guides/modules/payment_gateways/index.md +1 -1
- package/dist/agentic/guides/modules/perspectives/index.md +1 -1
- package/dist/agentic/guides/modules/planner/index.md +1 -1
- package/dist/agentic/guides/modules/portal/index.md +1 -1
- package/dist/agentic/guides/modules/progress/index.md +1 -1
- package/dist/agentic/guides/modules/push_notifications/index.md +1 -1
- package/dist/agentic/guides/modules/query_index/index.md +1 -1
- package/dist/agentic/guides/modules/record_locks/index.md +1 -1
- package/dist/agentic/guides/modules/resources/index.md +1 -1
- package/dist/agentic/guides/modules/sales/index.md +1 -1
- package/dist/agentic/guides/modules/scheduler/index.md +1 -1
- package/dist/agentic/guides/modules/search/index.md +1 -1
- package/dist/agentic/guides/modules/security/index.md +1 -1
- package/dist/agentic/guides/modules/shipping_carriers/index.md +1 -1
- package/dist/agentic/guides/modules/sso/index.md +1 -1
- package/dist/agentic/guides/modules/staff/index.md +1 -1
- package/dist/agentic/guides/modules/storage_s3/index.md +1 -1
- package/dist/agentic/guides/modules/sync_akeneo/index.md +1 -1
- package/dist/agentic/guides/modules/sync_excel/index.md +1 -1
- package/dist/agentic/guides/modules/system_status_overlays/index.md +1 -1
- package/dist/agentic/guides/modules/translations/index.md +1 -1
- package/dist/agentic/guides/modules/warranty_claims/index.md +1 -1
- package/dist/agentic/guides/modules/webhooks/index.md +1 -1
- package/dist/agentic/guides/modules/wms/index.md +1 -1
- package/dist/agentic/guides/modules/workflows/index.md +1 -1
- package/dist/agentic/guides/reference-module-facts.json +1 -1
- package/dist/agentic/guides/upstream/manifest.json +1 -1
- package/dist/lib/__integration__/TC-INT-008.spec.js +5 -0
- package/dist/lib/__integration__/TC-INT-008.spec.js.map +2 -2
- package/package.json +6 -6
- package/src/lib/__integration__/TC-INT-008.spec.ts +9 -0
- package/src/lib/__tests__/agentic-build-artifacts.test.ts +28 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
[build:cli] found 104 entry points
|
|
2
|
-
Copied create-app/agentic/ → dist/agentic/
|
|
2
|
+
Copied create-app/agentic/ → dist/agentic.staging/
|
|
3
3
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for ai_assistant
|
|
4
4
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for channel_apns
|
|
5
5
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for channel_expo
|
|
@@ -65,7 +65,7 @@ Copied create-app/agentic/ → dist/agentic/
|
|
|
65
65
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for storage_s3
|
|
66
66
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for sync_akeneo
|
|
67
67
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for webhooks
|
|
68
|
-
Generated 62 module fact-sheets → dist/agentic/guides/modules/
|
|
68
|
+
Generated 62 module fact-sheets → dist/agentic.staging/guides/modules/
|
|
69
69
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for ai_assistant
|
|
70
70
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for channel_apns
|
|
71
71
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for channel_expo
|
|
@@ -132,5 +132,6 @@ Generated 62 module fact-sheets → dist/agentic/guides/modules/
|
|
|
132
132
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for sync_akeneo
|
|
133
133
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for webhooks
|
|
134
134
|
[module-facts] module registry unavailable (registryPath not provided); API route auth omitted for example
|
|
135
|
-
Generated 1 local reference projection(s) → dist/agentic/guides/reference-modules/
|
|
135
|
+
Generated 1 local reference projection(s) → dist/agentic.staging/guides/reference-modules/
|
|
136
|
+
Published dist/agentic.staging/ → dist/agentic/
|
|
136
137
|
[build:cli] built successfully
|
package/build.mjs
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
chmodSync,
|
|
3
|
+
cpSync,
|
|
4
|
+
existsSync,
|
|
5
|
+
mkdirSync,
|
|
6
|
+
readdirSync,
|
|
7
|
+
readFileSync,
|
|
8
|
+
renameSync,
|
|
9
|
+
rmSync,
|
|
10
|
+
writeFileSync,
|
|
11
|
+
} from 'node:fs'
|
|
2
12
|
import { createHash } from 'node:crypto'
|
|
3
13
|
import { dirname, join } from 'node:path'
|
|
4
14
|
import { fileURLToPath, pathToFileURL } from 'node:url'
|
|
@@ -25,15 +35,28 @@ await buildPackage(packageDir, {
|
|
|
25
35
|
chmodSync(binPath, 0o755)
|
|
26
36
|
|
|
27
37
|
// Copy agentic source files from create-app so generators can read them at runtime.
|
|
38
|
+
// The tree is assembled in a staging directory and swapped in at the end of the build: refreshing
|
|
39
|
+
// dist/agentic in place deletes the whole harness plus ~55 fact-sheets and copies them back, which
|
|
40
|
+
// leaves the published tree incomplete for seconds and makes any concurrent reader fail with ENOENT
|
|
41
|
+
// on files that exist (#5059, #5104). Staging also makes stale per-module artifacts structurally
|
|
42
|
+
// impossible, so no purge of previous output is needed — the swapped-in tree only contains what this
|
|
43
|
+
// build wrote. Mirrors packages/create-app/build.mjs, including its single-builder assumption: the
|
|
44
|
+
// staging and previous directory names are fixed, so two concurrent runs would clear each other's
|
|
45
|
+
// staging tree below and the loser would fail loudly on the rename at the end, which beats the silent
|
|
46
|
+
// partial tree the in-place refresh produced.
|
|
47
|
+
const agenticDist = join(outdir, 'agentic')
|
|
48
|
+
const agenticStaging = join(outdir, 'agentic.staging')
|
|
49
|
+
const agenticPrevious = join(outdir, 'agentic.previous')
|
|
50
|
+
for (const leftover of [agenticStaging, agenticPrevious]) rmSync(leftover, { recursive: true, force: true })
|
|
51
|
+
mkdirSync(agenticStaging, { recursive: true })
|
|
28
52
|
const agenticSrc = join(packageDir, '..', 'create-app', 'agentic')
|
|
29
53
|
if (existsSync(agenticSrc)) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
console.log('Copied create-app/agentic/ → dist/agentic/')
|
|
54
|
+
cpSync(agenticSrc, agenticStaging, { recursive: true })
|
|
55
|
+
console.log('Copied create-app/agentic/ → dist/agentic.staging/')
|
|
33
56
|
}
|
|
34
57
|
|
|
35
58
|
const repositoryRoot = join(packageDir, '..', '..')
|
|
36
|
-
const upstreamDir = join(
|
|
59
|
+
const upstreamDir = join(agenticStaging, 'guides', 'upstream')
|
|
37
60
|
mkdirSync(upstreamDir, { recursive: true })
|
|
38
61
|
const cliVersion = JSON.parse(readFileSync(join(packageDir, 'package.json'), 'utf8')).version ?? null
|
|
39
62
|
const upstreamManifest = { version: 1, generator: `@open-mercato/cli@${cliVersion ?? 'unknown'}`, files: {} }
|
|
@@ -48,33 +71,15 @@ await buildPackage(packageDir, {
|
|
|
48
71
|
// Discover module-specific standalone guides across sibling packages. Package-level
|
|
49
72
|
// guides are intentionally not shipped because they duplicate routed conceptual guides.
|
|
50
73
|
const packagesDir = join(packageDir, '..')
|
|
51
|
-
const guidesDestDir = join(
|
|
74
|
+
const guidesDestDir = join(agenticStaging, 'guides')
|
|
52
75
|
mkdirSync(guidesDestDir, { recursive: true })
|
|
53
76
|
|
|
54
|
-
//
|
|
55
|
-
//
|
|
56
|
-
//
|
|
57
|
-
// in an incremental `dist/` from an older build. Mirrors packages/create-app/build.mjs;
|
|
58
|
-
// conceptual guides remain while stale single-dot package guides are removed below.
|
|
59
|
-
rmSync(join(guidesDestDir, 'modules'), { recursive: true, force: true })
|
|
60
|
-
rmSync(join(guidesDestDir, 'reference-modules'), { recursive: true, force: true })
|
|
61
|
-
rmSync(join(guidesDestDir, 'reference-module-facts.json'), { force: true })
|
|
62
|
-
rmSync(join(guidesDestDir, 'module-facts.v2.json'), { force: true })
|
|
63
|
-
for (const entry of readdirSync(guidesDestDir)) {
|
|
64
|
-
if (/^core\..+\.md$/.test(entry)) {
|
|
65
|
-
rmSync(join(guidesDestDir, entry))
|
|
66
|
-
}
|
|
67
|
-
}
|
|
77
|
+
// Nothing stale can survive here: the staged tree is built from create-app/agentic alone, so the
|
|
78
|
+
// legacy `core.<module>.md` redirect stubs (#3754) and the unreachable package-level `<pkg>.md`
|
|
79
|
+
// guides are absent unless this build writes them — which it does not. The conceptual guides remain.
|
|
68
80
|
|
|
69
81
|
let guidesFound = 0
|
|
70
82
|
for (const pkg of readdirSync(packagesDir)) {
|
|
71
|
-
// Package-level source guides remain for monorepo context, but standalone apps route
|
|
72
|
-
// through conceptual and module-level guides, so remove their stale emitted copies.
|
|
73
|
-
const guideSource = join(packagesDir, pkg, 'agentic', 'standalone-guide.md')
|
|
74
|
-
if (existsSync(guideSource)) {
|
|
75
|
-
rmSync(join(guidesDestDir, `${pkg}.md`), { force: true })
|
|
76
|
-
}
|
|
77
|
-
|
|
78
83
|
const modulesDir = join(packagesDir, pkg, 'src', 'modules')
|
|
79
84
|
if (!existsSync(modulesDir)) continue
|
|
80
85
|
|
|
@@ -88,7 +93,7 @@ await buildPackage(packageDir, {
|
|
|
88
93
|
}
|
|
89
94
|
|
|
90
95
|
if (guidesFound > 0) {
|
|
91
|
-
console.log(`Discovered ${guidesFound} standalone guides → dist/agentic/guides/`)
|
|
96
|
+
console.log(`Discovered ${guidesFound} standalone guides → dist/agentic.staging/guides/`)
|
|
92
97
|
}
|
|
93
98
|
|
|
94
99
|
// Generate per-module fact-sheets plus legacy-v1 and corrected-v2 JSON sidecars
|
|
@@ -154,7 +159,9 @@ await buildPackage(packageDir, {
|
|
|
154
159
|
writeFileSync(join(guidesDestDir, 'framework-extension-points.md'), frameworkMarkdown)
|
|
155
160
|
|
|
156
161
|
for (const warning of warnings) console.warn(warning)
|
|
157
|
-
console.log(
|
|
162
|
+
console.log(
|
|
163
|
+
`Generated ${Object.keys(directoryByModule).length} module fact-sheets → dist/agentic.staging/guides/modules/`,
|
|
164
|
+
)
|
|
158
165
|
|
|
159
166
|
const referenceBundle = {}
|
|
160
167
|
const referenceGuidesDir = join(guidesDestDir, 'reference-modules')
|
|
@@ -184,10 +191,18 @@ await buildPackage(packageDir, {
|
|
|
184
191
|
}
|
|
185
192
|
writeFileSync(join(guidesDestDir, 'reference-module-facts.json'), renderReferenceModuleFactsJson(referenceBundle))
|
|
186
193
|
console.log(
|
|
187
|
-
`Generated ${REFERENCE_MODULE_IDS.length} local reference projection(s) → dist/agentic/guides/reference-modules/`,
|
|
194
|
+
`Generated ${REFERENCE_MODULE_IDS.length} local reference projection(s) → dist/agentic.staging/guides/reference-modules/`,
|
|
188
195
|
)
|
|
189
196
|
} else {
|
|
190
197
|
console.warn('[module-facts] no package modules discovered; skipping fact-sheet generation')
|
|
191
198
|
}
|
|
199
|
+
|
|
200
|
+
// Publish the staged tree. A reader either sees the complete previous build or the complete new
|
|
201
|
+
// one; the only gap is between the two renames, instead of the multi-second incomplete window an
|
|
202
|
+
// in-place refresh leaves behind (#5059, #5104).
|
|
203
|
+
if (existsSync(agenticDist)) renameSync(agenticDist, agenticPrevious)
|
|
204
|
+
renameSync(agenticStaging, agenticDist)
|
|
205
|
+
rmSync(agenticPrevious, { recursive: true, force: true })
|
|
206
|
+
console.log('Published dist/agentic.staging/ → dist/agentic/')
|
|
192
207
|
},
|
|
193
208
|
})
|