@jskit-ai/agent-docs 0.1.277 → 0.1.278

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.
@@ -112,7 +112,7 @@ Exactly this, and nothing more:
112
112
  | `nav/history` | `history.back()`, `history.go()`, `history.pushState()`/`replaceState()`, `router.back()`, `router.go()` |
113
113
  | `nav/window-location` | `window.location` assignments, `.href =`, `location.assign()`, `location.replace()` |
114
114
  | `nav/raw-link` | a hand-built in-app path in `to`, `href`, `router.push()`, `router.replace()` or a `to:`/`href:` object key outside a placement |
115
- | `nav/back-control` | any back control but the shell's Up navigating the app: "Back to X", "← Suppliers", back arrows and navigating chevrons, breadcrumbs, a custom app-bar back button, a back component, a `goBack()`-style handler |
115
+ | `nav/back-control` | any back control but the shell's Up that navigates the app: "Back to X", "← Suppliers", back arrows and navigating chevrons, breadcrumbs, a custom app-bar back button, a back component, a `goBack()`-style handler |
116
116
  | `nav/missing-parent` | an inner page of a shell surface without a declared parent |
117
117
  | `nav/top-level-parent` | a main-navigation destination that declares a parent |
118
118
  | `nav/allow` | any `m3-check: allow nav/...` comment: nothing excuses a navigation rule |
@@ -145,9 +145,15 @@ Exactly this, and nothing more:
145
145
  `finish(recordUrl)`; the record shows, and Up goes where the record's Up went
146
146
  before. Wrong: `router.push(recordUrl)` after Save, so Up or Back reopens the
147
147
  form.
148
- - **Steps inside a page are named actions:** "Previous step" or the
149
- destination's name, not "Back" or a back arrow. A frame's own Back
150
- (`contentWindow.history`) is fine.
148
+ - **Steps and drill-downs inside a page are named actions.** A wizard step or
149
+ a panel the page opens in place is not a page, so it has no Up. Right:
150
+ "Previous step", or the destination's name ("Dashboard"), with no back
151
+ arrow. Wrong: "Back" or a back arrow. `nav/back-control` flags only controls
152
+ that navigate the app: a link into it, or a handler that reaches the router,
153
+ JSKIT paths, `up()`, `finish()` or the browser's history or location. Prose
154
+ ("back from version 2"), a variable named `back` and an embedded frame's own
155
+ Back and Forward (`frame.contentWindow.history.back()`, as in a preview
156
+ browser) are not back controls.
151
157
 
152
158
  ## Foundation
153
159
 
@@ -199,9 +205,15 @@ dialog, chip or FAB. A missing size is a JSKIT defect.
199
205
  standalone heading. A section inside a page uses a title role.
200
206
  - **Up** sits in the bar on every inner page (see Navigation and Up). On phones
201
207
  it replaces the menu icon.
