@open-mercato/cli 0.6.7-develop.6758.1.697eade236 → 0.6.7-develop.6766.1.40c9011995

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 (79) hide show
  1. package/.turbo/turbo-build.log +3 -3
  2. package/build.mjs +2 -1
  3. package/dist/agentic/guides/extensions.md +20 -3
  4. package/dist/agentic/guides/framework-extension-points.md +36 -0
  5. package/dist/agentic/guides/module-facts.json +39708 -230
  6. package/dist/agentic/guides/modules/ai_assistant.md +49 -9
  7. package/dist/agentic/guides/modules/api_docs.md +11 -1
  8. package/dist/agentic/guides/modules/api_keys.md +24 -1
  9. package/dist/agentic/guides/modules/attachments.md +22 -6
  10. package/dist/agentic/guides/modules/audit_logs.md +35 -1
  11. package/dist/agentic/guides/modules/auth.md +79 -15
  12. package/dist/agentic/guides/modules/business_rules.md +36 -3
  13. package/dist/agentic/guides/modules/catalog.md +160 -22
  14. package/dist/agentic/guides/modules/channel_gmail.md +14 -1
  15. package/dist/agentic/guides/modules/channel_imap.md +14 -1
  16. package/dist/agentic/guides/modules/checkout.md +134 -19
  17. package/dist/agentic/guides/modules/communication_channels.md +110 -20
  18. package/dist/agentic/guides/modules/configs.md +15 -1
  19. package/dist/agentic/guides/modules/content.md +11 -1
  20. package/dist/agentic/guides/modules/currencies.md +50 -9
  21. package/dist/agentic/guides/modules/customer_accounts.md +151 -28
  22. package/dist/agentic/guides/modules/customers.md +299 -52
  23. package/dist/agentic/guides/modules/dashboards.md +30 -1
  24. package/dist/agentic/guides/modules/data_sync.md +40 -7
  25. package/dist/agentic/guides/modules/dictionaries.md +24 -6
  26. package/dist/agentic/guides/modules/directory.md +52 -9
  27. package/dist/agentic/guides/modules/entities.md +41 -1
  28. package/dist/agentic/guides/modules/events.md +11 -1
  29. package/dist/agentic/guides/modules/feature_toggles.md +15 -1
  30. package/dist/agentic/guides/modules/gateway_stripe.md +14 -1
  31. package/dist/agentic/guides/modules/generators.md +11 -1
  32. package/dist/agentic/guides/modules/inbox_ops.md +58 -16
  33. package/dist/agentic/guides/modules/integrations.md +30 -7
  34. package/dist/agentic/guides/modules/messages.md +68 -13
  35. package/dist/agentic/guides/modules/notifications.md +13 -1
  36. package/dist/agentic/guides/modules/onboarding.md +13 -1
  37. package/dist/agentic/guides/modules/payment_gateways.md +51 -12
  38. package/dist/agentic/guides/modules/perspectives.md +16 -1
  39. package/dist/agentic/guides/modules/planner.md +33 -9
  40. package/dist/agentic/guides/modules/portal.md +24 -1
  41. package/dist/agentic/guides/modules/progress.md +34 -9
  42. package/dist/agentic/guides/modules/query_index.md +56 -3
  43. package/dist/agentic/guides/modules/record_locks.md +60 -13
  44. package/dist/agentic/guides/modules/resources.md +79 -18
  45. package/dist/agentic/guides/modules/sales.md +238 -48
  46. package/dist/agentic/guides/modules/scheduler.md +23 -7
  47. package/dist/agentic/guides/modules/search.md +28 -3
  48. package/dist/agentic/guides/modules/security.md +106 -23
  49. package/dist/agentic/guides/modules/shipping_carriers.md +38 -10
  50. package/dist/agentic/guides/modules/sso.md +47 -15
  51. package/dist/agentic/guides/modules/staff.md +117 -38
  52. package/dist/agentic/guides/modules/storage_s3.md +13 -1
  53. package/dist/agentic/guides/modules/sync_akeneo.md +13 -1
  54. package/dist/agentic/guides/modules/sync_excel.md +15 -1
  55. package/dist/agentic/guides/modules/system_status_overlays.md +14 -1
  56. package/dist/agentic/guides/modules/translations.md +25 -5
  57. package/dist/agentic/guides/modules/webhooks.md +85 -15
  58. package/dist/agentic/guides/modules/wms.md +234 -31
  59. package/dist/agentic/guides/modules/workflows.md +114 -30
  60. package/dist/agentic/guides/upstream/BACKWARD_COMPATIBILITY.md +7 -0
  61. package/dist/agentic/guides/upstream/manifest.json +2 -2
  62. package/dist/agentic/shared/AGENTS.md.template +2 -2
  63. package/dist/agentic/shared/ai/harness/README.md +2 -0
  64. package/dist/agentic/shared/ai/harness/cases.json +80 -39
  65. package/dist/agentic/shared/ai/skills/om-system-extension/references/mechanism-selector.md +3 -1
  66. package/dist/agentic/shared/ai/skills/om-system-extension/references/unified-overrides.md +2 -1
  67. package/dist/agentic/shared/scripts/framework-context.mjs +3 -9
  68. package/dist/lib/generators/module-extension-facts.js +1185 -0
  69. package/dist/lib/generators/module-extension-facts.js.map +7 -0
  70. package/dist/lib/generators/module-facts.js +134 -7
  71. package/dist/lib/generators/module-facts.js.map +2 -2
  72. package/dist/lib/generators/module-registry.js +1 -0
  73. package/dist/lib/generators/module-registry.js.map +2 -2
  74. package/package.json +5 -5
  75. package/src/lib/generators/__tests__/module-extension-facts.test.ts +402 -0
  76. package/src/lib/generators/__tests__/module-facts.bc-guard.test.ts +39 -2
  77. package/src/lib/generators/module-extension-facts.ts +1428 -0
  78. package/src/lib/generators/module-facts.ts +143 -6
  79. package/src/lib/generators/module-registry.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  # ai_assistant — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/ai-assistant 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/ai-assistant 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/ai-assistant/src/modules/ai_assistant](../../../node_modules/@open-mercato/ai-assistant/src/modules/ai_assistant)
