@jskit-ai/agent-docs 0.1.3 → 0.1.5

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 (74) hide show
  1. package/DISTR_AGENT.md +11 -1
  2. package/guide/agent/app-extras/assistant.md +1 -1
  3. package/guide/agent/app-extras/realtime.md +1 -1
  4. package/guide/agent/app-setup/a-more-interesting-shell.md +1 -1
  5. package/guide/agent/app-setup/authentication.md +9 -1
  6. package/guide/agent/app-setup/console.md +1 -1
  7. package/guide/agent/app-setup/database-layer.md +1 -1
  8. package/guide/agent/app-setup/initial-scaffolding.md +1 -1
  9. package/guide/agent/app-setup/multi-homing.md +3 -1
  10. package/guide/agent/app-setup/users.md +1 -1
  11. package/guide/agent/app-setup/working-with-the-jskit-cli.md +1 -1
  12. package/guide/agent/generators/advanced-cruds.md +163 -1
  13. package/guide/agent/generators/crud-generators.md +30 -1
  14. package/guide/agent/generators/intro.md +1 -1
  15. package/guide/agent/generators/ui-generators.md +1 -1
  16. package/guide/agent/index.md +1 -1
  17. package/package.json +1 -1
  18. package/reference/autogen/packages/agent-docs.md +19 -1
  19. package/reference/autogen/packages/assistant-core.md +1 -1
  20. package/reference/autogen/packages/assistant-runtime.md +1 -1
  21. package/reference/autogen/packages/assistant.md +1 -1
  22. package/reference/autogen/packages/auth-core.md +1 -1
  23. package/reference/autogen/packages/auth-provider-supabase-core.md +1 -1
  24. package/reference/autogen/packages/auth-web.md +1 -1
  25. package/reference/autogen/packages/console-core.md +1 -1
  26. package/reference/autogen/packages/console-web.md +1 -1
  27. package/reference/autogen/packages/crud-core.md +1 -1
  28. package/reference/autogen/packages/crud-server-generator.md +1 -1
  29. package/reference/autogen/packages/crud-ui-generator.md +1 -1
  30. package/reference/autogen/packages/database-runtime-mysql.md +1 -1
  31. package/reference/autogen/packages/database-runtime-postgres.md +1 -1
  32. package/reference/autogen/packages/database-runtime.md +1 -1
  33. package/reference/autogen/packages/http-runtime.md +1 -1
  34. package/reference/autogen/packages/kernel.md +1 -1
  35. package/reference/autogen/packages/realtime.md +1 -1
  36. package/reference/autogen/packages/shell-web.md +1 -1
  37. package/reference/autogen/packages/storage-runtime.md +1 -1
  38. package/reference/autogen/packages/ui-generator.md +1 -1
  39. package/reference/autogen/packages/uploads-image-web.md +1 -1
  40. package/reference/autogen/packages/uploads-runtime.md +1 -1
  41. package/reference/autogen/packages/users-core.md +1 -1
  42. package/reference/autogen/packages/users-web.md +1 -1
  43. package/reference/autogen/packages/workspaces-core.md +1 -1
  44. package/reference/autogen/packages/workspaces-web.md +1 -1
  45. package/reference/autogen/tooling/config-eslint.md +1 -1
  46. package/reference/autogen/tooling/create-app.md +1 -1
  47. package/reference/autogen/tooling/jskit-catalog.md +1 -1
  48. package/reference/autogen/tooling/jskit-cli.md +1 -1
  49. package/reference/autogen/tooling/test-support.md +1 -1
  50. package/reference/autogen/tooling/testUtils.md +1 -1
  51. package/skills/jskit-review/SKILL.md +12 -2
  52. package/templates/APP_BLUEPRINT.md +9 -0
  53. package/templates/WORKBOARD.md +3 -3
  54. package/templates/app/AGENTS.md +15 -3
  55. package/workflow/bootstrap.md +17 -2
  56. package/workflow/feature-delivery.md +19 -3
  57. package/workflow/review.md +9 -3
  58. package/workflow/scoping.md +10 -1
  59. package/workflow/workboard.md +1 -1
  60. package/guide/human/app-extras/assistant.md +0 -693
  61. package/guide/human/app-extras/realtime.md +0 -268
  62. package/guide/human/app-setup/a-more-interesting-shell.md +0 -732
  63. package/guide/human/app-setup/authentication.md +0 -961
  64. package/guide/human/app-setup/console.md +0 -350
  65. package/guide/human/app-setup/database-layer.md +0 -820
  66. package/guide/human/app-setup/initial-scaffolding.md +0 -753
  67. package/guide/human/app-setup/multi-homing.md +0 -793
  68. package/guide/human/app-setup/users.md +0 -402
  69. package/guide/human/app-setup/working-with-the-jskit-cli.md +0 -1047
  70. package/guide/human/generators/advanced-cruds.md +0 -921
  71. package/guide/human/generators/crud-generators.md +0 -554
  72. package/guide/human/generators/intro.md +0 -107
  73. package/guide/human/generators/ui-generators.md +0 -663
  74. package/guide/human/index.md +0 -37
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `packages/uploads-runtime/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `packages/users-core/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `packages/users-web/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `packages/workspaces-core/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `packages/workspaces-web/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/config-eslint/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/create-app/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/jskit-catalog/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/jskit-cli/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/test-support/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -8,7 +8,7 @@ Use this on demand; do not load the full index at startup.
8
8
 
9
9
  ## Scope
10
10
  - Source: `tooling/testUtils/**/*{.js,.mjs,.cjs,.vue}`
11
- - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`
11
+ - Excludes: `test/`, `tests/`, `__tests__/`, `*.test.*`, `*.spec.*`, `*.vitest.*`, `node_modules/`, `dist/`, `coverage/`, `docs/`, `LEGACY/`, `.vitepress/cache/`, `.vitepress/dist/`
12
12
 
