@open-mercato/cli 0.7.1-develop.7150.1.c1941e0c22 → 0.7.1-develop.7151.1.00d0391847
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 +5 -1
- package/dist/agentic/guides/module-facts.json +828 -149
- package/dist/agentic/guides/module-facts.v2.json +828 -149
- 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_discord/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/channel_resend/acl-features.md +12 -0
- package/dist/agentic/guides/modules/channel_resend/contribution-resolutions.md +11 -0
- package/dist/agentic/guides/modules/channel_resend/di-registrations-rich.md +12 -0
- package/dist/agentic/guides/modules/channel_resend/exact-override-targets.md +16 -0
- package/dist/agentic/guides/modules/channel_resend/index.md +18 -0
- package/dist/agentic/guides/modules/channel_resend/owned-contract-module-metadata.md +11 -0
- package/dist/agentic/guides/modules/channel_resend/setup.md +11 -0
- package/dist/agentic/guides/modules/channel_resend/umes-contributions.md +11 -0
- package/dist/agentic/guides/modules/channel_ses/acl-features.md +12 -0
- package/dist/agentic/guides/modules/channel_ses/contribution-resolutions.md +11 -0
- package/dist/agentic/guides/modules/channel_ses/di-registrations-rich.md +12 -0
- package/dist/agentic/guides/modules/channel_ses/exact-override-targets.md +16 -0
- package/dist/agentic/guides/modules/channel_ses/index.md +18 -0
- package/dist/agentic/guides/modules/channel_ses/owned-contract-module-metadata.md +11 -0
- package/dist/agentic/guides/modules/channel_ses/setup.md +11 -0
- package/dist/agentic/guides/modules/channel_ses/umes-contributions.md +11 -0
- package/dist/agentic/guides/modules/checkout/index.md +1 -1
- package/dist/agentic/guides/modules/communication_channels/di-registrations-rich.md +10 -9
- package/dist/agentic/guides/modules/communication_channels/exact-override-targets.md +12 -11
- package/dist/agentic/guides/modules/communication_channels/index.md +1 -1
- package/dist/agentic/guides/modules/communication_channels/setup.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/documents/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/agentic/shared/ai/harness/cases.json +4 -2
- package/dist/lib/testing/integration.js +30 -4
- package/dist/lib/testing/integration.js.map +2 -2
- package/package.json +6 -6
- package/src/lib/testing/integration.ts +37 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-mercato/cli",
|
|
3
|
-
"version": "0.7.1-develop.
|
|
3
|
+
"version": "0.7.1-develop.7151.1.00d0391847",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -60,9 +60,9 @@
|
|
|
60
60
|
"@mikro-orm/decorators": "^7.1.8",
|
|
61
61
|
"@mikro-orm/migrations": "^7.1.8",
|
|
62
62
|
"@mikro-orm/postgresql": "^7.1.8",
|
|
63
|
-
"@open-mercato/queue": "0.7.1-develop.
|
|
64
|
-
"@open-mercato/shared": "0.7.1-develop.
|
|
65
|
-
"@open-mercato/telemetry": "0.7.1-develop.
|
|
63
|
+
"@open-mercato/queue": "0.7.1-develop.7151.1.00d0391847",
|
|
64
|
+
"@open-mercato/shared": "0.7.1-develop.7151.1.00d0391847",
|
|
65
|
+
"@open-mercato/telemetry": "0.7.1-develop.7151.1.00d0391847",
|
|
66
66
|
"cross-spawn": "^7.0.6",
|
|
67
67
|
"pg": "8.22.0",
|
|
68
68
|
"semver": "^7.8.5",
|
|
@@ -73,10 +73,10 @@
|
|
|
73
73
|
"typescript-js": "npm:typescript@6.0.3"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
|
-
"@open-mercato/shared": "0.7.1-develop.
|
|
76
|
+
"@open-mercato/shared": "0.7.1-develop.7151.1.00d0391847"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
|
-
"@open-mercato/shared": "0.7.1-develop.
|
|
79
|
+
"@open-mercato/shared": "0.7.1-develop.7151.1.00d0391847",
|
|
80
80
|
"@types/jest": "^30.0.0",
|
|
81
81
|
"jest": "^30.4.2",
|
|
82
82
|
"ts-jest": "^29.4.12"
|
|
@@ -3,7 +3,7 @@ import { spawnSync } from 'node:child_process'
|
|
|
3
3
|
import { createServer } from 'node:net'
|
|
4
4
|
import { existsSync, readFileSync } from 'node:fs'
|
|
5
5
|
import { mkdir, readdir, readFile, rm, stat, writeFile } from 'node:fs/promises'
|
|
6
|
-
import { createHash } from 'node:crypto'
|
|
6
|
+
import { createHash, randomBytes } from 'node:crypto'
|
|
7
7
|
import path from 'node:path'
|
|
8
8
|
import { createInterface, type Interface } from 'node:readline/promises'
|
|
9
9
|
import { stdin as input, stdout as output } from 'node:process'
|
|
@@ -24,6 +24,11 @@ type EphemeralRuntimeOptions = {
|
|
|
24
24
|
environmentOverrides?: NodeJS.ProcessEnv
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
+
const TEST_EMAIL_CAPTURE_ACCESS_TOKEN =
|
|
28
|
+
process.env.OM_TEST_EMAIL_CAPTURE_ACCESS_TOKEN ?? randomBytes(32).toString('hex')
|
|
29
|
+
const TEST_EMAIL_CAPTURE_CORRELATION_TOKEN =
|
|
30
|
+
process.env.OM_TEST_EMAIL_CAPTURE_CORRELATION_TOKEN ?? randomBytes(32).toString('hex')
|
|
31
|
+
|
|
27
32
|
export type EphemeralEnvironmentHandle = {
|
|
28
33
|
baseUrl: string
|
|
29
34
|
port: number
|
|
@@ -274,6 +279,11 @@ const EPHEMERAL_BUILD_CACHE_STATE_PATH = path.join(projectRootDirectory, '.ai',
|
|
|
274
279
|
const EPHEMERAL_CACHE_DB_PATH = path.join(projectRootDirectory, '.ai', 'qa', 'ephemeral-cache.sqlite')
|
|
275
280
|
const EPHEMERAL_EMAIL_CAPTURE_PATH = path.join(projectRootDirectory, '.ai', 'qa', 'email-capture.jsonl')
|
|
276
281
|
const EPHEMERAL_QUEUE_BASE_DIR = path.join(appDirectory, '.mercato', 'queue')
|
|
282
|
+
// The Communications Hub keeps its own tenant-scoped capture, in runtime state rather than in the
|
|
283
|
+
// repo: its record shape differs from the unscoped `shared/lib/email/send` capture above, and the
|
|
284
|
+
// repo ships a committed fixture copy of that one. One file for both would make each mechanism
|
|
285
|
+
// read the other's records.
|
|
286
|
+
const EPHEMERAL_SYSTEM_EMAIL_CAPTURE_PATH = path.join(appDirectory, '.mercato', 'test-email-capture.jsonl')
|
|
277
287
|
const PRIVATE_ATTACHMENTS_PARTITION_ENV_KEY = 'ATTACHMENTS_PARTITION_PRIVATE_ATTACHMENTS_ROOT'
|
|
278
288
|
const EPHEMERAL_PRIVATE_ATTACHMENTS_ROOT = path.join(
|
|
279
289
|
resolveDefaultPrivateAttachmentsAppDirectory(),
|
|
@@ -2170,8 +2180,18 @@ function buildReusableEnvironment(
|
|
|
2170
2180
|
OM_ENABLE_ENTERPRISE_MODULES_SSO: process.env.OM_ENABLE_ENTERPRISE_MODULES_SSO ?? enterpriseModulesFlag,
|
|
2171
2181
|
OM_ENABLE_ENTERPRISE_MODULES_SECURITY: process.env.OM_ENABLE_ENTERPRISE_MODULES_SECURITY ?? enterpriseModulesFlag,
|
|
2172
2182
|
OM_TEST_MODE: '1',
|
|
2173
|
-
OM_TEST_EMAIL_CAPTURE_PATH: EPHEMERAL_EMAIL_CAPTURE_PATH,
|
|
2183
|
+
OM_TEST_EMAIL_CAPTURE_PATH: process.env.OM_TEST_EMAIL_CAPTURE_PATH ?? EPHEMERAL_EMAIL_CAPTURE_PATH,
|
|
2174
2184
|
OM_TEST_AUTH_RATE_LIMIT_MODE: 'opt-in',
|
|
2185
|
+
OM_DISABLE_EMAIL_DELIVERY: '0',
|
|
2186
|
+
OM_ENABLE_TEST_CHANNEL_SEEDING: 'true',
|
|
2187
|
+
OM_ENABLE_TEST_EMAIL_CAPTURE_DELIVERY: 'true',
|
|
2188
|
+
OM_TEST_SYSTEM_EMAIL_CAPTURE_PATH: EPHEMERAL_SYSTEM_EMAIL_CAPTURE_PATH,
|
|
2189
|
+
OM_TEST_EMAIL_CAPTURE_ACCESS_TOKEN: TEST_EMAIL_CAPTURE_ACCESS_TOKEN,
|
|
2190
|
+
OM_TEST_EMAIL_CAPTURE_CORRELATION_TOKEN: TEST_EMAIL_CAPTURE_CORRELATION_TOKEN,
|
|
2191
|
+
SYSTEM_EMAIL_PROVIDER: '__test_seed__',
|
|
2192
|
+
EMAIL_FROM: process.env.EMAIL_FROM ?? 'system@test-seed.local',
|
|
2193
|
+
NOTIFICATIONS_EMAIL_FROM: process.env.NOTIFICATIONS_EMAIL_FROM ?? 'notifications@test-seed.local',
|
|
2194
|
+
ADMIN_EMAIL: process.env.ADMIN_EMAIL ?? 'admin@test-seed.local',
|
|
2175
2195
|
// Register the test-only `push_stub` channel adapter in the reused Playwright
|
|
2176
2196
|
// process (and any drain/worker child it spawns) so push integration specs can
|
|
2177
2197
|
// drive real delivery. Production-safe + inert unless a delivery row carries
|
|
@@ -3549,8 +3569,17 @@ export async function startEphemeralEnvironment(options: EphemeralRuntimeOptions
|
|
|
3549
3569
|
OM_ENABLE_ENTERPRISE_MODULES_SSO: process.env.OM_ENABLE_ENTERPRISE_MODULES_SSO ?? enterpriseModulesFlag,
|
|
3550
3570
|
OM_ENABLE_ENTERPRISE_MODULES_SECURITY: process.env.OM_ENABLE_ENTERPRISE_MODULES_SECURITY ?? enterpriseModulesFlag,
|
|
3551
3571
|
OM_TEST_MODE: '1',
|
|
3552
|
-
OM_TEST_EMAIL_CAPTURE_PATH: EPHEMERAL_EMAIL_CAPTURE_PATH,
|
|
3572
|
+
OM_TEST_EMAIL_CAPTURE_PATH: process.env.OM_TEST_EMAIL_CAPTURE_PATH ?? EPHEMERAL_EMAIL_CAPTURE_PATH,
|
|
3553
3573
|
OM_TEST_AUTH_RATE_LIMIT_MODE: 'opt-in',
|
|
3574
|
+
OM_ENABLE_TEST_CHANNEL_SEEDING: 'true',
|
|
3575
|
+
OM_ENABLE_TEST_EMAIL_CAPTURE_DELIVERY: 'true',
|
|
3576
|
+
OM_TEST_SYSTEM_EMAIL_CAPTURE_PATH: EPHEMERAL_SYSTEM_EMAIL_CAPTURE_PATH,
|
|
3577
|
+
OM_TEST_EMAIL_CAPTURE_ACCESS_TOKEN: TEST_EMAIL_CAPTURE_ACCESS_TOKEN,
|
|
3578
|
+
OM_TEST_EMAIL_CAPTURE_CORRELATION_TOKEN: TEST_EMAIL_CAPTURE_CORRELATION_TOKEN,
|
|
3579
|
+
SYSTEM_EMAIL_PROVIDER: '__test_seed__',
|
|
3580
|
+
EMAIL_FROM: process.env.EMAIL_FROM ?? 'system@test-seed.local',
|
|
3581
|
+
NOTIFICATIONS_EMAIL_FROM: process.env.NOTIFICATIONS_EMAIL_FROM ?? 'notifications@test-seed.local',
|
|
3582
|
+
ADMIN_EMAIL: process.env.ADMIN_EMAIL ?? 'admin@test-seed.local',
|
|
3554
3583
|
// Register the network-free `push_stub` channel adapter so push integration
|
|
3555
3584
|
// specs (TC-PUSH-003) can drive the strategy → delivery-row → send-push worker
|
|
3556
3585
|
// → sendMessage chain end-to-end without a real FCM/APNs/Expo provider. The
|
|
@@ -3569,7 +3598,11 @@ export async function startEphemeralEnvironment(options: EphemeralRuntimeOptions
|
|
|
3569
3598
|
// Expo's receipt reaper ignores rows younger than 15 minutes by default (it polls a real
|
|
3570
3599
|
// provider's async receipts). No integration test can wait that out — poll immediately.
|
|
3571
3600
|
OM_PUSH_RECEIPT_MIN_AGE_MINUTES: process.env.OM_PUSH_RECEIPT_MIN_AGE_MINUTES ?? '0',
|
|
3572
|
-
|
|
3601
|
+
// Delivery stays ON here (it was '1' before the pluggable-provider work) because
|
|
3602
|
+
// `SYSTEM_EMAIL_PROVIDER='__test_seed__'` above routes every send into the local
|
|
3603
|
+
// capture file rather than a network provider. The email integration specs assert
|
|
3604
|
+
// on those captured messages, so disabling delivery would black-hole them.
|
|
3605
|
+
OM_DISABLE_EMAIL_DELIVERY: '0',
|
|
3573
3606
|
OM_WEBHOOKS_ALLOW_PRIVATE_URLS: process.env.OM_WEBHOOKS_ALLOW_PRIVATE_URLS ?? '1',
|
|
3574
3607
|
// Read at build time as well as at runtime, so this block has to carry it:
|
|
3575
3608
|
// the app build and `yarn start` both run with this environment. See the
|