4
4
 
5
5
  ## Entities
@@ -19,14 +19,14 @@ Source root: [node_modules/@open-mercato/ai-assistant/src/modules/ai_assistant](
19
19
 
20
20
  ## Events (6)
21
21
 
22
- | ID | Category | Entity |
23
- |---|---|---|
24
- | ai.action.confirmed | — | ai_pending_action |
25
- | ai.action.cancelled | — | ai_pending_action |
26
- | ai.action.expired | — | ai_pending_action |
27
- | ai.token_usage.recorded | — | token_usage |
28
- | ai_assistant.conversation.shared | — | ai_chat_conversation |
29
- | ai_assistant.conversation.unshared | — | ai_chat_conversation |
22
+ | ID | Category | Entity | Browser transport |
23
+ |---|---|---|---|
24
+ | ai.action.confirmed | — | ai_pending_action | — |
25
+ | ai.action.cancelled | — | ai_pending_action | — |
26
+ | ai.action.expired | — | ai_pending_action | — |
27
+ | ai.token_usage.recorded | — | token_usage | — |
28
+ | ai_assistant.conversation.shared | — | ai_chat_conversation | client |
29
+ | ai_assistant.conversation.unshared | — | ai_chat_conversation | client |
30
30
 
31
31
  ## ACL features (8)
32
32
 
@@ -65,6 +65,46 @@ _none_
65
65
  - Entity IDs: _none_
66
66
  - Table IDs: _none_
67
67
 
68
+ ## UMES hosts
69
+
70
+ | ID / pattern | Family | Supports | Context | Stability |
71
+ |---|---|---|---|---|
72
+ | ai_assistant:ai_agent_mutation_policy_override | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
73
+ | ai_assistant:ai_agent_prompt_override | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
74
+ | ai_assistant:ai_agent_runtime_override | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
75
+ | ai_assistant:ai_chat_conversation | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
76
+ | ai_assistant:ai_chat_conversation_participant | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
77
+ | ai_assistant:ai_chat_message | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
78
+ | ai_assistant:ai_pending_action | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
79
+ | ai_assistant:ai_tenant_model_allowlist | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
80
+ | ai_assistant:ai_token_usage_daily | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
81
+ | ai_assistant:ai_token_usage_event | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
82
+ | ai_assistant.conversation.shared | event | async-subscriber, sync-subscriber, browser-client | tenant-organization-and-audience | STABLE |
83
+ | ai_assistant.conversation.unshared | event | async-subscriber, sync-subscriber, browser-client | tenant-organization-and-audience | STABLE |
84
+ | ai.action.cancelled | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
85
+ | ai.action.confirmed | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
86
+ | ai.action.expired | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
87
+ | ai.token_usage.recorded | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
88
+
89
+ ## UMES contributions
90
+
91
+ | ID | Kind | Target | Phase / operations | Contract | Resolution |
92
+ |---|---|---|---|---|---|
93
+ | ai_assistant.conversation.shared.browser | browser-reaction | ai_assistant.conversation.shared | — | audienceScopeContract=tenant-organization-user-role-and-customer; hooks=useAppEvent,useOperationProgress; transports=client | fact-ref |
94
+ | ai_assistant.conversation.unshared.browser | browser-reaction | ai_assistant.conversation.unshared | — | audienceScopeContract=tenant-organization-user-role-and-customer; hooks=useAppEvent,useOperationProgress; transports=client | fact-ref |
95
+ | ai:attachments.list_record_attachments | specialized-registry | attachments.list_record_attachments | — | registry=ai; registryId=attachments.list_record_attachments; specialistRoute=aiTools | fact-ref |
96
+ | ai:attachments.read_attachment | specialized-registry | attachments.read_attachment | — | registry=ai; registryId=attachments.read_attachment; specialistRoute=aiTools | fact-ref |
97
+ | ai:attachments.transfer_record_attachments | specialized-registry | attachments.transfer_record_attachments | — | registry=ai; registryId=attachments.transfer_record_attachments; specialistRoute=aiTools | fact-ref |
98
+ | ai:meta.describe_agent | specialized-registry | meta.describe_agent | — | registry=ai; registryId=meta.describe_agent; specialistRoute=aiTools | fact-ref |
99
+ | ai:meta.list_agents | specialized-registry | meta.list_agents | — | registry=ai; registryId=meta.list_agents; specialistRoute=aiTools | fact-ref |
100
+ | ai:meta.update_task_plan | specialized-registry | meta.update_task_plan | — | registry=ai; registryId=meta.update_task_plan; specialistRoute=aiTools | fact-ref |
101
+ | ai:search.get_record_context | specialized-registry | search.get_record_context | — | registry=ai; registryId=search.get_record_context; specialistRoute=aiTools | fact-ref |
102
+ | ai:search.hybrid_search | specialized-registry | search.hybrid_search | — | registry=ai; registryId=search.hybrid_search; specialistRoute=aiTools | fact-ref |
103
+ | notification:ai_assistant.conversation_shared | specialized-registry | ai_assistant.conversation_shared | — | registry=notification; registryId=ai_assistant.conversation_shared; specialistRoute=notifications | fact-ref |
104
+ | ai_assistant:conversation-shared-notify | subscriber | ai_assistant.conversation.shared | async-delivery | event=ai_assistant.conversation.shared; persistent=true; subscriberId=ai_assistant:conversation-shared-notify; sync=false | fact-ref |
105
+
106
+
107
+
68
108
  ## Notifications
69
109
 
70
110
  ai_assistant.conversation_shared
@@ -1,5 +1,5 @@
1
1
  # api_docs — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/api_docs](../../../node_modules/@open-mercato/core/src/modules/api_docs)
4
4
 
5
5
  ## Entities
@@ -43,6 +43,16 @@ _none_
43
43
  - Entity IDs: _none_
44
44
  - Table IDs: _none_
45
45
 
46
+ ## UMES hosts
47
+
48
+ _none_
49
+
50
+ ## UMES contributions
51
+
52
+ _none_
53
+
54
+
55
+
46
56
  ## Notifications
47
57
 
48
58
  _none_
@@ -1,5 +1,5 @@
1
1
  # api_keys — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/api_keys](../../../node_modules/@open-mercato/core/src/modules/api_keys)
4
4
 
5
5
  ## Entities
@@ -44,6 +44,29 @@ _none_
44
44
  - Entity IDs: _none_
45
45
  - Table IDs: api_keys.list
46
46
 
47
+ ## UMES hosts
48
+
49
+ | ID / pattern | Family | Supports | Context | Stability |
50
+ |---|---|---|---|---|
51
+ | data-table:api_keys.list | data-table | component-replacement | — | FROZEN |
52
+ | data-table:api_keys.list:bulk-actions | data-table | bulk-action | — | FROZEN |
53
+ | data-table:api_keys.list:columns | data-table | column-widget | — | FROZEN |
54
+ | data-table:api_keys.list:filters | data-table | filter-widget | — | FROZEN |
55
+ | data-table:api_keys.list:footer | data-table | render-widget | — | FROZEN |
56
+ | data-table:api_keys.list:header | data-table | render-widget | — | FROZEN |
57
+ | data-table:api_keys.list:row-actions | data-table | row-action | — | FROZEN |
58
+ | data-table:api_keys.list:search-trailing | data-table | render-widget | — | FROZEN |
59
+ | data-table:api_keys.list:toolbar | data-table | toolbar-widget | — | FROZEN |
60
+ | api_keys:api_key | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
61
+
62
+ ## UMES contributions
63
+
64
+ _none_
65
+
66
+ ## UMES diagnostics
67
+
68
+ - unbound-helper: data-table:api_keys.list:empty-state
69
+
47
70
  ## Notifications
48
71
 
49
72
  _none_
@@ -1,5 +1,5 @@
1
1
  # attachments — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/attachments](../../../node_modules/@open-mercato/core/src/modules/attachments)
4
4
 
5
5
  ## Entities
@@ -11,11 +11,11 @@ Source root: [node_modules/@open-mercato/core/src/modules/attachments](../../../
11
11
 
12
12
  ## Events (3)
13
13
 
14
- | ID | Category | Entity |
15
- |---|---|---|
16
- | attachments.attachment.created | crud | attachment |
17
- | attachments.attachment.updated | crud | attachment |
18
- | attachments.attachment.deleted | crud | attachment |
14
+ | ID | Category | Entity | Browser transport |
15
+ |---|---|---|---|
16
+ | attachments.attachment.created | crud | attachment | — |
17
+ | attachments.attachment.updated | crud | attachment | — |
18
+ | attachments.attachment.deleted | crud | attachment | — |
19
19
 
20
20
  ## ACL features (2)
21
21
 
@@ -49,6 +49,22 @@ _none_
49
49
  - Entity IDs: _none_
50
50
  - Table IDs: _none_
51
51
 
52
+ ## UMES hosts
53
+
54
+ | ID / pattern | Family | Supports | Context | Stability |
55
+ |---|---|---|---|---|
56
+ | attachments:attachment | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
57
+ | attachments:attachment_partition | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
58
+ | attachments.attachment.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
59
+ | attachments.attachment.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
60
+ | attachments.attachment.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
61
+
62
+ ## UMES contributions
63
+
64
+ _none_
65
+
66
+
67
+
52
68
  ## Notifications
53
69
 
54
70
  _none_
@@ -1,5 +1,5 @@
1
1
  # audit_logs — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/audit_logs](../../../node_modules/@open-mercato/core/src/modules/audit_logs)
4
4
 
5
5
  ## Entities
@@ -44,6 +44,40 @@ _none_
44
44
  - Entity IDs: _none_
45
45
  - Table IDs: audit_logs.access.list · audit_logs.actions.list
46
46
 
47
+ ## UMES hosts
48
+
49
+ | ID / pattern | Family | Supports | Context | Stability |
50
+ |---|---|---|---|---|
51
+ | data-table:audit_logs.access.list | data-table | component-replacement | — | FROZEN |
52
+ | data-table:audit_logs.access.list:bulk-actions | data-table | bulk-action | — | FROZEN |
53
+ | data-table:audit_logs.access.list:columns | data-table | column-widget | — | FROZEN |
54
+ | data-table:audit_logs.access.list:filters | data-table | filter-widget | — | FROZEN |
55
+ | data-table:audit_logs.access.list:footer | data-table | render-widget | — | FROZEN |
56
+ | data-table:audit_logs.access.list:header | data-table | render-widget | — | FROZEN |
57
+ | data-table:audit_logs.access.list:row-actions | data-table | row-action | — | FROZEN |
58
+ | data-table:audit_logs.access.list:search-trailing | data-table | render-widget | — | FROZEN |
59
+ | data-table:audit_logs.access.list:toolbar | data-table | toolbar-widget | — | FROZEN |
60
+ | data-table:audit_logs.actions.list | data-table | component-replacement | — | FROZEN |
61
+ | data-table:audit_logs.actions.list:bulk-actions | data-table | bulk-action | — | FROZEN |
62
+ | data-table:audit_logs.actions.list:columns | data-table | column-widget | — | FROZEN |
63
+ | data-table:audit_logs.actions.list:filters | data-table | filter-widget | — | FROZEN |
64
+ | data-table:audit_logs.actions.list:footer | data-table | render-widget | — | FROZEN |
65
+ | data-table:audit_logs.actions.list:header | data-table | render-widget | — | FROZEN |
66
+ | data-table:audit_logs.actions.list:row-actions | data-table | row-action | — | FROZEN |
67
+ | data-table:audit_logs.actions.list:search-trailing | data-table | render-widget | — | FROZEN |
68
+ | data-table:audit_logs.actions.list:toolbar | data-table | toolbar-widget | — | FROZEN |
69
+ | audit_logs:access_log | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
70
+ | audit_logs:action_log | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
71
+
72
+ ## UMES contributions
73
+
74
+ _none_
75
+
76
+ ## UMES diagnostics
77
+
78
+ - unbound-helper: data-table:audit_logs.access.list:empty-state
79
+ - unbound-helper: data-table:audit_logs.actions.list:empty-state
80
+
47
81
  ## Notifications
48
82
 
49
83
  _none_
@@ -1,5 +1,5 @@
1
1
  # auth — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/auth](../../../node_modules/@open-mercato/core/src/modules/auth)
4
4
 
5
5
  ## Entities
@@ -20,20 +20,20 @@ Source root: [node_modules/@open-mercato/core/src/modules/auth](../../../node_mo
20
20
 
21
21
  ## Events (12)
22
22
 
23
- | ID | Category | Entity |
24
- |---|---|---|
25
- | auth.user.created | crud | user |
26
- | auth.user.updated | crud | user |
27
- | auth.user.deleted | crud | user |
28
- | auth.role.created | crud | role |
29
- | auth.role.updated | crud | role |
30
- | auth.role.deleted | crud | role |
31
- | auth.login.success | lifecycle | — |
32
- | auth.login.failed | lifecycle | — |
33
- | auth.logout | lifecycle | — |
34
- | auth.password.changed | lifecycle | — |
35
- | auth.password.reset.requested | lifecycle | — |
36
- | auth.password.reset.completed | lifecycle | — |
23
+ | ID | Category | Entity | Browser transport |
24
+ |---|---|---|---|
25
+ | auth.user.created | crud | user | — |
26
+ | auth.user.updated | crud | user | — |
27
+ | auth.user.deleted | crud | user | — |
28
+ | auth.role.created | crud | role | — |
29
+ | auth.role.updated | crud | role | — |
30
+ | auth.role.deleted | crud | role | — |
31
+ | auth.login.success | lifecycle | — | — |
32
+ | auth.login.failed | lifecycle | — | — |
33
+ | auth.logout | lifecycle | — | — |
34
+ | auth.password.changed | lifecycle | — | — |
35
+ | auth.password.reset.requested | lifecycle | — | — |
36
+ | auth.password.reset.completed | lifecycle | — | — |
37
37
 
38
38
  ## ACL features (8)
39
39
 
@@ -80,6 +80,70 @@ _none_
80
80
  - Entity IDs: _none_
81
81
  - Table IDs: auth.roles.list · auth.users.list
82
82
 
83
+ ## UMES hosts
84
+
85
+ | ID / pattern | Family | Supports | Context | Stability |
86
+ |---|---|---|---|---|
87
+ | data-table:auth.roles.list | data-table | component-replacement | — | FROZEN |
88
+ | data-table:auth.roles.list:bulk-actions | data-table | bulk-action | — | FROZEN |
89
+ | data-table:auth.roles.list:columns | data-table | column-widget | — | FROZEN |
90
+ | data-table:auth.roles.list:filters | data-table | filter-widget | — | FROZEN |
91
+ | data-table:auth.roles.list:footer | data-table | render-widget | — | FROZEN |
92
+ | data-table:auth.roles.list:header | data-table | render-widget | — | FROZEN |
93
+ | data-table:auth.roles.list:row-actions | data-table | row-action | — | FROZEN |
94
+ | data-table:auth.roles.list:search-trailing | data-table | render-widget | — | FROZEN |
95
+ | data-table:auth.roles.list:toolbar | data-table | toolbar-widget | — | FROZEN |
96
+ | data-table:auth.users.list | data-table | component-replacement | — | FROZEN |
97
+ | data-table:auth.users.list:bulk-actions | data-table | bulk-action | — | FROZEN |
98
+ | data-table:auth.users.list:columns | data-table | column-widget | — | FROZEN |
99
+ | data-table:auth.users.list:filters | data-table | filter-widget | — | FROZEN |
100
+ | data-table:auth.users.list:footer | data-table | render-widget | — | FROZEN |
101
+ | data-table:auth.users.list:header | data-table | render-widget | — | FROZEN |
102
+ | data-table:auth.users.list:row-actions | data-table | row-action | — | FROZEN |
103
+ | data-table:auth.users.list:search-trailing | data-table | render-widget | — | FROZEN |
104
+ | data-table:auth.users.list:toolbar | data-table | toolbar-widget | — | FROZEN |
105
+ | auth:password_reset | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
106
+ | auth:role | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
107
+ | auth:role_acl | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
108
+ | auth:role_sidebar_preference | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
109
+ | auth:session | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
110
+ | auth:sidebar_variant | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
111
+ | auth:user | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
112
+ | auth:user_acl | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
113
+ | auth:user_consent | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
114
+ | auth:user_role | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
115
+ | auth:user_sidebar_preference | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
116
+ | auth.user | entity | response-enricher, query-enricher, mutation-guard | tenant-and-organization | STABLE |
117
+ | auth.login.failed | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
118
+ | auth.login.success | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
119
+ | auth.logout | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
120
+ | auth.password.changed | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
121
+ | auth.password.reset.completed | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
122
+ | auth.password.reset.requested | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
123
+ | auth.role.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
124
+ | auth.role.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
125
+ | auth.role.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
126
+ | auth.user.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
127
+ | auth.user.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
128
+ | auth.user.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
129
+ | auth.login:form | generic | render-widget | auth.login-form.v1 | FROZEN |
130
+
131
+ ## UMES contributions
132
+
133
+ | ID | Kind | Target | Phase / operations | Contract | Resolution |
134
+ |---|---|---|---|---|---|
135
+ | notification:auth.account.locked | specialized-registry | auth.account.locked | — | registry=notification; registryId=auth.account.locked; specialistRoute=notifications | fact-ref |
136
+ | notification:auth.login.new_device | specialized-registry | auth.login.new_device | — | registry=notification; registryId=auth.login.new_device; specialistRoute=notifications | fact-ref |
137
+ | notification:auth.password_reset.completed | specialized-registry | auth.password_reset.completed | — | registry=notification; registryId=auth.password_reset.completed; specialistRoute=notifications | fact-ref |
138
+ | notification:auth.password_reset.requested | specialized-registry | auth.password_reset.requested | — | registry=notification; registryId=auth.password_reset.requested; specialistRoute=notifications | fact-ref |
139
+ | notification:auth.role.assigned | specialized-registry | auth.role.assigned | — | registry=notification; registryId=auth.role.assigned; specialistRoute=notifications | fact-ref |
140
+ | notification:auth.role.revoked | specialized-registry | auth.role.revoked | — | registry=notification; registryId=auth.role.revoked; specialistRoute=notifications | fact-ref |
141
+
142
+ ## UMES diagnostics
143
+
144
+ - unbound-helper: data-table:auth.roles.list:empty-state
145
+ - unbound-helper: data-table:auth.users.list:empty-state
146
+
83
147
  ## Notifications
84
148
 
85
149
  auth.password_reset.requested · auth.password_reset.completed · auth.account.locked · auth.login.new_device · auth.role.assigned · auth.role.revoked
@@ -1,5 +1,5 @@
1
1
  # business_rules — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/business_rules](../../../node_modules/@open-mercato/core/src/modules/business_rules)
4
4
 
5
5
  ## Entities
@@ -11,9 +11,11 @@ Source root: [node_modules/@open-mercato/core/src/modules/business_rules](../../
11
11
  | business_rules:rule_set | RuleSet | rule_sets | yes | no |
12
12
  | business_rules:rule_set_member | RuleSetMember | rule_set_members | no | no |
13
13
 
14
- ## Events (0)
14
+ ## Events (1)
15
15
 
16
- _none_
16
+ | ID | Category | Entity | Browser transport |
17
+ |---|---|---|---|
18
+ | business_rules.rule.execution_failed | lifecycle | rule | — |
17
19
 
18
20
  ## ACL features (5)
19
21
 
@@ -53,6 +55,37 @@ _none_
53
55
  - Entity IDs: _none_
54
56
  - Table IDs: business-rules.rules.list
55
57
 
58
+ ## UMES hosts
59
+
60
+ | ID / pattern | Family | Supports | Context | Stability |
61
+ |---|---|---|---|---|
62
+ | data-table:business-rules.rules.list | data-table | component-replacement | — | FROZEN |
63
+ | data-table:business-rules.rules.list:bulk-actions | data-table | bulk-action | — | FROZEN |
64
+ | data-table:business-rules.rules.list:columns | data-table | column-widget | — | FROZEN |
65
+ | data-table:business-rules.rules.list:filters | data-table | filter-widget | — | FROZEN |
66
+ | data-table:business-rules.rules.list:footer | data-table | render-widget | — | FROZEN |
67
+ | data-table:business-rules.rules.list:header | data-table | render-widget | — | FROZEN |
68
+ | data-table:business-rules.rules.list:row-actions | data-table | row-action | — | FROZEN |
69
+ | data-table:business-rules.rules.list:search-trailing | data-table | render-widget | — | FROZEN |
70
+ | data-table:business-rules.rules.list:toolbar | data-table | toolbar-widget | — | FROZEN |
71
+ | business_rules:business_rule | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
72
+ | business_rules:rule_execution_log | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
73
+ | business_rules:rule_set | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
74
+ | business_rules:rule_set_member | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
75
+ | business_rules.rule.execution_failed | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
76
+
77
+ ## UMES contributions
78
+
79
+ | ID | Kind | Target | Phase / operations | Contract | Resolution |
80
+ |---|---|---|---|---|---|
81
+ | notification:business_rules.rule.execution_failed | specialized-registry | business_rules.rule.execution_failed | — | registry=notification; registryId=business_rules.rule.execution_failed; specialistRoute=notifications | fact-ref |
82
+ | business_rules:crud-rule-trigger | subscriber | * | async-delivery | event=*; persistent=true; subscriberId=business_rules:crud-rule-trigger; sync=false | pattern |
83
+ | business_rules:rule-execution-failed-notification | subscriber | business_rules.rule.execution_failed | async-delivery | event=business_rules.rule.execution_failed; persistent=true; subscriberId=business_rules:rule-execution-failed-notification; sync=false | fact-ref |
84
+
85
+ ## UMES diagnostics
86
+
87
+ - unbound-helper: data-table:business-rules.rules.list:empty-state
88
+
56
89
  ## Notifications
57
90
 
58
91
  business_rules.rule.execution_failed
@@ -1,5 +1,5 @@
1
1
  # catalog — module facts (generated, do not edit)
2
- <!-- generated from @open-mercato/core 0.6.7-develop.6758.1.697eade236; core 0.6.7-develop.6758.1.697eade236 — R1 staleness stamp -->
2
+ <!-- generated from @open-mercato/core 0.6.7-develop.6766.1.40c9011995; core 0.6.7-develop.6766.1.40c9011995 — R1 staleness stamp -->
3
3
  Source root: [node_modules/@open-mercato/core/src/modules/catalog](../../../node_modules/@open-mercato/core/src/modules/catalog)
4
4
 
5
5
  ## Entities
@@ -19,27 +19,28 @@ Source root: [node_modules/@open-mercato/core/src/modules/catalog](../../../node
19
19
  | catalog:catalog_price_kind | CatalogPriceKind | catalog_price_kinds | yes | no |
20
20
  | catalog:catalog_product_price | CatalogProductPrice | catalog_product_variant_prices | yes | yes |
21
21
 
22
- ## Events (17)
23
-
24
- | ID | Category | Entity |
25
- |---|---|---|
26
- | catalog.product.created | crud | product |
27
- | catalog.product.updated | crud | product |
28
- | catalog.product.deleted | crud | product |
29
- | catalog.product_unit_conversion.created | crud | product_unit_conversion |
30
- | catalog.product_unit_conversion.updated | crud | product_unit_conversion |
31
- | catalog.product_unit_conversion.deleted | crud | product_unit_conversion |
32
- | catalog.category.created | crud | category |
33
- | catalog.category.updated | crud | category |
34
- | catalog.category.deleted | crud | category |
35
- | catalog.variant.created | crud | variant |
36
- | catalog.variant.updated | crud | variant |
37
- | catalog.variant.deleted | crud | variant |
38
- | catalog.price.created | crud | price |
39
- | catalog.price.updated | crud | price |
40
- | catalog.price.deleted | crud | price |
41
- | catalog.pricing.resolve.before | lifecycle | — |
42
- | catalog.pricing.resolve.after | lifecycle | — |
22
+ ## Events (18)
23
+
24
+ | ID | Category | Entity | Browser transport |
25
+ |---|---|---|---|
26
+ | catalog.product.created | crud | product | client |
27
+ | catalog.product.updated | crud | product | client |
28
+ | catalog.product.deleted | crud | product | client |
29
+ | catalog.product.stock_low | lifecycle | product | — |
30
+ | catalog.product_unit_conversion.created | crud | product_unit_conversion | — |
31
+ | catalog.product_unit_conversion.updated | crud | product_unit_conversion | — |
32
+ | catalog.product_unit_conversion.deleted | crud | product_unit_conversion | — |
33
+ | catalog.category.created | crud | category | — |
34
+ | catalog.category.updated | crud | category | — |
35
+ | catalog.category.deleted | crud | category | — |
36
+ | catalog.variant.created | crud | variant | — |
37
+ | catalog.variant.updated | crud | variant | — |
38
+ | catalog.variant.deleted | crud | variant | — |
39
+ | catalog.price.created | crud | price | — |
40
+ | catalog.price.updated | crud | price | — |
41
+ | catalog.price.deleted | crud | price | — |
42
+ | catalog.pricing.resolve.before | lifecycle | — | — |
43
+ | catalog.pricing.resolve.after | lifecycle | — | — |
43
44
 
44
45
  ## ACL features (7)
45
46
 
@@ -80,6 +81,143 @@ catalog:catalog_product · catalog:catalog_product_variant · catalog:catalog_pr
80
81
  - Entity IDs: _none_
81
82
  - Table IDs: catalog.categories.list · catalog.products.list
82
83
 
84
+ ## UMES hosts
85
+
86
+ | ID / pattern | Family | Supports | Context | Stability |
87
+ |---|---|---|---|---|
88
+ | crud-form:catalog.product | crud-form | render-widget, lifecycle-handler | — | FROZEN |
89
+ | crud-form:catalog.product | crud-form | component-replacement | — | FROZEN |
90
+ | crud-form:catalog.product:fields | crud-form | field-widget | — | FROZEN |
91
+ | crud-form:catalog.product:header | crud-form | render-widget | — | FROZEN |
92
+ | data-table:catalog.categories.list | data-table | component-replacement | — | FROZEN |
93
+ | data-table:catalog.categories.list:bulk-actions | data-table | bulk-action | — | FROZEN |
94
+ | data-table:catalog.categories.list:columns | data-table | column-widget | — | FROZEN |
95
+ | data-table:catalog.categories.list:filters | data-table | filter-widget | — | FROZEN |
96
+ | data-table:catalog.categories.list:footer | data-table | render-widget | — | FROZEN |
97
+ | data-table:catalog.categories.list:header | data-table | render-widget | — | FROZEN |
98
+ | data-table:catalog.categories.list:row-actions | data-table | row-action | — | FROZEN |
99
+ | data-table:catalog.categories.list:search-trailing | data-table | render-widget | — | FROZEN |
100
+ | data-table:catalog.categories.list:toolbar | data-table | toolbar-widget | — | FROZEN |
101
+ | data-table:catalog.products:footer | data-table | render-widget | — | FROZEN |
102
+ | data-table:catalog.products:header | data-table | render-widget | — | FROZEN |
103
+ | data-table:catalog.products:search-trailing | data-table | render-widget | — | FROZEN |
104
+ | data-table:catalog.products:toolbar | data-table | toolbar-widget | — | FROZEN |
105
+ | data-table:catalog.products.list | data-table | component-replacement | — | FROZEN |
106
+ | data-table:catalog.products.list:bulk-actions | data-table | bulk-action | — | FROZEN |
107
+ | data-table:catalog.products.list:columns | data-table | column-widget | — | FROZEN |
108
+ | data-table:catalog.products.list:filters | data-table | filter-widget | — | FROZEN |
109
+ | data-table:catalog.products.list:row-actions | data-table | row-action | — | FROZEN |
110
+ | catalog:catalog_offer | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
111
+ | catalog:catalog_option_schema_template | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
112
+ | catalog:catalog_price_kind | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
113
+ | catalog:catalog_product | entity | response-enricher, query-enricher, mutation-guard | tenant-and-organization | STABLE |
114
+ | catalog:catalog_product_category | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
115
+ | catalog:catalog_product_category_assignment | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
116
+ | catalog:catalog_product_price | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
117
+ | catalog:catalog_product_tag | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
118
+ | catalog:catalog_product_tag_assignment | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
119
+ | catalog:catalog_product_unit_conversion | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
120
+ | catalog:catalog_product_variant | entity | response-enricher, query-enricher, mutation-guard | tenant-and-organization | STABLE |
121
+ | catalog:catalog_product_variant_relation | entity | response-enricher, query-enricher, mutation-guard, entity-extension | tenant-and-organization | STABLE |
122
+ | catalog.settings | entity | response-enricher, query-enricher, mutation-guard | tenant-and-organization | STABLE |
123
+ | catalog.category.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
124
+ | catalog.category.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
125
+ | catalog.category.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
126
+ | catalog.price.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
127
+ | catalog.price.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
128
+ | catalog.price.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
129
+ | catalog.pricing.resolve.after | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
130
+ | catalog.pricing.resolve.before | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
131
+ | catalog.product_unit_conversion.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
132
+ | catalog.product_unit_conversion.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
133
+ | catalog.product_unit_conversion.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
134
+ | catalog.product.created | event | async-subscriber, sync-subscriber, browser-client | tenant-organization-and-audience | STABLE |
135
+ | catalog.product.deleted | event | async-subscriber, sync-subscriber, browser-client | tenant-organization-and-audience | STABLE |
136
+ | catalog.product.stock_low | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
137
+ | catalog.product.updated | event | async-subscriber, sync-subscriber, browser-client | tenant-organization-and-audience | STABLE |
138
+ | catalog.variant.created | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
139
+ | catalog.variant.deleted | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
140
+ | catalog.variant.updated | event | async-subscriber, sync-subscriber | tenant-organization-and-audience | STABLE |
141
+ | catalog.catalog_offer.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
142
+ | catalog.catalog_offer.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
143
+ | catalog.catalog_option_schema_template.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
144
+ | catalog.catalog_option_schema_template.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
145
+ | catalog.catalog_price_kind.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
146
+ | catalog.catalog_price_kind.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
147
+ | catalog.catalog_product_category.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
148
+ | catalog.catalog_product_category.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
149
+ | catalog.catalog_product_tag.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
150
+ | catalog.catalog_product_tag.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
151
+ | catalog.catalog_product_unit_conversion.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
152
+ | catalog.catalog_product_unit_conversion.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
153
+ | catalog.catalog_product_variant.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
154
+ | catalog.catalog_product_variant.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
155
+ | catalog.catalog_product.queried | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
156
+ | catalog.catalog_product.querying | query-lifecycle | sync-subscriber | tenant-and-organization-reapplied-after-result | STABLE |
157
+
158
+ ## UMES contributions
159
+
160
+ | ID | Kind | Target | Phase / operations | Contract | Resolution |
161
+ |---|---|---|---|---|---|
162
+ | catalog.product.created.browser | browser-reaction | catalog.product.created | — | audienceScopeContract=tenant-organization-user-role-and-customer; hooks=useAppEvent,useOperationProgress; transports=client | fact-ref |
163
+ | catalog.product.deleted.browser | browser-reaction | catalog.product.deleted | — | audienceScopeContract=tenant-organization-user-role-and-customer; hooks=useAppEvent,useOperationProgress; transports=client | fact-ref |
164
+ | catalog.product.updated.browser | browser-reaction | catalog.product.updated | — | audienceScopeContract=tenant-organization-user-role-and-customer; hooks=useAppEvent,useOperationProgress; transports=client | fact-ref |
165
+ | catalog.injection.product-seo@crud-form:catalog.product | crud-form | crud-form:catalog.product | — | entityId=catalog.product; payload=render; requestHeaderCapability=false | exact |
166
+ | catalog.injection.merchandising-assistant-trigger@data-table:catalog.products:search-trailing | data-table | data-table:catalog.products:search-trailing | — | executionGuard=host; payload=render; tableId=catalog.products | exact |
167
+ | ai:catalog.apply_attribute_extraction | specialized-registry | catalog.apply_attribute_extraction | — | registry=ai; registryId=catalog.apply_attribute_extraction; specialistRoute=aiTools | fact-ref |
168
+ | ai:catalog.bulk_update_products | specialized-registry | catalog.bulk_update_products | — | registry=ai; registryId=catalog.bulk_update_products; specialistRoute=aiTools | fact-ref |
169
+ | ai:catalog.catalog_assistant | specialized-registry | catalog.catalog_assistant | — | registry=ai; registryId=catalog.catalog_assistant; specialistRoute=aiAgents | fact-ref |
170
+ | ai:catalog.draft_description_from_attributes | specialized-registry | catalog.draft_description_from_attributes | — | registry=ai; registryId=catalog.draft_description_from_attributes; specialistRoute=aiTools | fact-ref |
171
+ | ai:catalog.draft_description_from_media | specialized-registry | catalog.draft_description_from_media | — | registry=ai; registryId=catalog.draft_description_from_media; specialistRoute=aiTools | fact-ref |
172
+ | ai:catalog.extract_attributes_from_description | specialized-registry | catalog.extract_attributes_from_description | — | registry=ai; registryId=catalog.extract_attributes_from_description; specialistRoute=aiTools | fact-ref |
173
+ | ai:catalog.get_attribute_schema | specialized-registry | catalog.get_attribute_schema | — | registry=ai; registryId=catalog.get_attribute_schema; specialistRoute=aiTools | fact-ref |
174
+ | ai:catalog.get_category | specialized-registry | catalog.get_category | — | registry=ai; registryId=catalog.get_category; specialistRoute=aiTools | fact-ref |
175
+ | ai:catalog.get_category_brief | specialized-registry | catalog.get_category_brief | — | registry=ai; registryId=catalog.get_category_brief; specialistRoute=aiTools | fact-ref |
176
+ | ai:catalog.get_product | specialized-registry | catalog.get_product | — | registry=ai; registryId=catalog.get_product; specialistRoute=aiTools | fact-ref |
177
+ | ai:catalog.get_product_bundle | specialized-registry | catalog.get_product_bundle | — | registry=ai; registryId=catalog.get_product_bundle; specialistRoute=aiTools | fact-ref |
178
+ | ai:catalog.get_product_media | specialized-registry | catalog.get_product_media | — | registry=ai; registryId=catalog.get_product_media; specialistRoute=aiTools | fact-ref |
179
+ | ai:catalog.list_categories | specialized-registry | catalog.list_categories | — | registry=ai; registryId=catalog.list_categories; specialistRoute=aiTools | fact-ref |
180
+ | ai:catalog.list_offers | specialized-registry | catalog.list_offers | — | registry=ai; registryId=catalog.list_offers; specialistRoute=aiTools | fact-ref |
181
+ | ai:catalog.list_option_schemas | specialized-registry | catalog.list_option_schemas | — | registry=ai; registryId=catalog.list_option_schemas; specialistRoute=aiTools | fact-ref |
182
+ | ai:catalog.list_price_kinds | specialized-registry | catalog.list_price_kinds | — | registry=ai; registryId=catalog.list_price_kinds; specialistRoute=aiTools | fact-ref |
183
+ | ai:catalog.list_price_kinds_base | specialized-registry | catalog.list_price_kinds_base | — | registry=ai; registryId=catalog.list_price_kinds_base; specialistRoute=aiTools | fact-ref |
184
+ | ai:catalog.list_prices | specialized-registry | catalog.list_prices | — | registry=ai; registryId=catalog.list_prices; specialistRoute=aiTools | fact-ref |
185
+ | ai:catalog.list_product_media | specialized-registry | catalog.list_product_media | — | registry=ai; registryId=catalog.list_product_media; specialistRoute=aiTools | fact-ref |
186
+ | ai:catalog.list_product_tags | specialized-registry | catalog.list_product_tags | — | registry=ai; registryId=catalog.list_product_tags; specialistRoute=aiTools | fact-ref |
187
+ | ai:catalog.list_products | specialized-registry | catalog.list_products | — | registry=ai; registryId=catalog.list_products; specialistRoute=aiTools | fact-ref |
188
+ | ai:catalog.list_selected_products | specialized-registry | catalog.list_selected_products | — | registry=ai; registryId=catalog.list_selected_products; specialistRoute=aiTools | fact-ref |
189
+ | ai:catalog.list_unit_conversions | specialized-registry | catalog.list_unit_conversions | — | registry=ai; registryId=catalog.list_unit_conversions; specialistRoute=aiTools | fact-ref |
190
+ | ai:catalog.list_variants | specialized-registry | catalog.list_variants | — | registry=ai; registryId=catalog.list_variants; specialistRoute=aiTools | fact-ref |
191
+ | ai:catalog.merchandising_assistant | specialized-registry | catalog.merchandising_assistant | — | registry=ai; registryId=catalog.merchandising_assistant; specialistRoute=aiAgents | fact-ref |
192
+ | ai:catalog.search_products | specialized-registry | catalog.search_products | — | registry=ai; registryId=catalog.search_products; specialistRoute=aiTools | fact-ref |
193
+ | ai:catalog.show_stats | specialized-registry | catalog.show_stats | — | registry=ai; registryId=catalog.show_stats; specialistRoute=aiTools | fact-ref |
194
+ | ai:catalog.suggest_price_adjustment | specialized-registry | catalog.suggest_price_adjustment | — | registry=ai; registryId=catalog.suggest_price_adjustment; specialistRoute=aiTools | fact-ref |
195
+ | ai:catalog.suggest_title_variants | specialized-registry | catalog.suggest_title_variants | — | registry=ai; registryId=catalog.suggest_title_variants; specialistRoute=aiTools | fact-ref |
196
+ | ai:catalog.update_product | specialized-registry | catalog.update_product | — | registry=ai; registryId=catalog.update_product; specialistRoute=aiTools | fact-ref |
197
+ | ai:catalog.update_product_media_descriptions | specialized-registry | catalog.update_product_media_descriptions | — | registry=ai; registryId=catalog.update_product_media_descriptions; specialistRoute=aiTools | fact-ref |
198
+ | notification:catalog.product.low_stock | specialized-registry | catalog.product.low_stock | — | registry=notification; registryId=catalog.product.low_stock; specialistRoute=notifications | fact-ref |
199
+ | search:catalog:catalog_offer | specialized-registry | catalog:catalog_offer | — | registry=search; registryId=catalog:catalog_offer; specialistRoute=search | fact-ref |
200
+ | search:catalog:catalog_option_schema_template | specialized-registry | catalog:catalog_option_schema_template | — | registry=search; registryId=catalog:catalog_option_schema_template; specialistRoute=search | fact-ref |
201
+ | search:catalog:catalog_price_kind | specialized-registry | catalog:catalog_price_kind | — | registry=search; registryId=catalog:catalog_price_kind; specialistRoute=search | fact-ref |
202
+ | search:catalog:catalog_product | specialized-registry | catalog:catalog_product | — | registry=search; registryId=catalog:catalog_product; specialistRoute=search | fact-ref |
203
+ | search:catalog:catalog_product_category | specialized-registry | catalog:catalog_product_category | — | registry=search; registryId=catalog:catalog_product_category; specialistRoute=search | fact-ref |
204
+ | search:catalog:catalog_product_tag | specialized-registry | catalog:catalog_product_tag | — | registry=search; registryId=catalog:catalog_product_tag; specialistRoute=search | fact-ref |
205
+ | search:catalog:catalog_product_unit_conversion | specialized-registry | catalog:catalog_product_unit_conversion | — | registry=search; registryId=catalog:catalog_product_unit_conversion; specialistRoute=search | fact-ref |
206
+ | search:catalog:catalog_product_variant | specialized-registry | catalog:catalog_product_variant | — | registry=search; registryId=catalog:catalog_product_variant; specialistRoute=search | fact-ref |
207
+ | catalog:low-stock-notification | subscriber | catalog.product.stock_low | async-delivery | event=catalog.product.stock_low; persistent=true; subscriberId=catalog:low-stock-notification; sync=false | fact-ref |
208
+
209
+ ## UMES diagnostics
210
+
211
+ - unbound-helper: crud-form:catalog.product:after-fields
212
+ - unbound-helper: crud-form:catalog.product:before-fields
213
+ - unbound-helper: crud-form:catalog.product:field:{fieldId}:after
214
+ - unbound-helper: crud-form:catalog.product:field:{fieldId}:before
215
+ - unbound-helper: crud-form:catalog.product:footer
216
+ - unbound-helper: crud-form:catalog.product:group:{groupId}
217
+ - unbound-helper: crud-form:catalog.product:sidebar
218
+ - unbound-helper: data-table:catalog.categories.list:empty-state
219
+ - unbound-helper: data-table:catalog.products:empty-state
220
+
83
221
  ## Notifications
84
222
 
85
223
  catalog.product.low_stock