13
13
  ## Sections
14
14
 
@@ -23,7 +23,7 @@ Read these on demand:
23
23
  - `../../reference/autogen/KERNEL_MAP.md`
24
24
  - `../../reference/autogen/README.md`
25
25
  - `../../guide/agent/index.md`
26
- - `../../guide/human/index.md` when compressed guidance is ambiguous
26
+ - `../../site/guide/index.md` when compressed guidance is ambiguous
27
27
 
28
28
  Inspect app-local files when they exist:
29
29
 
@@ -43,7 +43,8 @@ Use `.jskit/WORKBOARD.md` to determine the active chunk when available.
43
43
 
44
44
  1. Deslop review
45
45
  2. JSKIT best-practices review
46
- 3. Verification review
46
+ 3. Material Design and Vuetify review
47
+ 4. Verification review
47
48
 
48
49
  ## Deslop review
49
50
 
@@ -65,6 +66,15 @@ Check for:
65
66
  - surface, route, ownership, and migration choices that violate JSKIT conventions
66
67
  - metadata that no longer matches actual behavior
67
68
 
69
+ ## Material Design and Vuetify review
70
+
71
+ Check that user-facing screens:
72
+
73
+ - follow Material Design and Vuetify best practices
74
+ - use clear layout hierarchy, spacing, actions, and empty/error states
75
+ - use coherent list, table, and form patterns
76
+ - improve weak screens before sign-off rather than only recording the problem
77
+
68
78
  ## Verification review
69
79
 
70
80
  Check that verification is appropriate for the target:
@@ -44,6 +44,8 @@
44
44
  - Baseline runtime packages:
45
45
  - Optional runtime packages:
46
46
  - Generator packages to use:
47
+ - Package-owned workflows to accept as baseline:
48
+ - Package-owned workflows to override or extend:
47
49
 
48
50
  ## Implementation Notes
49
51
 
@@ -51,6 +53,12 @@
51
53
  - Non-CRUD pages to scaffold:
52
54
  - Custom code areas:
53
55
 
56
+ ## CRUD Planning
57
+
58
+ | CRUD | Operations | List Fields | View Form Shape | Edit/New Form Shape | Notes |
59
+ | --- | --- | --- | --- | --- | --- |
60
+ | | | | | | |
61
+
54
62
  ## Delivery Plan
55
63
 
56
64
  | Chunk | Goal | Type | Depends on | Done when |
@@ -68,4 +76,5 @@ Chunk notes:
68
76
  - Commands to run:
69
77
  - Playwright coverage plan:
70
78
  - Test auth strategy:
79
+ - UI review expectations:
71
80
  - Known open questions:
@@ -14,9 +14,9 @@
14
14
 
15
15
  ## Chunk Tracker
16
16
 
17
- | Chunk | Goal | Status | Deslop | JSKIT Review | Verification | Notes |
18
- | --- | --- | --- | --- | --- | --- | --- |
19
- | | | | | | | |
17
+ | Chunk | Goal | Status | Deslop | JSKIT Review | UI Review | Verification | Notes |
18
+ | --- | --- | --- | --- | --- | --- | --- | --- |
19
+ | | | | | | | | |
20
20
 
21
21
  Status guide:
22
22
 
@@ -16,7 +16,7 @@ Use these references on demand:
16
16
  - `node_modules/@jskit-ai/agent-docs/reference/autogen/KERNEL_MAP.md`
