@ethlete/agent-rules 0.1.0-next.24 → 0.1.0-next.26

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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @ethlete/agent-rules
2
2
 
3
+ ## 0.1.0-next.26
4
+
5
+ ### Patch Changes
6
+
7
+ - `et design new --feature <name>` groups a call under a feature, and `et design legacy` now also writes the stage its group folder implies.
8
+ - Studio reads a call's `closed` and `waitsFor`: closed calls count as settled, waiting calls sit under "On hold", legacy calls with a stage clear the stage gate, and open calls now lead the sidebar.
9
+
10
+ ## 0.1.0-next.25
11
+
12
+ ### Patch Changes
13
+
14
+ - Link the generated skills to the next docs site, which matches the prerelease line.
15
+
3
16
  ## 0.1.0-next.24
4
17
 
5
18
  ### Minor Changes
@@ -4,7 +4,7 @@
4
4
  "formatCommand": "npx prettier --write <files>",
5
5
  "storybookUrl": "http://localhost:6006",
6
6
  "storybookStartCommand": "npm run storybook",
7
- "docsBaseUrl": "https://ethlete-sdk-docs.web.app",
7
+ "docsBaseUrl": "https://ethlete-sdk-docs-next.web.app",
8
8
  "sdkStorybookUrl": "https://ethlete-sdk.web.app",
9
9
  "handoffDir": ".agents/handoffs"
10
10
  }
@@ -77,7 +77,7 @@ in its own `styles`; it never changes the project's providers.
77
77
  `et design --help` lists every command. Start a call with the tool, never by hand:
78
78
 
79
79
  ```bash
80
- et design new <project>/<group>/<name> --stage component --variants a,b
80
+ et design new <project>/<group>/<name> --stage component --variants a,b --feature <name>
81
81
  et design status <slug> drawing # while you draw; check sets checking, then ready or failed
82
82
  ```
83
83
 
@@ -87,6 +87,9 @@ call needs one: `new` refuses to start without `--stage`, and `et design check -
87
87
  call without it. Ethlete Studio groups the calls by it, and the check warns when an element, page
88
88
  or prototype call imports nothing from the design system. The status shows on the call's row in Studio.
89
89
 
90
+ `feature: '<name>'` in `call.ts` groups a call under a feature in Studio. Set it at creation with
91
+ `new --feature <name>`. A call without one shows under "No feature".
92
+
90
93
  `et design [checkout]` serves the frames on the port `config.json` names. The
91
94
  checkout defaults to the working directory, and `DE_PORT` overrules the config, so two
92
95
  checkouts can be drawn at once. A repository that builds the tool rather than installing it
@@ -115,6 +118,14 @@ before the user rules.
115
118
  A call with one variant and no `claim` is a **view**: one reference picture, drawn full
116
119
  width with no verdict tag. Use it for a picture that answers no question.
117
120
 
121
+ Two call-level fields take a call out of the open list:
122
+
123
+ - `closed: 'shipped'` once the app implements the call, `closed: 'superseded'` once another
124
+ call replaced it. A closed call counts as settled, even with unruled variants.
125
+ - `waitsFor: '<slug>'`, the full slug of another call, when this call is parked on it. Studio lists
126
+ it under "On hold" and leaves it out of the open counts until that call settles. Then it is
127
+ open again by itself, so remove the field only when the reason changes.
128
+
118
129
  Three constraints the tool puts on a variant file:
119
130
 
120
131
  - **Never import a package barrel.** The libraries resolve to source, so one barrel makes
@@ -122,8 +133,7 @@ Three constraints the tool puts on a variant file:
122
133
  `ERR_INSUFFICIENT_RESOURCES`. Import the one file you need.
123
134
  - **The fixture is shared, and a variant may not change it.** Variants drawn at three
124
135
  geometries cannot be compared.
125
- - **One file per variant**, so several agents can draw at once, and a broken variant breaks
126
- its own frame only.
136
+ - **One file per variant**, so a broken variant breaks its own frame only.
127
137
 
128
138
  A `<script>` in a drawing's `body` never runs. For behavior - a play button that restarts a
129
139
  CSS animation, a click that toggles a class - give the drawing a `setup(root)` function. The
@@ -185,8 +195,12 @@ A quick exploration of an idea does not run this order: start it with `--stage s
185
195
  sketch needs no settled stage before it, and Studio lists it apart from the seven stages. When
186
196
  the idea holds, draw it again at its real stage.
187
197
 
188
- A call made before the stage was required carries `legacy: true` instead, which
189
- `et design legacy <project>` writes once. Never add `legacy` to a new call.
198
+ A call made before the stage was required carries `legacy: true`, which
199
+ `et design legacy <project>` writes once. It also writes the stage its group folder implies:
200
+ `foundations` is `themes`, `components` is `component`, `pages` is `page`; another folder gets
201
+ none. Run it again to add the stage to an old legacy call; a stage already there stays. A
202
+ settled legacy call with a stage counts for that stage in this order. Never add `legacy` to a
203
+ new call.
190
204
 
191
205
  A later stage can show that an earlier one is incomplete. If a page needs a part that the system
192
206
  does not have, add it to the inventory and open a component call for it. Never draw the part
@@ -281,11 +295,13 @@ node check-story.mjs --tsconfig <path> --story <story-id>
281
295
 
282
296
  ## Delegating a call
283
297
 
284
- A call has one job per variant, so it fans out. Every brief names `model: opus`.
298
+ Every brief names `model: opus`.
285
299
 
286
- 1. **One agent per variant.** Give it the call folder, the variant key, the fixture it must
287
- not change, and the one claim its drawing has to support. Tell it to write its own
288
- variant file and nothing else, so two agents never touch one file.
300
+ 1. **One agent per call.** It draws all the variants of the call. Give it the call folder, the
301
+ fixture it must not change, and the claim of each variant. Do not spawn one agent per
302
+ variant: each would re-read the skill, the call, the fixture and the example, about 45-57k
303
+ tokens each, so the cost is several times higher. Calls are independent, so several calls
304
+ can run at once, one agent each.
289
305
  2. **One check-and-fix agent, after the drawing agents return.** Give it the changed files
290
306
  and the call slug. It runs the check above, fixes what it reports, and repeats until the
291
307
  check says `ok`. It may not change what a variant draws, only what stops it rendering.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ethlete/agent-rules",
3
- "version": "0.1.0-next.24",
3
+ "version": "0.1.0-next.26",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/ethlete-io/ethdk",