@fluentcommerce/ai-skills 0.1.0 → 0.2.0
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.
Potentially problematic release.
This version of @fluentcommerce/ai-skills might be problematic. Click here for more details.
- package/README.md +10 -16
- package/content/cli/skills/fluent-bootstrap/SKILL.md +9 -0
- package/content/cli/skills/fluent-cli-reference/SKILL.md +0 -408
- package/content/cli/skills/fluent-module-deploy/SKILL.md +21 -127
- package/content/dev/agents/fluent-dev/AGENT.md +76 -0
- package/content/dev/agents/fluent-dev/agent.json +2 -12
- package/content/dev/agents/fluent-dev.md +5 -6
- package/content/dev/skills/fluent-build/SKILL.md +16 -38
- package/content/dev/skills/fluent-feature-plan/PLAN_TEMPLATE.md +9 -13
- package/content/dev/skills/fluent-feature-plan/SKILL.md +8 -14
- package/content/dev/skills/fluent-module-scaffold/SKILL.md +9 -78
- package/content/dev/skills/fluent-pre-deploy-check/SKILL.md +5 -23
- package/content/dev/skills/fluent-retailer-config/SKILL.md +9 -0
- package/content/dev/skills/fluent-rule-scaffold/SKILL.md +9 -0
- package/content/dev/skills/fluent-scope-decompose/SKILL.md +1 -1
- package/content/dev/skills/fluent-settings/SKILL.md +10 -0
- package/content/dev/skills/fluent-source-onboard/SKILL.md +9 -0
- package/content/dev/skills/fluent-sourcing/SKILL.md +1171 -0
- package/content/dev/skills/fluent-use-case-discover/SKILL.md +471 -0
- package/content/dev/skills/fluent-use-case-discover/SPEC_TEMPLATE.md +260 -0
- package/content/dev/skills/fluent-version-manage/SKILL.md +10 -0
- package/content/dev/skills/fluent-workflow-builder/SKILL.md +10 -3
- package/content/mcp-extn/agents/fluent-mcp.md +65 -2
- package/content/mcp-extn/skills/fluent-mcp-tools/SKILL.md +343 -4
- package/docs/CAPABILITY_MAP.md +3 -7
- package/docs/USE_CASES.md +4 -3
- package/docs/USE_CASES.pdf +0 -0
- package/metadata.json +8 -9
- package/package.json +2 -6
- package/content/dev/skills/fluent-data-module-scaffold/SKILL.md +0 -714
- package/content/dev/skills/fluent-workflow-deploy/SKILL.md +0 -267
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
# Business Spec Template
|
|
2
|
+
|
|
3
|
+
This is the output template for `/fluent-use-case-discover`. The wizard fills in each section from gathered requirements. Sections marked CONDITIONAL are included only when relevant.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Template
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
# Business Spec: [Feature Title]
|
|
11
|
+
|
|
12
|
+
**Status:** DRAFT | REVIEW | APPROVED
|
|
13
|
+
**Date:** YYYY-MM-DD
|
|
14
|
+
**Profile:** <FLUENT_PROFILE>
|
|
15
|
+
**Retailer:** <RETAILER_REF>
|
|
16
|
+
**Requested by:** [stakeholder or team]
|
|
17
|
+
**Completeness:** XX% ([Insufficient / Partial / Sufficient / Complete])
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 1. Problem Statement
|
|
22
|
+
|
|
23
|
+
[Business problem in plain language. What pain exists today? Why does this matter?]
|
|
24
|
+
|
|
25
|
+
## 2. Feature Summary
|
|
26
|
+
|
|
27
|
+
[One-sentence description of the feature]
|
|
28
|
+
|
|
29
|
+
**Type:** [New capability / Enhancement / Bug fix / External integration / Data migration / Process change]
|
|
30
|
+
**Success Metrics:**
|
|
31
|
+
- [KPI 1 — e.g., "Reduce order fulfilment time from 4h to 1h"]
|
|
32
|
+
- [KPI 2 — e.g., "Eliminate manual carrier selection for 90% of orders"]
|
|
33
|
+
|
|
34
|
+
## 3. Scope
|
|
35
|
+
|
|
36
|
+
**In scope:**
|
|
37
|
+
- [Bullet list — what this feature will do]
|
|
38
|
+
|
|
39
|
+
**Out of scope:**
|
|
40
|
+
- [Bullet list — what this feature will NOT do]
|
|
41
|
+
|
|
42
|
+
## 4. Actors & Triggers
|
|
43
|
+
|
|
44
|
+
| Actor | Type | Module | Role in Feature |
|
|
45
|
+
|-------|------|--------|-----------------|
|
|
46
|
+
| [e.g., Store associate] | Human | Service Point | Picks and packs items |
|
|
47
|
+
| [e.g., WMS] | System | External | Receives fulfilment requests via webhook |
|
|
48
|
+
| [e.g., Scheduled job] | Automated | Backend | Runs daily reconciliation |
|
|
49
|
+
|
|
50
|
+
**Trigger:** [What starts this feature — e.g., "New HD order placed via API"]
|
|
51
|
+
|
|
52
|
+
**Scope:** [Retailer-specific / Account-wide]
|
|
53
|
+
|
|
54
|
+
## 5. Use Cases
|
|
55
|
+
|
|
56
|
+
### UC-01: [Happy Path Title]
|
|
57
|
+
|
|
58
|
+
**Actors:** [list]
|
|
59
|
+
**Preconditions:** [what must be true before this scenario starts]
|
|
60
|
+
**Flow:**
|
|
61
|
+
1. [Step 1 — e.g., "Customer places an HD order via the storefront"]
|
|
62
|
+
2. [Step 2 — e.g., "Order is created in Fluent with status CREATED"]
|
|
63
|
+
3. [Step 3 — ...]
|
|
64
|
+
...
|
|
65
|
+
|
|
66
|
+
**Postconditions:** [end state — e.g., "Order reaches COMPLETE, customer receives delivery confirmation"]
|
|
67
|
+
|
|
68
|
+
**Acceptance Criteria:**
|
|
69
|
+
- Given [precondition], When [action], Then [expected result]
|
|
70
|
+
- Given [precondition], When [action], Then [expected result]
|
|
71
|
+
|
|
72
|
+
### UC-02: [Alternative Path Title]
|
|
73
|
+
|
|
74
|
+
**Actors:** [list]
|
|
75
|
+
**Preconditions:** [what must be true]
|
|
76
|
+
**Branching condition:** [what makes this path different from UC-01]
|
|
77
|
+
**Flow:**
|
|
78
|
+
1. [...]
|
|
79
|
+
...
|
|
80
|
+
|
|
81
|
+
**Postconditions:** [end state]
|
|
82
|
+
|
|
83
|
+
**Acceptance Criteria:**
|
|
84
|
+
- Given [...], When [...], Then [...]
|
|
85
|
+
|
|
86
|
+
### UC-03: [Exception Path Title]
|
|
87
|
+
|
|
88
|
+
**Actors:** [list]
|
|
89
|
+
**Preconditions:** [what must be true]
|
|
90
|
+
**Trigger:** [what goes wrong — e.g., "Stock unavailable at allocated location"]
|
|
91
|
+
**Flow:**
|
|
92
|
+
1. [Error handling steps]
|
|
93
|
+
...
|
|
94
|
+
|
|
95
|
+
**Postconditions:** [recovery state or failure state]
|
|
96
|
+
|
|
97
|
+
**Acceptance Criteria:**
|
|
98
|
+
- Given [...], When [...], Then [...]
|
|
99
|
+
|
|
100
|
+
<!-- Add more use cases as needed: UC-04, UC-05, etc. -->
|
|
101
|
+
|
|
102
|
+
## 6. Entity Model
|
|
103
|
+
|
|
104
|
+
| Entity | Subtype | New/Existing | Key Attributes | Notes |
|
|
105
|
+
|--------|---------|--------------|----------------|-------|
|
|
106
|
+
| [e.g., Order] | HD | Existing | deliveryWindow (new attr) | Needs new attribute for scheduling |
|
|
107
|
+
| [e.g., Fulfilment] | HD_WH | Existing | carrierRef (existing) | No changes |
|
|
108
|
+
| [e.g., Fulfilment] | CC_STORE | New | pickupCode (new attr) | New subtype for curbside |
|
|
109
|
+
|
|
110
|
+
**Entity Relationships:**
|
|
111
|
+
[How entities connect in this feature. Example:]
|
|
112
|
+
- Order (HD) creates 1..N Fulfilments (HD_WH or CC_STORE)
|
|
113
|
+
- Fulfilment completion triggers Order status update via cross-entity event
|
|
114
|
+
- Location is referenced by Fulfilment for pick/pack assignment
|
|
115
|
+
|
|
116
|
+
## 7. Business Rules
|
|
117
|
+
|
|
118
|
+
| # | Rule Name | Condition | Action | Applies To | Time-Based? |
|
|
119
|
+
|---|-----------|-----------|--------|------------|-------------|
|
|
120
|
+
| BR-01 | [e.g., Stock validation] | If requested qty > available qty | Reject or split | UC-01, UC-02 | No |
|
|
121
|
+
| BR-02 | [e.g., Auto-cancel] | If no pick action within 4 hours | Cancel fulfilment, notify ops | UC-03 | Yes (4h) |
|
|
122
|
+
| BR-03 | [e.g., Carrier routing] | If weight > 30kg | Route to freight carrier | UC-01 | No |
|
|
123
|
+
|
|
124
|
+
<!-- CONDITIONAL: Only include if Phase 5 was asked -->
|
|
125
|
+
|
|
126
|
+
## 8. Integrations
|
|
127
|
+
|
|
128
|
+
| System | Direction | Method | Data Exchanged | Failure Handling |
|
|
129
|
+
|--------|-----------|--------|----------------|------------------|
|
|
130
|
+
| [e.g., WMS] | Fluent → External | Webhook | Fulfilment details (items, qty, location) | Retry 3x (5min interval), then alert ops |
|
|
131
|
+
| [e.g., Carrier API] | Fluent → External | REST API | Shipment request (weight, address, SLA) | Queue for manual retry |
|
|
132
|
+
| [e.g., POS] | External → Fluent | Webhook | Order creation payload | Validate payload, reject malformed |
|
|
133
|
+
|
|
134
|
+
<!-- CONDITIONAL: Only include if Phase 6 was asked -->
|
|
135
|
+
|
|
136
|
+
## 9. User Actions
|
|
137
|
+
|
|
138
|
+
| Action Label | Actor | Available At Status | Form Fields | Confirmation? | Bulk? |
|
|
139
|
+
|-------------|-------|---------------------|-------------|---------------|-------|
|
|
140
|
+
| [e.g., Confirm Pick] | Store associate | PICKING | qty_picked (number, required) | No | No |
|
|
141
|
+
| [e.g., Cancel Order] | Admin | CREATED, BOOKED | reason (dropdown, required) | Yes | Yes |
|
|
142
|
+
| [e.g., Force Complete] | Admin | any except COMPLETE | notes (text, optional) | Yes | No |
|
|
143
|
+
|
|
144
|
+
<!-- CONDITIONAL: Only include if Phase 7 was asked -->
|
|
145
|
+
|
|
146
|
+
## 10. Constraints & Risks
|
|
147
|
+
|
|
148
|
+
| # | Type | Description | Impact | Mitigation |
|
|
149
|
+
|---|------|-------------|--------|------------|
|
|
150
|
+
| R-01 | Risk | [e.g., WMS downtime during peak hours] | Fulfilments delayed | Queue + retry with alerting |
|
|
151
|
+
| R-02 | Risk | [e.g., New subtype may conflict with existing HD rules] | Regression | E2E test before deploy |
|
|
152
|
+
| C-01 | Constraint | [e.g., Must not break existing HD flow] | Regression | Test existing flow after changes |
|
|
153
|
+
| C-02 | Constraint | [e.g., Must handle 500 orders/hour at peak] | Performance | Load test before go-live |
|
|
154
|
+
|
|
155
|
+
**Volume expectations:** [e.g., "~200 orders/day normal, ~500/day peak (Black Friday)"]
|
|
156
|
+
|
|
157
|
+
## 11. Assumptions
|
|
158
|
+
|
|
159
|
+
- [A-01] [e.g., Existing inventory catalogue has accurate stock levels]
|
|
160
|
+
- [A-02] [e.g., WMS webhook endpoint is already deployed and accepts JSON]
|
|
161
|
+
- [A-03] [e.g., Store associates have Service Point access configured]
|
|
162
|
+
...
|
|
163
|
+
|
|
164
|
+
**Important:** Assumptions become risks if proven wrong. Each should be validated during the feature plan phase.
|
|
165
|
+
|
|
166
|
+
## 12. Open Questions
|
|
167
|
+
|
|
168
|
+
- [Q-01] [e.g., What is the SLA for WMS response time?] — **Blocks:** BR-02 (auto-cancel timing)
|
|
169
|
+
- [Q-02] [e.g., Should partial picks be allowed or must the full qty be picked?] — **Blocks:** UC-02 definition
|
|
170
|
+
- [Q-03] [e.g., Which carrier API version are we targeting?] — **Blocks:** Integration design
|
|
171
|
+
...
|
|
172
|
+
|
|
173
|
+
**Important:** Open questions MUST be resolved before the feature plan can be completed. Each question notes which spec section it blocks.
|
|
174
|
+
|
|
175
|
+
## 13. Acceptance Criteria Summary
|
|
176
|
+
|
|
177
|
+
| UC | Criteria | Priority |
|
|
178
|
+
|----|----------|----------|
|
|
179
|
+
| UC-01 | Given stock available at warehouse, When HD order placed, Then fulfilment created and assigned within 30s | Must-have |
|
|
180
|
+
| UC-02 | Given partial stock across locations, When HD order placed, Then order split into multiple fulfilments | Must-have |
|
|
181
|
+
| UC-03 | Given no stock available, When HD order placed, Then customer notified and order moved to BACKORDER | Must-have |
|
|
182
|
+
| UC-01 | Given fulfilment shipped, When carrier confirms delivery, Then order status updated to COMPLETE | Must-have |
|
|
183
|
+
| UC-01 | Given peak load (500 orders/hour), When orders placed, Then all processed within 60s | Nice-to-have |
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Traceability Matrix
|
|
188
|
+
|
|
189
|
+
| Use Case | Entities | Business Rules | Integrations | User Actions |
|
|
190
|
+
|----------|----------|----------------|--------------|--------------|
|
|
191
|
+
| UC-01 | Order (HD), Fulfilment (HD_WH) | BR-01, BR-03 | WMS, Carrier | Confirm Pick |
|
|
192
|
+
| UC-02 | Order (HD), Fulfilment x2 | BR-01 | WMS | Confirm Pick |
|
|
193
|
+
| UC-03 | Order (HD) | BR-02 | Notification | — |
|
|
194
|
+
|
|
195
|
+
This matrix ensures every use case traces through to entities, rules, integrations, and actions. Gaps in this table indicate incomplete requirements.
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Recommendation
|
|
200
|
+
|
|
201
|
+
[Auto-generated by the wizard based on completeness score:]
|
|
202
|
+
|
|
203
|
+
**Score: XX% — [Insufficient / Partial / Sufficient / Complete]**
|
|
204
|
+
|
|
205
|
+
[One of:]
|
|
206
|
+
- "This spec is **ready for technical planning**. Run `/fluent-feature-plan` to produce the implementation plan."
|
|
207
|
+
- "This spec is **sufficient but has gaps** in [Phase X, Phase Y]. The feature plan can proceed but will make assumptions for those sections. Consider resolving open questions Q-01 and Q-02 first."
|
|
208
|
+
- "This spec has **too many gaps** to produce a reliable feature plan. Address: [list of missing phases]. Focus on [highest-priority gap]."
|
|
209
|
+
|
|
210
|
+
## Next Step
|
|
211
|
+
|
|
212
|
+
When this spec is APPROVED, proceed to technical implementation planning:
|
|
213
|
+
|
|
214
|
+
```
|
|
215
|
+
/fluent-feature-plan --spec accounts/<PROFILE>/analysis/specs/<YYYY-MM-DD>-<slug>.md
|
|
216
|
+
```
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## Section Applicability Guide
|
|
222
|
+
|
|
223
|
+
| Section | Always? | When to Include |
|
|
224
|
+
|---------|---------|-----------------|
|
|
225
|
+
| §1 Problem Statement | YES | Every spec |
|
|
226
|
+
| §2 Feature Summary | YES | Every spec |
|
|
227
|
+
| §3 Scope | YES | Every spec |
|
|
228
|
+
| §4 Actors & Triggers | YES | Every spec |
|
|
229
|
+
| §5 Use Cases | YES | Every spec (minimum: happy path + 1 exception) |
|
|
230
|
+
| §6 Entity Model | YES | Every Fluent feature |
|
|
231
|
+
| §7 Business Rules | CONDITIONAL | When there are decision points, validations, or calculations |
|
|
232
|
+
| §8 Integrations | CONDITIONAL | When external systems are involved |
|
|
233
|
+
| §9 User Actions | CONDITIONAL | When human actors interact via Fluent UI |
|
|
234
|
+
| §10 Constraints & Risks | YES | Every spec (even if brief) |
|
|
235
|
+
| §11 Assumptions | YES | Every spec |
|
|
236
|
+
| §12 Open Questions | YES | Every spec (can be empty if fully resolved) |
|
|
237
|
+
| §13 Acceptance Criteria | YES | Every spec |
|
|
238
|
+
| Traceability Matrix | YES | Every spec |
|
|
239
|
+
|
|
240
|
+
## Completeness Scoring Rubric
|
|
241
|
+
|
|
242
|
+
| Phase | Weight | Full Score | Half Score | Zero |
|
|
243
|
+
|-------|--------|------------|------------|------|
|
|
244
|
+
| 1. Feature Identity | 15% | All REQUIRED questions answered | Problem + summary but no metrics | Missing problem statement |
|
|
245
|
+
| 2. Actors & Triggers | 10% | Actors + trigger + scope identified | Trigger only, no actors | Neither identified |
|
|
246
|
+
| 3. Use Cases | 20% | Happy path + alternative + exception | Happy path only | No use cases defined |
|
|
247
|
+
| 4. Entities & Data | 15% | All entities with subtypes + attributes | Entities listed, no subtypes | No entities identified |
|
|
248
|
+
| 5. Business Rules | 15% | Rules per decision point in use cases | Some rules, gaps in coverage | N/A → 0% weight redistributed |
|
|
249
|
+
| 6. Integrations | 5% | All systems with method + failure handling | Systems listed, no details | N/A → 0% weight redistributed |
|
|
250
|
+
| 7. UI Actions | 5% | Actions per actor with status + fields | Actions listed, no details | N/A → 0% weight redistributed |
|
|
251
|
+
| 8. Constraints | 5% | Risks + assumptions + volume documented | At least one risk or assumption | Nothing documented |
|
|
252
|
+
| 9. Acceptance Criteria | 10% | Given/When/Then per use case + priority | Some criteria, not per UC | No acceptance criteria |
|
|
253
|
+
|
|
254
|
+
**When N/A phases exist:** Their weight is redistributed proportionally across applicable phases. A backend-only feature with no integrations redistributes 10% (Phase 6 + 7) across the remaining phases.
|
|
255
|
+
|
|
256
|
+
**Score interpretation:**
|
|
257
|
+
- **90-100%:** Complete — comprehensive, minimal assumptions needed
|
|
258
|
+
- **75-89%:** Sufficient — ready for feature plan, minor gaps flagged
|
|
259
|
+
- **50-74%:** Partial — can proceed but assumption-heavy
|
|
260
|
+
- **< 50%:** Insufficient — too many gaps to produce reliable plan
|
|
@@ -14,6 +14,16 @@ Manage the full version lifecycle for Fluent Commerce extension modules: read cu
|
|
|
14
14
|
|
|
15
15
|
## Planning Gate
|
|
16
16
|
|
|
17
|
+
### Pre-flight: Plan Verification
|
|
18
|
+
|
|
19
|
+
Before proceeding, check for an existing approved plan:
|
|
20
|
+
|
|
21
|
+
1. **Search** `accounts/<PROFILE>/plans/` for a file with `Status: APPROVED` that covers this version change
|
|
22
|
+
2. **If multi-artifact work** (version bump as part of feature delivery): STOP. Invoke `/fluent-feature-plan` first — this skill cannot be used for multi-artifact work without a feature plan
|
|
23
|
+
3. **If approved plan found:** Skip to implementation, referencing the plan's §17 (Deployment) section
|
|
24
|
+
4. **If version-only work with no plan:** Continue to the Planning Gate below to write a plan for this skill
|
|
25
|
+
5. **`status` (read-only) and `sync --dry-run`** are always exempt from planning
|
|
26
|
+
|
|
17
27
|
**Before bumping versions, write a plan using the template from `PLAN_TEMPLATE.md` in the `fluent-feature-plan` skill.** `status` (read-only) and `sync --dry-run` are exempt.
|
|
18
28
|
|
|
19
29
|
**Version-manage specific emphasis — ensure these are covered:**
|
|
@@ -12,6 +12,15 @@ Create, edit, and validate Fluent Commerce workflow JSON definitions.
|
|
|
12
12
|
|
|
13
13
|
## Planning Gate
|
|
14
14
|
|
|
15
|
+
### Pre-flight: Plan Verification
|
|
16
|
+
|
|
17
|
+
Before proceeding, check for an existing approved plan:
|
|
18
|
+
|
|
19
|
+
1. **Search** `accounts/<PROFILE>/plans/` for a file with `Status: APPROVED` that covers this workflow
|
|
20
|
+
2. **If multi-artifact work** (workflow + rules + settings): STOP. Invoke `/fluent-feature-plan` first — this skill cannot be used for multi-artifact work without a feature plan
|
|
21
|
+
3. **If approved plan found:** Skip to implementation, referencing the plan's §4 (Workflows), §5 (Statuses), and §6 (Rulesets) sections
|
|
22
|
+
4. **If single-workflow-only work with no plan:** Continue to the Planning Gate below to write a plan for this skill
|
|
23
|
+
|
|
15
24
|
**Before creating or modifying any workflow, write a plan using the template from `PLAN_TEMPLATE.md` in the `fluent-feature-plan` skill.** Every table row must carry a Source column (NEW/EXISTING/MODIFIED/REUSED/OOTB).
|
|
16
25
|
|
|
17
26
|
**If this workflow change is part of a larger feature** (rules + settings + webhooks), use `/fluent-feature-plan` first. Then reference the approved plan during implementation.
|
|
@@ -273,9 +282,7 @@ Find the gate ruleset, update the `statuses` prop value.
|
|
|
273
282
|
|
|
274
283
|
### Upload/merge
|
|
275
284
|
|
|
276
|
-
Use `/fluent-workflow
|
|
277
|
-
|
|
278
|
-
**Important:** If the workflow references new custom rules, deploy the module first via `/fluent-module-deploy` before uploading the workflow. Unregistered rules cause NO_MATCH events at runtime.
|
|
285
|
+
Use `/fluent-workflow` for merge/upload workflows and `/fluent-module-deploy` (or `flow-run`) for deployment execution.
|
|
279
286
|
|
|
280
287
|
## Workflow Fragments
|
|
281
288
|
|
|
@@ -35,27 +35,90 @@ Auth strategy priority (first valid method wins):
|
|
|
35
35
|
3. **Prefer `graphql.queryAll`** when fetching all records (auto-pagination)
|
|
36
36
|
4. **Use `graphql.batchMutate`** for bulk updates (up to 50 per request)
|
|
37
37
|
|
|
38
|
-
## Available MCP Tools
|
|
38
|
+
## Available MCP Tools (36 total)
|
|
39
39
|
|
|
40
|
+
### Diagnostics
|
|
40
41
|
| Tool | Purpose |
|
|
41
42
|
|------|---------|
|
|
42
43
|
| `config.validate` | Check auth/base URL/retailer config |
|
|
43
44
|
| `health.ping` | Quick connectivity diagnostics |
|
|
44
45
|
| `connection.test` | Full auth + me query verification |
|
|
46
|
+
|
|
47
|
+
### Events
|
|
48
|
+
| Tool | Purpose |
|
|
49
|
+
|------|---------|
|
|
45
50
|
| `event.build` | Build event payload (no send) |
|
|
46
51
|
| `event.send` | Send event (supports dryRun) |
|
|
47
52
|
| `event.list` | List/filter events |
|
|
48
53
|
| `event.get` | Fetch single event by ID |
|
|
54
|
+
| `event.flowInspect` | One-call event forensics for any entity (compact summary by default) |
|
|
55
|
+
|
|
56
|
+
### Orchestration
|
|
57
|
+
| Tool | Purpose |
|
|
58
|
+
|------|---------|
|
|
49
59
|
| `workflow.transitions` | Query available user actions/transitions at any state |
|
|
50
60
|
| `plugin.list` | List registered rules with metadata (supports name filter) |
|
|
61
|
+
|
|
62
|
+
### GraphQL
|
|
63
|
+
| Tool | Purpose |
|
|
64
|
+
|------|---------|
|
|
51
65
|
| `graphql.query` | Execute single GraphQL query/mutation |
|
|
52
66
|
| `graphql.queryAll` | Auto-paginated query (all records) |
|
|
53
67
|
| `graphql.batchMutate` | Batch mutations (up to 50) |
|
|
54
|
-
| `graphql.introspect` | Schema introspection |
|
|
68
|
+
| `graphql.introspect` | Schema introspection (types, mutations, input fields) |
|
|
69
|
+
|
|
70
|
+
### Entity (type-safe CRUD for 12 entity types)
|
|
71
|
+
| Tool | Purpose |
|
|
72
|
+
|------|---------|
|
|
73
|
+
| `entity.create` | Create entity with built-in validation and gotcha knowledge |
|
|
74
|
+
| `entity.update` | Status-aware update with optional transition validation |
|
|
75
|
+
| `entity.get` | Unified entity lookup by ID or ref with optional edge inclusion |
|
|
76
|
+
|
|
77
|
+
### Workflow Lifecycle
|
|
78
|
+
| Tool | Purpose |
|
|
79
|
+
|------|---------|
|
|
80
|
+
| `workflow.upload` | Deploy workflow JSON with structure validation and dryRun support |
|
|
81
|
+
| `workflow.diff` | Compare two workflow versions (summary, detailed, or Mermaid) |
|
|
82
|
+
| `workflow.simulate` | Static prediction of rulesets matching status/event (planning only) |
|
|
83
|
+
|
|
84
|
+
### Settings
|
|
85
|
+
| Tool | Purpose |
|
|
86
|
+
|------|---------|
|
|
87
|
+
| `setting.upsert` | Create or update a setting with upsert semantics |
|
|
88
|
+
| `setting.bulkUpsert` | Batch create/update up to 50 settings |
|
|
89
|
+
|
|
90
|
+
### Environment
|
|
91
|
+
| Tool | Purpose |
|
|
92
|
+
|------|---------|
|
|
93
|
+
| `environment.discover` | Full environment snapshot (retailer, locations, networks, catalogues, workflows, settings) |
|
|
94
|
+
| `environment.validate` | Pre-flight checks (auth, retailer, locations, inventory, workflows) |
|
|
95
|
+
|
|
96
|
+
### Test
|
|
97
|
+
| Tool | Purpose |
|
|
98
|
+
|------|---------|
|
|
99
|
+
| `test.assert` | Assert entity state with optional polling (status, attributes, edge counts) |
|
|
100
|
+
|
|
101
|
+
### Metrics
|
|
102
|
+
| Tool | Purpose |
|
|
103
|
+
|------|---------|
|
|
104
|
+
| `metrics.query` | Raw PromQL via GraphQL proxy |
|
|
105
|
+
| `metrics.healthCheck` | Single-call health assessment with anomaly detection |
|
|
106
|
+
| `metrics.sloReport` | SLO snapshot (volume, failure rate, latency) |
|
|
107
|
+
| `metrics.labelCatalog` | Discover available metric labels and values |
|
|
108
|
+
| `metrics.topEvents` | Aggregate event analytics within a time window |
|
|
109
|
+
|
|
110
|
+
### Batch Ingestion
|
|
111
|
+
| Tool | Purpose |
|
|
112
|
+
|------|---------|
|
|
55
113
|
| `batch.create` | Create batch ingestion job |
|
|
56
114
|
| `batch.send` | Send records to batch job |
|
|
57
115
|
| `batch.status` | Check batch job status |
|
|
116
|
+
| `batch.batchStatus` | Check specific batch within a job |
|
|
58
117
|
| `batch.results` | Get batch job results |
|
|
118
|
+
|
|
119
|
+
### Webhook
|
|
120
|
+
| Tool | Purpose |
|
|
121
|
+
|------|---------|
|
|
59
122
|
| `webhook.validate` | Validate webhook payload/signature |
|
|
60
123
|
|
|
61
124
|
## Cross-References for Event Questions
|