202
- - **A layout with its own top app bar** calls `useShellAppBar()` and renders
203
- `ShellUpButton`, `ShellPageTitle` and `ShellPageActionsTarget` in it;
204
- `jskit check` treats it as a shell layout.
208
+ - **A layout that draws its own top app bar** (a workspace bar with the
209
+ app's own controls, instead of `ShellLayout`) builds it from `ShellLayout`'s
210
+ own pieces, from `@jskit-ai/shell-web/client`. It calls `useShellAppBar()`
211
+ once, so its pages enter the trail and their `ShellPageActions` show in its
212
+ bar, and renders `ShellUpButton` first, then `ShellPageTitle` (the page's one
213
+ `h1`: `useShellPageTitle()`, else the route's `jskit.title`, else its `title`
214
+ prop) and `ShellPageActionsTarget`. `jskit check` counts it as a shell
215
+ layout, so its inner pages need parents; an Up the app draws itself is a
216
+ `nav/back-control` finding.
205
217
  - **Actions:** a screen's actions go in the bar inside `ShellPageActions`
206
218
  (`@jskit-ai/shell-web/client/components/ShellPageActions`), each a
207
219
  `ShellPageAction` with `icon`, `label` (also its accessible name and compact
@@ -328,8 +340,9 @@ Take the approved route first; none needs an exception:
328
340
 
329
341
  - **Brand or partner colours** are theme custom colours, used by name:
330
342
  `colors: { partner: "#0A7D3E" }` in `src/theme/index.js`, then
331
- `<v-chip color="partner">`. `{ value: "#F5C518", blend: false }` keeps
332
- its hue.
343
+ `<v-chip color="partner">`. A hex string is harmonized toward the seed; a
344
+ colour that must keep its hue is `{ value: "#F5C518", blend: false }`
345
+ (Material Theme Builder's Blend switched off), with the same four roles.
333
346
  - **Chart and data colours** come from the theme: `const theme = useTheme()`,
334
347
  then `["primary", "tertiary"].map((role) => theme.current.value.colors[role])`.
335
348
  - **A third-party widget** lives in one wrapper component, such as
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jskit-ai/agent-docs",
3
- "version": "0.1.277",
3
+ "version": "0.1.278",
4
4
  "description": "Distributed JSKIT agent references, prompts, guides, and generated reference maps.",
5
5
  "type": "module",
6
6
  "files": [
@@ -50,7 +50,7 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@jskit-ai/config-eslint": "0.1.245",
53
- "@jskit-ai/jskit-catalog": "0.2.29",
53
+ "@jskit-ai/jskit-catalog": "0.2.30",
54
54
  "@playwright/test": "1.61.1",
55
55
  "@vitejs/plugin-vue": "^6.0.7",
56
56
  "eslint": "^10.8.0",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@jskit-ai/config-eslint": "0.1.245",
54
- "@jskit-ai/jskit-catalog": "0.2.29",
54
+ "@jskit-ai/jskit-catalog": "0.2.30",
55
55
  "@playwright/test": "1.61.1",
56
56
  "@vitejs/plugin-vue": "^6.0.7",
57
57
  "eslint": "^10.8.0",
@@ -15,7 +15,7 @@ A concrete Fastify, Vue, and JSKIT application foundation for products that do n
15
15
 
16
16
  - Id: `app/minimal-foundation`
17
17
  - Keywords: `app`, `fastify`, `foundation`, `minimal`, `server`, `vite`, `vue`
18
- - Owner: `@jskit-ai/agent-docs@0.1.277`
18
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
19
19
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/app/minimal-foundation/PATTERN.md)
20
20
  - Examples: [example/](../../skills/jskit/references/patterns/app/minimal-foundation/example/)
21
21
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`
@@ -26,7 +26,7 @@ A concrete JSKIT web application foundation with responsive shell navigation, se
26
26
 
27
27
  - Id: `app/shell-foundation`
28
28
  - Keywords: `app`, `foundation`, `material`, `navigation`, `placements`, `shell`, `vite`, `vue`
29
- - Owner: `@jskit-ai/agent-docs@0.1.277`
29
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
30
30
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/app/shell-foundation/PATTERN.md)
31
31
  - Examples: [example/](../../skills/jskit/references/patterns/app/shell-foundation/example/)
32
32
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`, `@jskit-ai/shell-web`
@@ -345,7 +345,7 @@ Define a server feature through explicit capabilities and first-class actions, a
345
345
 
346
346
  - Id: `server/feature-package`
347
347
  - Keywords: `actions`, `feature`, `json-rest`, `knex`, `orchestration`, `package`, `provider`, `repository`, `routes`, `server`
348
- - Owner: `@jskit-ai/agent-docs@0.1.277`
348
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
349
349
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/server/feature-package/PATTERN.md)
350
350
  - Examples: [example/](../../skills/jskit/references/patterns/server/feature-package/example/)
351
351
  - Requires: `@jskit-ai/kernel`
@@ -107,7 +107,7 @@ Exactly this, and nothing more:
107
107
  | `nav/history` | `history.back()`, `history.go()`, `history.pushState()`/`replaceState()`, `router.back()`, `router.go()` |
108
108
  | `nav/window-location` | `window.location` assignments, `.href =`, `location.assign()`, `location.replace()` |
109
109
  | `nav/raw-link` | a hand-built in-app path in `to`, `href`, `router.push()`, `router.replace()` or a `to:`/`href:` object key outside a placement |
110
- | `nav/back-control` | any back control but the shell's Up navigating the app: "Back to X", "← Suppliers", back arrows and navigating chevrons, breadcrumbs, a custom app-bar back button, a back component, a `goBack()`-style handler |
110
+ | `nav/back-control` | any back control but the shell's Up that navigates the app: "Back to X", "← Suppliers", back arrows and navigating chevrons, breadcrumbs, a custom app-bar back button, a back component, a `goBack()`-style handler |
111
111
  | `nav/missing-parent` | an inner page of a shell surface without a declared parent |
112
112
  | `nav/top-level-parent` | a main-navigation destination that declares a parent |
113
113
  | `nav/allow` | any `m3-check: allow nav/...` comment: nothing excuses a navigation rule |
@@ -140,9 +140,15 @@ Exactly this, and nothing more:
140
140
  `finish(recordUrl)`; the record shows, and Up goes where the record's Up went
141
141
  before. Wrong: `router.push(recordUrl)` after Save, so Up or Back reopens the
142
142
  form.
143
- - **Steps inside a page are named actions:** "Previous step" or the
144
- destination's name, not "Back" or a back arrow. A frame's own Back
145
- (`contentWindow.history`) is fine.
143
+ - **Steps and drill-downs inside a page are named actions.** A wizard step or
144
+ a panel the page opens in place is not a page, so it has no Up. Right:
145
+ "Previous step", or the destination's name ("Dashboard"), with no back
146
+ arrow. Wrong: "Back" or a back arrow. `nav/back-control` flags only controls
147
+ that navigate the app: a link into it, or a handler that reaches the router,
148
+ JSKIT paths, `up()`, `finish()` or the browser's history or location. Prose
149
+ ("back from version 2"), a variable named `back` and an embedded frame's own
150
+ Back and Forward (`frame.contentWindow.history.back()`, as in a preview
151
+ browser) are not back controls.
146
152
 
147
153
  ## Foundation
148
154
 
@@ -194,9 +200,15 @@ dialog, chip or FAB. A missing size is a JSKIT defect.
194
200
  standalone heading. A section inside a page uses a title role.
195
201
  - **Up** sits in the bar on every inner page (see Navigation and Up). On phones
196
202
  it replaces the menu icon.
197
- - **A layout with its own top app bar** calls `useShellAppBar()` and renders
198
- `ShellUpButton`, `ShellPageTitle` and `ShellPageActionsTarget` in it;
199
- `jskit check` treats it as a shell layout.
203
+ - **A layout that draws its own top app bar** (a workspace bar with the
204
+ app's own controls, instead of `ShellLayout`) builds it from `ShellLayout`'s
205
+ own pieces, from `@jskit-ai/shell-web/client`. It calls `useShellAppBar()`
206
+ once, so its pages enter the trail and their `ShellPageActions` show in its
207
+ bar, and renders `ShellUpButton` first, then `ShellPageTitle` (the page's one
208
+ `h1`: `useShellPageTitle()`, else the route's `jskit.title`, else its `title`
209
+ prop) and `ShellPageActionsTarget`. `jskit check` counts it as a shell
210
+ layout, so its inner pages need parents; an Up the app draws itself is a
211
+ `nav/back-control` finding.
200
212
  - **Actions:** a screen's actions go in the bar inside `ShellPageActions`
201
213
  (`@jskit-ai/shell-web/client/components/ShellPageActions`), each a
202
214
  `ShellPageAction` with `icon`, `label` (also its accessible name and compact
@@ -323,8 +335,9 @@ Take the approved route first; none needs an exception:
323
335
 
324
336
  - **Brand or partner colours** are theme custom colours, used by name:
325
337
  `colors: { partner: "#0A7D3E" }` in `src/theme/index.js`, then
326
- `<v-chip color="partner">`. `{ value: "#F5C518", blend: false }` keeps
327
- its hue.
338
+ `<v-chip color="partner">`. A hex string is harmonized toward the seed; a
339
+ colour that must keep its hue is `{ value: "#F5C518", blend: false }`
340
+ (Material Theme Builder's Blend switched off), with the same four roles.
328
341
  - **Chart and data colours** come from the theme: `const theme = useTheme()`,
329
342
  then `["primary", "tertiary"].map((role) => theme.current.value.colors[role])`.
330
343
  - **A third-party widget** lives in one wrapper component, such as
@@ -15,7 +15,7 @@ A concrete Fastify, Vue, and JSKIT application foundation for products that do n
15
15
 
16
16
  - Id: `app/minimal-foundation`
17
17
  - Keywords: `app`, `fastify`, `foundation`, `minimal`, `server`, `vite`, `vue`
18
- - Owner: `@jskit-ai/agent-docs@0.1.277`
18
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
19
19
  - Read: [PATTERN.md](patterns/app/minimal-foundation/PATTERN.md)
20
20
  - Examples: [example/](patterns/app/minimal-foundation/example/)
21
21
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`
@@ -26,7 +26,7 @@ A concrete JSKIT web application foundation with responsive shell navigation, se
26
26
 
27
27
  - Id: `app/shell-foundation`
28
28
  - Keywords: `app`, `foundation`, `material`, `navigation`, `placements`, `shell`, `vite`, `vue`
29
- - Owner: `@jskit-ai/agent-docs@0.1.277`
29
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
30
30
  - Read: [PATTERN.md](patterns/app/shell-foundation/PATTERN.md)
31
31
  - Examples: [example/](patterns/app/shell-foundation/example/)
32
32
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`, `@jskit-ai/shell-web`
@@ -345,7 +345,7 @@ Define a server feature through explicit capabilities and first-class actions, a
345
345
 
346
346
  - Id: `server/feature-package`
347
347
  - Keywords: `actions`, `feature`, `json-rest`, `knex`, `orchestration`, `package`, `provider`, `repository`, `routes`, `server`
348
- - Owner: `@jskit-ai/agent-docs@0.1.277`
348
+ - Owner: `@jskit-ai/agent-docs@0.1.278`
349
349
  - Read: [PATTERN.md](patterns/server/feature-package/PATTERN.md)
350
350
  - Examples: [example/](patterns/server/feature-package/example/)
351
351
  - Requires: `@jskit-ai/kernel`
@@ -50,7 +50,7 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@jskit-ai/config-eslint": "0.1.245",
53
- "@jskit-ai/jskit-catalog": "0.2.29",
53
+ "@jskit-ai/jskit-catalog": "0.2.30",
54
54
  "@playwright/test": "1.61.1",
55
55
  "@vitejs/plugin-vue": "^6.0.7",
56
56
  "eslint": "^10.8.0",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@jskit-ai/config-eslint": "0.1.245",
54
- "@jskit-ai/jskit-catalog": "0.2.29",
54
+ "@jskit-ai/jskit-catalog": "0.2.30",
55
55
  "@playwright/test": "1.61.1",
56
56
  "@vitejs/plugin-vue": "^6.0.7",
57
57
  "eslint": "^10.8.0",