Skip to content

Commit 9d755ba

Browse files
os-litantclaude
andauthored
skills(automation): optimization flight — the authored control-flow trio taught and the BPMN trio demoted, notify given its fence, the eval deduplicated, hooks and ETL pointed away (net −1,278 tokens) (#14467)
* skills(automation): deduplicate the send-back eval (AUTO-H-01) The eval restated SKILL.md's "Send-back for revision (ADR-0044)" section rather than testing beyond it: the canonical shape, the four lint findings, the wait-vs-approval_revise rationale and the showcase pointer all had a second copy here. 2,204 tokens -- 15% of the authored package -- went to a surface with one real authoring in the whole corpus, while `notify` (20 authorings) got 15. Delete the Expected-Output fence and the Common-Mistakes rows that restate the skill; keep Scenario + Validation Criteria, which is what a grader needs. The one row that did NOT restate SKILL.md (a "revise mode" re-suspend of the approval node) survives as criterion 7, so no graded fact is lost. 1,329 -> 550 tokens (ceiling 1,329). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LraLgQVGq8egUwfYZpbYt1 * skills(automation): teach the authored control-flow trio, demote the BPMN one The package taught only `parallel_gateway` / `join_gateway` / `boundary_event` -- 0 authorings anywhere in the corpus -- and never mentioned the ADR-0031 structured constructs the corpus actually uses (`loop` 3, `try_catch` 2, `parallel` 2). `notify`, the most-used node type at 20 authorings, had one table cell and no config keys, including no mention of its documented silent no-op. ADD (funded, each claim verified at source): AUTO-F-01 `parallel` / `try_catch` / `loop`-container rows; the gateway trio marked BPMN-interop lowering, not author-facing. AUTO-F-02 capability -> surface table, adding `approvals` and `messaging`. AUTO-E-04 `notify` config fence + the messaging-absent silent success. ported flow-filter precedence + the static-checkability split (this package is the anchor; the query flight deleted its copy). AUTO-G-02 `autolaunched` + a `record-*` binding behaves like `record_change`. AUTO-E-01 os:check marker on the schedule-flow example (265 -> 266 blocks). AUTO-A-02/A-03 `jobs` / `webhooks` collections and screen-flow routing in the description. DELETE / MERGE: AUTO-A-01 (ETL, retired at spec 17), AUTO-B-03, AUTO-B-06, AUTO-B-07, AUTO-C-01, AUTO-C-02, AUTO-C-03, AUTO-C-04, AUTO-D-01..D-09, AUTO-E-02. REORDER (free): AUTO-B-01, AUTO-B-02. 12,768 -> 12,269 tokens (ceiling 12,768; every addition paid in this file). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LraLgQVGq8egUwfYZpbYt1 * skills: regenerate the skill index after the automation description edit Generator output only -- `pnpm --filter @objectstack/spec gen:skill-docs`. `check:skill-docs` is a drift gate, so the AUTO-A-01/A-02/A-03 description edit forces both files. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LraLgQVGq8egUwfYZpbYt1 --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 310dd01 commit 9d755ba

4 files changed

Lines changed: 281 additions & 377 deletions

File tree

content/docs/ai/skills-reference.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ ObjectStack ships **11 skills** — one per authoring domain, plus process skill
4747
| 2 | [Data](#data) | `data` | `skills/objectstack-data/` | Design ObjectStack data schemas — objects, fields, field conditional rules, relationships, validations, indexes, lifecycle hooks, permissions, row-level security, data `lifecycle` retention/TTL/rotation, metadata `protection` locks, and external / federated datasources (`defineDatasource`) — and the seeds (`defineSeed()`) that load fixtures and reference data alongside them. |
4848
| 3 | [Query](#query) | `query` | `skills/objectstack-query/` | Construct ObjectQL queries — filters, sorting, pagination, aggregation, relation expansion, and full-text search. |
4949
| 4 | [UI](#ui) | `ui` | `skills/objectstack-ui/` | Author ObjectStack UI metadata — Views (list/form/kanban/calendar/gantt), Apps (navigation), Pages (structured plus the HTML and React source-authoring tiers, ADR-0080/0081), Dashboards, Reports, Charts, Actions, and package Docs (`src/docs/*.md`). |
50-
| 5 | [Automation](#automation) | `automation` | `skills/objectstack-automation/` | Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, scheduled jobs, and webhooks. |
50+
| 5 | [Automation](#automation) | `automation` | `skills/objectstack-automation/` | Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, and the `jobs` (`defineJob`) / `webhooks` (`defineWebhook`) stack collections. |
5151
| 6 | [AI](#ai) | `ai` | `skills/objectstack-ai/` | Design ObjectStack AI skills, tools, knowledge sources, conversations, model registry entries, and MCP integrations. |
5252
| 7 | [API](#api) | `api` | `skills/objectstack-api/` | Design the server-side API surface that an ObjectStack runtime exposes — REST endpoints, auth providers, realtime channels, error envelopes, batch contracts. |
5353
| 8 | [i18n](#i18n) | `i18n` | `skills/objectstack-i18n/` | Author ObjectStack translation bundles — object/field labels, view text, app navigation strings, automation messages — and configure locale fallback, coverage reporting, and the per-locale source layout. |
@@ -117,9 +117,9 @@ Do not use for: data schema (see objectstack-data), multi-step flows that BRANCH
117117

118118
**Domain** `automation` · **Path** `skills/objectstack-automation/`
119119

120-
Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, scheduled jobs, and webhooks.
120+
Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, and the `jobs` (`defineJob`) / `webhooks` (`defineWebhook`) stack collections.
121121

122-
Use when the user is adding `*.flow.ts`, wiring an event-driven rule, or modelling an approval chain.
122+
Use when the user is adding `*.flow.ts`, wiring an event-driven rule, modelling an approval chain, or building an interactive screen flow / wizard (objectstack-ui routes those here).
123123

124124
Do not use for data lifecycle hooks at the object layer (see objectstack-data) or for kernel / plugin events (see objectstack-platform). CEL expressions in flow conditions / edge guards: load objectstack-formula alongside.
125125

skills/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ apps too).
3333
| [Data](./objectstack-data/SKILL.md) | `data` | Design ObjectStack data schemas — objects, fields, field conditional rules, relationships, validations, indexes, lifecycle hooks, permissions, row-level security, data `lifecycle` retention/TTL/rotation, metadata `protection` locks, and external / federated datasources (`defineDatasource`) — and the seeds (`defineSeed()`) that load fixtures and reference data alongside them. |
3434
| [Query](./objectstack-query/SKILL.md) | `query` | Construct ObjectQL queries — filters, sorting, pagination, aggregation, relation expansion, and full-text search. |
3535
| [UI](./objectstack-ui/SKILL.md) | `ui` | Author ObjectStack UI metadata — Views (list/form/kanban/calendar/gantt), Apps (navigation), Pages (structured plus the HTML and React source-authoring tiers, ADR-0080/0081), Dashboards, Reports, Charts, Actions, and package Docs (`src/docs/*.md`). |
36-
| [Automation](./objectstack-automation/SKILL.md) | `automation` | Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, scheduled jobs, and webhooks. |
36+
| [Automation](./objectstack-automation/SKILL.md) | `automation` | Design ObjectStack automation — Flows (visual logic), Triggers, Approvals, state machines, and the `jobs` (`defineJob`) / `webhooks` (`defineWebhook`) stack collections. |
3737
| [AI](./objectstack-ai/SKILL.md) | `ai` | Design ObjectStack AI skills, tools, knowledge sources, conversations, model registry entries, and MCP integrations. |
3838
| [API](./objectstack-api/SKILL.md) | `api` | Design the server-side API surface that an ObjectStack runtime exposes — REST endpoints, auth providers, realtime channels, error envelopes, batch contracts. |
3939
| [i18n](./objectstack-i18n/SKILL.md) | `i18n` | Author ObjectStack translation bundles — object/field labels, view text, app navigation strings, automation messages — and configure locale fallback, coverage reporting, and the per-locale source layout. |

0 commit comments

Comments
 (0)