17
17
  - `node_modules/@jskit-ai/agent-docs/reference/autogen/README.md`
18
18
  - `node_modules/@jskit-ai/agent-docs/guide/agent/index.md`
19
- - `node_modules/@jskit-ai/agent-docs/guide/human/index.md` when compressed guidance is ambiguous or missing nuance
19
+ - `node_modules/@jskit-ai/agent-docs/site/guide/index.md` when compressed guidance is ambiguous or missing nuance
20
20
  - `node_modules/@jskit-ai/agent-docs/templates/APP_BLUEPRINT.md`
21
21
  - `node_modules/@jskit-ai/agent-docs/templates/WORKBOARD.md`
22
22
  - `node_modules/@jskit-ai/agent-docs/skills/jskit-review/SKILL.md` for review passes when your Codex environment supports packaged skills
@@ -24,15 +24,27 @@ Use these references on demand:
24
24
  Core rules:
25
25
 
26
26
  - Inspect the workspace before assuming a JSKIT app exists.
27
+ - Before non-trivial edits, print a short visible checkpoint using this format:
28
+ - `Problem: ...`
29
+ - `Fix: ...`
30
+ - `Why this sticks: ...`
31
+ - `Not doing: ...`
32
+ - Keep that checkpoint compact. Do not expand it into a long preamble unless the developer asks for detail.
27
33
  - Reuse existing JSKIT helpers and runtime seams before adding new local helpers.
28
34
  - A freshly scaffolded JSKIT app can still be in Stage 1. If the app was just created and platform decisions are not settled yet, continue with the initialize workflow before adding runtime packages.
29
35
  - Do not treat a missing `config.tenancyMode` line or an untouched minimal scaffold as a final tenancy decision.
30
36
  - Do not install tenancy-sensitive packages until Stage 1 decisions are complete and the chosen tenancy is written into `config/public.js`.
37
+ - Treat standard JSKIT package-owned workflows as the default baseline once the relevant package stack is chosen. Do not ask the developer to redesign those flows unless they want overrides, restrictions, or custom additions.
38
+ - Example: if the app is workspace-capable and uses `workspaces-core` plus `workspaces-web`, assume the standard workspace invite flow is part of the baseline package behavior.
39
+ - For baseline package setup, ask plainly for the exact local development values needed for the next install step, but only for the modules or packages that are actually selected.
40
+ - Use the real env var names or option names instead of vague requests for "credentials". Values such as `DB_NAME`, `DB_USER`, `DB_PASSWORD`, `AUTH_SUPABASE_URL`, `AUTH_SUPABASE_PUBLISHABLE_KEY`, and `APP_PUBLIC_URL` are routine setup inputs when the relevant package stack needs them.
41
+ - For CRUD chunks, ask the developer which operations are allowed, which fields belong in the list view if one exists, and the intended look of the view and edit/new forms before generating code.
42
+ - Every user-facing screen must pass a Material Design and Vuetify quality review before the chunk is considered done.
31
43
  - Do not implement app features before the blueprint has the database, surfaces, ownership model, and route/screen plan written down.
32
44
  - For substantial or multi-chunk work, create or update `.jskit/WORKBOARD.md` as the per-request execution tracker.
33
45
  - Break planned work into reviewable chunks before implementing. One CRUD is usually one chunk, but auth/platform setup, shell work, and cross-cutting integrations can be their own chunks.
34
- - Do not move to the next chunk until the current chunk has passed implementation, deslop review, JSKIT best-practices review, and verification.
35
- - If a feature spans more than one chunk, run a final whole-changeset deslop pass, JSKIT pass, and verification pass after the last chunk.
46
+ - Do not move to the next chunk until the current chunk has passed implementation, deslop review, JSKIT best-practices review, Material Design/Vuetify review, and verification.
47
+ - If a feature spans more than one chunk, run a final whole-changeset deslop pass, JSKIT pass, Material Design/Vuetify pass, and verification pass after the last chunk.
36
48
  - Prefer a fresh review agent for chunk and whole-changeset review when the runtime supports delegation.
37
49
  - Have that fresh review agent use the packaged `jskit-review` skill when it is available to the runtime.
38
50
  - If delegation or skills are unavailable, follow `workflow/review.md` manually in the current agent.
@@ -15,6 +15,7 @@ Safe bootstrap paths:
15
15
  - If the app was just created with `npx @jskit-ai/create-app <app-name>` and `npm install`, treat that scaffold as provisional.
16
16
  - Ask the Stage 1 platform questions before adding tenancy-sensitive packages.
17
17
  - If the chosen tenancy is `personal` or `workspaces`, write it into `config/public.js` before installing workspace packages.
18
+ - Once a baseline package stack is chosen, assume its standard package-owned workflows unless the developer asks for overrides.
18
19
 
19
20
  Important constraint:
20
21
 
@@ -31,7 +32,20 @@ Version 0 sketch:
31
32
  - database engine: MySQL or Postgres
32
33
  - auth provider, with Supabase as the default documented path
33
34
  - whether the first baseline should include workspaces, realtime, or assistant
34
- 3. Once those high-level choices are clear, continue into deeper scoping questions later.
35
+ 3. Treat Stage 1 as a package-stack decision, not a blank-slate workflow design exercise.
36
+ 4. Once those high-level choices are clear, continue into deeper scoping questions later.
37
+
38
+ Ask setup values plainly:
39
+
40
+ - Only ask for setup values that correspond to the modules or packages already chosen for the baseline.
41
+ - When the next package install needs concrete local development values, ask for them directly using the exact env var names or option names.
42
+ - Do not hide behind vague requests for "credentials" or "values after that boundary".
43
+ - In this workflow, these are routine setup inputs:
44
+ - If the MySQL runtime is selected: `DB_NAME`, `DB_USER`, `DB_PASSWORD`
45
+ - If the MySQL host or port differs from the local default `127.0.0.1:3306`: `DB_HOST`, `DB_PORT`
46
+ - If Supabase auth is selected: `AUTH_SUPABASE_URL`, `AUTH_SUPABASE_PUBLISHABLE_KEY`
47
+ - If browser-facing auth callbacks are relevant: confirm whether `APP_PUBLIC_URL` should stay `http://localhost:5173`
48
+ - Ask in plain language and continue once the developer provides the values.
35
49
 
36
50
  Baseline expectations after initialization:
37
51
 
@@ -39,6 +53,7 @@ Baseline expectations after initialization:
39
53
  - install the baseline runtime packages in the documented order
40
54
  - install dependencies
41
55
  - run database migrations when the chosen package set requires them
56
+ - use the standard packaged workflows that come with those packages unless the blueprint records an override
42
57
  - leave the app in a reproducible, verified baseline state
43
58
 
44
- Do not improvise package order. Use the distributed guide chapters under `guide/agent/app-setup/` or `guide/human/app-setup/`.
59
+ Do not improvise package order. Use the distributed guide chapters under `guide/agent/app-setup/` or `site/guide/app-setup/`.
@@ -21,13 +21,28 @@ For each chunk, follow this order:
21
21
  4. Implement the smallest correct change.
22
22
  5. Deslop the chunk.
23
23
  6. Review the chunk against JSKIT reuse and best practices.
24
- 7. Verify the chunk with the relevant commands, including Playwright for meaningful UI flows.
25
- 8. Update `.jskit/WORKBOARD.md` with status, commands run, and anything still unverified.
26
- 9. Only then move to the next chunk.
24
+ 7. Review user-facing screens against Material Design and Vuetify best practices, and improve any screens that do not meet that bar.
25
+ 8. Verify the chunk with the relevant commands, including Playwright for meaningful UI flows.
26
+ 9. Update `.jskit/WORKBOARD.md` with status, commands run, and anything still unverified.
27
+ 10. Only then move to the next chunk.
28
+
29
+ For CRUD chunks:
30
+
31
+ 1. Decide the table shape first.
32
+ 2. If `crud-server-generator` is going to own the CRUD schema, do not hand-write a separate migration for that CRUD table.
33
+ 3. Scaffold the server side first with `crud-server-generator`.
34
+ 4. Only after the shared resource file exists, scaffold the client side against that resource.
35
+ 5. Do not guess CRUD operations or screen shape. Ask the developer:
36
+ - which operations are allowed
37
+ - which fields belong in the list view if one exists
38
+ - what the view form should look like
39
+ - what the edit/new form should look like
27
40
 
28
41
  During implementation:
29
42
 
30
43
  - Prefer existing JSKIT helpers over local helper duplication.
44
+ - If a selected JSKIT package already ships the required baseline workflow, install and verify that workflow before inventing custom code around it.
45
+ - Ask only about overrides, restrictions, or app-specific additions to packaged baseline workflows.
31
46
  - Use generated CRUD/UI scaffolds only after the route and ownership model are decided.
32
47
  - Keep runtime, UI, and data concerns separated.
33
48
  - Avoid “while I’m here” scope creep unless it is required for correctness.
@@ -38,6 +53,7 @@ After the last chunk:
38
53
  - If there was more than one chunk, run one more whole-changeset pass:
39
54
  - deslop the whole changeset
40
55
  - review the whole changeset against JSKIT best practices
56
+ - review the whole changeset against Material Design and Vuetify best practices
41
57
  - run the widest relevant verification, including Playwright
42
58
  - update `.jskit/WORKBOARD.md` with the final result and any remaining gaps
43
59
 
@@ -6,7 +6,7 @@ Preferred review mode:
6
6
  - Have that fresh review agent use the packaged `jskit-review` skill when it is available.
7
7
  - If delegation or skills are unavailable, follow this file manually in the current agent.
8
8
 
9
- Before calling a chunk or a whole changeset done, review it in three passes:
9
+ Before calling a chunk or a whole changeset done, review it in four passes:
10
10
 
11
11
  1. Deslop review
12
12
  - repeated functions or duplicated local helpers
@@ -22,7 +22,13 @@ Before calling a chunk or a whole changeset done, review it in three passes:
22
22
  - should this have been a package install, generator step, or scaffold extension instead of hand code?
23
23
  - are surface, route, ownership, and migration choices aligned with JSKIT conventions?
24
24
  - package metadata and actual behavior still aligned?
25
- 3. Verification review
25
+ 3. UI standards review
26
+ - every user-facing screen follows Material Design and Vuetify best practices
27
+ - list screens use clear hierarchy, actions, density, empty states, and table/list patterns
28
+ - view and edit/new screens use clear form grouping, labels, helper text, validation, spacing, and action placement
29
+ - responsive layout, loading, disabled, success, and error states are coherent
30
+ - improve weak screens before sign-off; do not just note the problem and move on
31
+ 4. Verification review
26
32
  - run the smallest relevant verification commands for a chunk
27
33
  - run the widest relevant verification commands for a whole changeset
28
34
  - include Playwright for meaningful user-facing flows
@@ -38,4 +44,4 @@ Minimum expectation:
38
44
 
39
45
  Whole-changeset rule:
40
46
 
41
- - If the work was split into more than one chunk, repeat all three passes over the whole changeset after the final chunk is complete.
47
+ - If the work was split into more than one chunk, repeat all four passes over the whole changeset after the final chunk is complete.
@@ -22,17 +22,26 @@ The blueprint must capture at least:
22
22
  - package install plan
23
23
  - generator plan
24
24
  - custom-code areas
25
+ - baseline package-owned workflows and any intended overrides
25
26
  - delivery plan broken into chunks
27
+ - CRUD-specific operation and screen decisions where relevant
26
28
 
27
29
  Scoping rules:
28
30
 
29
- - Use `guide/agent/index.md` for fast navigation and `guide/human/index.md` for exact details.
31
+ - Use `guide/agent/index.md` for fast navigation and `site/guide/index.md` for exact details.
30
32
  - Inspect packages and generators before choosing them.
31
33
  - Decide ownership early; do not treat it as a UI-only detail.
32
34
  - If Stage 1 platform choices are still provisional, finish them before installing tenancy-sensitive runtime packages.
35
+ - Record which selected JSKIT package-owned workflows are accepted as baseline and which, if any, need custom behavior.
36
+ - Do not ask the developer to redesign package-owned baseline workflows from scratch. Ask only whether the default behavior is accepted or whether the app needs overrides, restrictions, or extensions.
33
37
  - Create or refresh `.jskit/WORKBOARD.md` for substantial or multi-chunk work so the request has an explicit execution tracker.
34
38
  - Break delivery into chunks that can be independently reviewed and tested.
35
39
  - One CRUD is usually one chunk. Platform setup, shell work, and cross-cutting integrations may also be separate chunks.
40
+ - For each CRUD chunk, decide these before implementation:
41
+ - which operations exist: `list`, `view`, `new`, `edit`, `delete`, or a narrower set
42
+ - which fields appear in the list view if a list exists
43
+ - the intended structure and visual hierarchy of the view form
44
+ - the intended structure and visual hierarchy of the edit/new form
36
45
  - If the package/runtime choice is unclear, stop and resolve it before writing implementation code.
37
46
 
38
47
  No feature implementation should start until the blueprint covers database, screens, functional boundaries, and chunk plan well enough that the implementation path is obvious.
@@ -17,7 +17,7 @@ Purpose:
17
17
 
18
18
  - track the current request
19
19
  - record the current stage and current chunk
20
- - track chunk status across implementation, deslop, JSKIT review, and verification
20
+ - track chunk status across implementation, deslop, JSKIT review, UI review, and verification
21
21
  - record blockers, open questions, and remaining gaps
22
22
 
23
23
  Workboard rules: