@owlmeans/viable-common 0.0.29 → 0.0.31

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/README.md CHANGED
@@ -21,7 +21,7 @@ filesystem, no inference SDK. It is safe to import from a browser bundle.
21
21
  ## Installation
22
22
 
23
23
  ```bash
24
- bun add @owlmeans/viable-common@^0.0.29
24
+ bun add @owlmeans/viable-common@^0.0.31
25
25
  ```
26
26
 
27
27
  ## Rules worth knowing before you change something
@@ -39,7 +39,7 @@ means "inherit" has no other spelling. `tests/convert.spec.ts` walks every expor
39
39
  both faults, and for draft-04 tuple `items`.
40
40
 
41
41
  **A field that crosses a version skew carries no `enum`.** A connector is installed with
42
- `npx -y @owlmeans/viable-mcp@^0.1.18-rc.25` and talks to a separately deployed platform, so an executor kind it
42
+ `npx -y @owlmeans/viable-mcp@^0.1.18-rc.28` and talks to a separately deployed platform, so an executor kind it
43
43
  sends must remain an unused capability on an older platform rather than a refused session.
44
44
 
45
45
  **A ceiling exists once.** The inquiry answer cap here equals `DEFAULT_INQUIRY_ANSWER_CHARS` in
@@ -59,7 +59,7 @@ This package ships embedded agent skills under `agent-meta/`. After installing y
59
59
  your project's skill store (`.agents/skills/`):
60
60
 
61
61
  ```sh
62
- npx @owlmeans/agent-skills@^0.1.18-rc.33
62
+ npx @owlmeans/agent-skills@^0.1.18-rc.35
63
63
  ```
64
64
 
65
65
  The embedded files are version-matched to this package release. Do not edit them
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 2,
3
3
  "package": "@owlmeans/viable-common",
4
- "version": "0.0.29",
5
- "generatedAt": "2026-09-22T17:37:10.925Z",
4
+ "version": "0.0.31",
5
+ "generatedAt": "2026-09-22T21:57:18.828Z",
6
6
  "canonicalRepo": "https://github.com/owlmeans/common",
7
7
  "entries": [
8
8
  {
@@ -6,7 +6,7 @@ description: Shared, runtime-free taxonomy for presenting OwlMeans Viable agent
6
6
 
7
7
  # Agent output presentation
8
8
 
9
- **Install:** `"@owlmeans/viable-common": "^0.0.29"` in `dependencies`
9
+ **Install:** `"@owlmeans/viable-common": "^0.0.31"` in `dependencies`
10
10
 
11
11
  `@owlmeans/viable-common`'s `agent/presentation.ts` owns the browser-safe vocabulary for agent
12
12
  output. Keep the server and every client on `classifyAgentMessage()`; consumers may refine a
@@ -8,7 +8,7 @@ user-invocable: false
8
8
  # @owlmeans/viable-common
9
9
 
10
10
  **Layer:** Cross-cutting domain (contracts only)
11
- **Install:** `"@owlmeans/viable-common": "^0.0.29"` in `dependencies`
11
+ **Install:** `"@owlmeans/viable-common": "^0.0.31"` in `dependencies`
12
12
  **Subpaths:** `.` · `./slot` · `./connect` · `./convert` · `./integrity`
13
13
  **Runtime-free:** no `@langchain/*`, no filesystem, no Ajv at run time (a devDependency, for the
14
14
  tests that compile the schemas). It depends on `@owlmeans/planning`, `@owlmeans/resource`,
@@ -253,7 +253,7 @@ code, never as `minItems`/`maxItems`. The descriptions are what the planning mod
253
253
  state each field's purpose and bounds; `gate.target` is filled by code and described as such.
254
254
 
255
255
  **A field that crosses a version skew carries no `enum`.** Users run
256
- `npx -y @owlmeans/viable-mcp@^0.1.18-rc.25` (the moving prerelease tag) against a separately deployed
256
+ `npx -y @owlmeans/viable-mcp@^0.1.18-rc.28` (the moving prerelease tag) against a separately deployed
257
257
  platform, so `ConnectCapabilitiesSchema.executors.items`
258
258
  is a bare string: a newer executor kind must stay an unused capability on an older platform, never
259
259
  a refused session. Apply the same reasoning to anything else a newer connector may send an older
@@ -46,8 +46,8 @@ export var GameKind;
46
46
  /** What every AI case installs. The langchain peers are declared here, at ONE range. */
47
47
  const AI_DEPS = {
48
48
  [SubProject.Backend]: {
49
- '@owlmeans/llm': '^0.1.18-rc.32',
50
- '@owlmeans/agent': '^0.1.18-rc.33',
49
+ '@owlmeans/llm': '^0.1.18-rc.35',
50
+ '@owlmeans/agent': '^0.1.18-rc.36',
51
51
  '@langchain/core': '^1.2.9',
52
52
  '@langchain/anthropic': '^1.5.8',
53
53
  '@langchain/openai': '^1.5.10',
@@ -230,7 +230,7 @@ in advance.
230
230
  deps: {
231
231
  [SubProject.Backend]: {
232
232
  ...AI_DEPS[SubProject.Backend],
233
- '@owlmeans/agent-skills': '^0.1.18-rc.32',
233
+ '@owlmeans/agent-skills': '^0.1.18-rc.35',
234
234
  },
235
235
  },
236
236
  libraries: AI_LIBRARIES,
@@ -1 +1 @@
1
- {"version":3,"file":"catalogue.d.ts","sourceRoot":"","sources":["../../src/skills/catalogue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAe,WAAW,EAAE,MAAM,aAAa,CAAA;AAgBtD,2FAA2F;AAC3F,eAAO,MAAM,eAAe,SAAU,MAAM,EAAE,KAAG,MACuC,CAAA;AAKxF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,UAAU,CAAA;AACxC,eAAO,MAAM,kBAAkB,UAE9B,CAAA;AACD,eAAO,MAAM,sBAAsB,UAKlC,CAAA;AACD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,UAE9B,CAAA;AACD,eAAO,MAAM,iBAAiB,UAAmE,CAAA;AAEjG;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,UAEzB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,UAAgD,CAAA;AAE5E;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAUrB,CAAA;AAER,eAAO,MAAM,aAAa,EAAE,eAAe,EA8rD1C,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,WAAW,UAAW,WAAW,KAAG,eACI,CAAA"}
1
+ {"version":3,"file":"catalogue.d.ts","sourceRoot":"","sources":["../../src/skills/catalogue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAe,WAAW,EAAE,MAAM,aAAa,CAAA;AAgBtD,2FAA2F;AAC3F,eAAO,MAAM,eAAe,SAAU,MAAM,EAAE,KAAG,MACuC,CAAA;AAKxF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,UAAU,CAAA;AACxC,eAAO,MAAM,kBAAkB,UAE9B,CAAA;AACD,eAAO,MAAM,sBAAsB,UAKlC,CAAA;AACD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,UAE9B,CAAA;AACD,eAAO,MAAM,iBAAiB,UAAmE,CAAA;AAEjG;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,UAEzB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,UAAgD,CAAA;AAE5E;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAUrB,CAAA;AAER,eAAO,MAAM,aAAa,EAAE,eAAe,EA6tD1C,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,WAAW,UAAW,WAAW,KAAG,eACI,CAAA"}
@@ -224,6 +224,14 @@ in its own language, with no TypeScript syntax and no import statements it does
224
224
  skill(ViableSkill.TsImports, 'Imports and path aliases', `
225
225
  - Import shared code as \`project-common/<path>\`, never as \`sources/common/src/<path>\`,
226
226
  and never with a \`.js\` extension.
227
+ - From \`api\` and \`worker\`, reach the shared BACKEND library the same way — as the package, by
228
+ its path under \`src\`, with NO extension:
229
+ \`import { taskResource } from 'project-backend/resources/task/task'\`.
230
+ Both libraries publish \`"./*": "./build/*.js"\`, so \`project-backend/resources/task/task.js\`
231
+ looks for \`task.js.js\` and is \`TS2307: Cannot find module\`; \`project-backend/build/…\` doubles
232
+ the \`build/\`; and a relative \`../../resources/task/task.js\` stays inside YOUR package, where
233
+ no \`resources/\` exists. The \`.js\` suffix belongs ONLY to relative imports inside
234
+ \`sources/backend/\` (below) — never to a package specifier.
227
235
  - Inside a BUNDLED package — \`api\`, \`web\`, \`worker\` — \`@/\` is an alias for that package's own
228
236
  \`src\`; use it instead of chains of \`../\`.
229
237
  - **The shared backend library has NO \`@/\` alias.** It is built by \`tsc -b\`, not bundled, and
@@ -731,6 +739,11 @@ which records match, so a screen never recomputes ids and never re-subscribes.
731
739
  const open = useTaskList({ status: 'open' }) // StateModel<Task>[]
732
740
  open.map(model => model.record.title)
733
741
 
742
+ The hook returns the ARRAY itself — there is no \`.list\`, \`.items\`, \`.records\` or \`.data\` on
743
+ it, and each element is a MODEL, not a \`Task\`. Where plain records are wanted (a prop typed
744
+ \`Task[]\`, a filter, a count), map them out: \`open.map(model => model.record)\`.
745
+ An error saying \`StateModel<Task>[]\` is not assignable to \`Task[]\` means exactly that map is missing.
746
+
734
747
  \`useStoreModel(id)\` is one record — the model always exists so a screen has something to bind
735
748
  to, but nothing is invented to fill it. \`model.empty\` is what "not loaded yet" looks like:
736
749
 
@@ -902,12 +915,24 @@ file:
902
915
 
903
916
  pg: { references: { resource: 'other-alias' } }
904
917
 
918
+ The referencing property has EXACTLY the type and format of the referenced resource's \`id\`. An
919
+ \`id\` declared \`{ type: 'string', format: 'uuid' }\` is a \`uuid\` column, and an \`id\` left
920
+ undeclared is \`text\` — so copy the referenced \`id\`'s declaration onto the reference:
921
+
922
+ bakeId: { type: 'string', format: 'uuid', pg: { references: { resource: 'bake' } } }
923
+
924
+ A plain \`{ type: 'string' }\` pointing at a \`uuid\` id compiles, and then the backend refuses to
925
+ start: \`42804 foreign key constraint … cannot be implemented — Key columns are of incompatible
926
+ types\`.
927
+
905
928
  If the referenced resource does not exist, use a plain string property instead.
906
929
  `),
907
930
  skill(ViableSkill.ResourceResults, 'How resource methods are called, and what they return', `
908
- Reach data through the accessor from \`@/resources/{entity}/{type}.js\` and call the
909
- resource's own methods. Never write raw SQL in a route handler, never import a database
910
- connection, and never construct a resource yourself.
931
+ Reach data through the resource's accessor and call the resource's own methods. Resources live
932
+ in the shared backend library: from \`api\` and \`worker\` import the accessor as
933
+ \`project-backend/resources/{entity}/{type}\` (no \`.js\`); inside \`sources/backend/\` import it
934
+ relatively, with \`.js\` (\`../../resources/{entity}/{type}.js\`). Never write raw SQL in a route
935
+ handler, never import a database connection, and never construct a resource yourself.
911
936
 
912
937
  A WRITE takes ONE argument — the record — and the id travels INSIDE it. There is no
913
938
  \`(id, changes)\` overload on any of them:
@@ -1220,6 +1245,12 @@ package, and every request to the route then fails with \`TypeError: handler is
1220
1245
  - A handler is inert until the \`bind(protocols.api.<name>, api.body/params/request(protocols.api.<name>, handler))\`
1221
1246
  line in \`sources/api/src/entrypoints.ts\` binds it to its protocol. Without that line the
1222
1247
  endpoint answers 404 and nothing reports an error.
1248
+ - The wrap decides the handler's signature — match it exactly:
1249
+ \`api.body(p, (payload, ctx, request) => …)\` — the typed body first;
1250
+ \`api.params(p, (params, ctx, request) => …)\` — the typed route params first;
1251
+ \`api.request(p, (request, ctx) => …)\` — the whole request first.
1252
+ Only \`.request\` hands you the request as the FIRST argument. When you need to name its type,
1253
+ \`HandlerRequest\` comes from \`@owlmeans/entrypoint\` — \`@owlmeans/server-api\` does NOT export it.
1223
1254
  - Handlers are ENTITY-SCOPED: \`sources/api/src/app/<entity>/<action>.ts\`, named exports only.
1224
1255
  The directory is what keeps two entities' \`list\` apart — the file name carries no marker.
1225
1256
  `),
@@ -1 +1 @@
1
- {"version":3,"file":"catalogue.js","sourceRoot":"","sources":["../../src/skills/catalogue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalogue.js","sourceRoot":"","sources":["../../src/skills/catalogue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../src/skills/roles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD;;;;;;;GAOG;AACH,oBAAY,aAAa;IACvB,eAAe,qBAAqB;IACpC,aAAa,mBAAmB;IAChC,wFAAwF;IACxF,gBAAgB,sBAAsB;IACtC,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAElC,eAAe,qBAAqB;IACpC,kBAAkB,wBAAwB;IAC1C,cAAc,oBAAoB;IAClC,mBAAmB,yBAAyB;IAC5C,oBAAoB,2BAA2B;IAC/C,eAAe,qBAAqB;IACpC,YAAY,kBAAkB;IAC9B,kBAAkB,wBAAwB;IAC1C,sBAAsB,6BAA6B;IAEnD,WAAW,iBAAiB;IAC5B,YAAY,mBAAmB;IAC/B,WAAW,kBAAkB;IAC7B,UAAU,iBAAiB;IAC3B,cAAc,oBAAoB;IAClC,QAAQ,cAAc;IACtB,iBAAiB,wBAAwB;IACzC,qGAAqG;IACrG,gBAAgB,sBAAsB;IACtC,kFAAkF;IAClF,WAAW,iBAAiB;IAC5B,eAAe,sBAAsB;IAErC,KAAK,UAAU;IACf,YAAY,iBAAiB;IAC7B,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,QAAQ,cAAc;CACvB;AA6BD;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,CA6N/D,CAAA"}
1
+ {"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../src/skills/roles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD;;;;;;;GAOG;AACH,oBAAY,aAAa;IACvB,eAAe,qBAAqB;IACpC,aAAa,mBAAmB;IAChC,wFAAwF;IACxF,gBAAgB,sBAAsB;IACtC,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAElC,eAAe,qBAAqB;IACpC,kBAAkB,wBAAwB;IAC1C,cAAc,oBAAoB;IAClC,mBAAmB,yBAAyB;IAC5C,oBAAoB,2BAA2B;IAC/C,eAAe,qBAAqB;IACpC,YAAY,kBAAkB;IAC9B,kBAAkB,wBAAwB;IAC1C,sBAAsB,6BAA6B;IAEnD,WAAW,iBAAiB;IAC5B,YAAY,mBAAmB;IAC/B,WAAW,kBAAkB;IAC7B,UAAU,iBAAiB;IAC3B,cAAc,oBAAoB;IAClC,QAAQ,cAAc;IACtB,iBAAiB,wBAAwB;IACzC,qGAAqG;IACrG,gBAAgB,sBAAsB;IACtC,kFAAkF;IAClF,WAAW,iBAAiB;IAC5B,eAAe,sBAAsB;IAErC,KAAK,UAAU;IACf,YAAY,iBAAiB;IAC7B,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,QAAQ,cAAc;CACvB;AAqCD;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,CA6N/D,CAAA"}
@@ -49,11 +49,19 @@ and typescript.
49
49
  `.trim();
50
50
  /** The rules every coder and the fixer need, whatever they are writing. */
51
51
  const CODING_BASE = [ViableSkill.OutputSourceOnly, ViableSkill.TsStyle, ViableSkill.TsImports];
52
- /** The frontend stack, in the order a component is built up. */
52
+ /**
53
+ * The frontend stack, in the order a component is built up.
54
+ *
55
+ * `OwlmeansState` is here, not only on the state coder: the view models that READ the stores are
56
+ * written by the view and nav coders and repaired by the fixer, and none of them carried it —
57
+ * the traces show `useStoreList(...)` read as `.list` / `.items` / a plain `T[]` in 18 projects,
58
+ * the second most frequent repair the fixer made.
59
+ */
53
60
  const FRONTEND = [
54
61
  ViableSkill.ReactComponents, ViableSkill.OwlMeansEntrypoints, ViableSkill.OwlMeansNav,
55
62
  ViableSkill.OwlMeansServices, ViableSkill.ShadcnUi, ViableSkill.FormFeedback,
56
- ViableSkill.StoreAccess, ViableSkill.ViewModelNaming, ViableSkill.LibrariesUi,
63
+ ViableSkill.OwlmeansState, ViableSkill.StoreAccess, ViableSkill.ViewModelNaming,
64
+ ViableSkill.LibrariesUi,
57
65
  ];
58
66
  /** The backend stack. */
59
67
  const BACKEND = [
@@ -1 +1 @@
1
- {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../src/skills/roles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../src/skills/roles.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlmeans/viable-common",
3
- "version": "0.0.29",
3
+ "version": "0.0.31",
4
4
  "license": "MIT",
5
5
  "description": "Runtime-free contracts of the OwlMeans Viable platform — the analysis, design and metadata shapes of a generated project, its target-shape manifest, the slot command vocabulary, the connector protocol and the conversion vocabulary.",
6
6
  "type": "module",
@@ -59,13 +59,13 @@
59
59
  "typescript": "^7.0.2"
60
60
  },
61
61
  "dependencies": {
62
- "@owlmeans/agent-common": "^0.1.18-rc.36",
63
- "@owlmeans/entrypoint": "^0.1.18-rc.32",
64
- "@owlmeans/error": "^0.1.18-rc.31",
65
- "@owlmeans/llm-common": "^0.1.18-rc.32",
66
- "@owlmeans/planning": "^0.1.18-rc.5",
67
- "@owlmeans/resource": "^0.1.18-rc.31",
68
- "@owlmeans/route": "^0.1.18-rc.30"
62
+ "@owlmeans/agent-common": "^0.1.18-rc.38",
63
+ "@owlmeans/entrypoint": "^0.1.18-rc.34",
64
+ "@owlmeans/error": "^0.1.18-rc.33",
65
+ "@owlmeans/llm-common": "^0.1.18-rc.34",
66
+ "@owlmeans/planning": "^0.1.18-rc.7",
67
+ "@owlmeans/resource": "^0.1.18-rc.33",
68
+ "@owlmeans/route": "^0.1.18-rc.32"
69
69
  },
70
70
  "publishConfig": {
71
71
  "access": "public"
@@ -62,8 +62,8 @@ export interface BlueprintCaseDefinition {
62
62
  /** What every AI case installs. The langchain peers are declared here, at ONE range. */
63
63
  const AI_DEPS = {
64
64
  [SubProject.Backend]: {
65
- '@owlmeans/llm': '^0.1.18-rc.32',
66
- '@owlmeans/agent': '^0.1.18-rc.33',
65
+ '@owlmeans/llm': '^0.1.18-rc.35',
66
+ '@owlmeans/agent': '^0.1.18-rc.36',
67
67
  '@langchain/core': '^1.2.9',
68
68
  '@langchain/anthropic': '^1.5.8',
69
69
  '@langchain/openai': '^1.5.10',
@@ -261,7 +261,7 @@ in advance.
261
261
  deps: {
262
262
  [SubProject.Backend]: {
263
263
  ...AI_DEPS[SubProject.Backend],
264
- '@owlmeans/agent-skills': '^0.1.18-rc.32',
264
+ '@owlmeans/agent-skills': '^0.1.18-rc.35',
265
265
  },
266
266
  },
267
267
  libraries: AI_LIBRARIES,
@@ -245,6 +245,14 @@ in its own language, with no TypeScript syntax and no import statements it does
245
245
  skill(ViableSkill.TsImports, 'Imports and path aliases', `
246
246
  - Import shared code as \`project-common/<path>\`, never as \`sources/common/src/<path>\`,
247
247
  and never with a \`.js\` extension.
248
+ - From \`api\` and \`worker\`, reach the shared BACKEND library the same way — as the package, by
249
+ its path under \`src\`, with NO extension:
250
+ \`import { taskResource } from 'project-backend/resources/task/task'\`.
251
+ Both libraries publish \`"./*": "./build/*.js"\`, so \`project-backend/resources/task/task.js\`
252
+ looks for \`task.js.js\` and is \`TS2307: Cannot find module\`; \`project-backend/build/…\` doubles
253
+ the \`build/\`; and a relative \`../../resources/task/task.js\` stays inside YOUR package, where
254
+ no \`resources/\` exists. The \`.js\` suffix belongs ONLY to relative imports inside
255
+ \`sources/backend/\` (below) — never to a package specifier.
248
256
  - Inside a BUNDLED package — \`api\`, \`web\`, \`worker\` — \`@/\` is an alias for that package's own
249
257
  \`src\`; use it instead of chains of \`../\`.
250
258
  - **The shared backend library has NO \`@/\` alias.** It is built by \`tsc -b\`, not bundled, and
@@ -759,6 +767,11 @@ which records match, so a screen never recomputes ids and never re-subscribes.
759
767
  const open = useTaskList({ status: 'open' }) // StateModel<Task>[]
760
768
  open.map(model => model.record.title)
761
769
 
770
+ The hook returns the ARRAY itself — there is no \`.list\`, \`.items\`, \`.records\` or \`.data\` on
771
+ it, and each element is a MODEL, not a \`Task\`. Where plain records are wanted (a prop typed
772
+ \`Task[]\`, a filter, a count), map them out: \`open.map(model => model.record)\`.
773
+ An error saying \`StateModel<Task>[]\` is not assignable to \`Task[]\` means exactly that map is missing.
774
+
762
775
  \`useStoreModel(id)\` is one record — the model always exists so a screen has something to bind
763
776
  to, but nothing is invented to fill it. \`model.empty\` is what "not loaded yet" looks like:
764
777
 
@@ -934,13 +947,25 @@ file:
934
947
 
935
948
  pg: { references: { resource: 'other-alias' } }
936
949
 
950
+ The referencing property has EXACTLY the type and format of the referenced resource's \`id\`. An
951
+ \`id\` declared \`{ type: 'string', format: 'uuid' }\` is a \`uuid\` column, and an \`id\` left
952
+ undeclared is \`text\` — so copy the referenced \`id\`'s declaration onto the reference:
953
+
954
+ bakeId: { type: 'string', format: 'uuid', pg: { references: { resource: 'bake' } } }
955
+
956
+ A plain \`{ type: 'string' }\` pointing at a \`uuid\` id compiles, and then the backend refuses to
957
+ start: \`42804 foreign key constraint … cannot be implemented — Key columns are of incompatible
958
+ types\`.
959
+
937
960
  If the referenced resource does not exist, use a plain string property instead.
938
961
  `),
939
962
 
940
963
  skill(ViableSkill.ResourceResults, 'How resource methods are called, and what they return', `
941
- Reach data through the accessor from \`@/resources/{entity}/{type}.js\` and call the
942
- resource's own methods. Never write raw SQL in a route handler, never import a database
943
- connection, and never construct a resource yourself.
964
+ Reach data through the resource's accessor and call the resource's own methods. Resources live
965
+ in the shared backend library: from \`api\` and \`worker\` import the accessor as
966
+ \`project-backend/resources/{entity}/{type}\` (no \`.js\`); inside \`sources/backend/\` import it
967
+ relatively, with \`.js\` (\`../../resources/{entity}/{type}.js\`). Never write raw SQL in a route
968
+ handler, never import a database connection, and never construct a resource yourself.
944
969
 
945
970
  A WRITE takes ONE argument — the record — and the id travels INSIDE it. There is no
946
971
  \`(id, changes)\` overload on any of them:
@@ -1257,6 +1282,12 @@ package, and every request to the route then fails with \`TypeError: handler is
1257
1282
  - A handler is inert until the \`bind(protocols.api.<name>, api.body/params/request(protocols.api.<name>, handler))\`
1258
1283
  line in \`sources/api/src/entrypoints.ts\` binds it to its protocol. Without that line the
1259
1284
  endpoint answers 404 and nothing reports an error.
1285
+ - The wrap decides the handler's signature — match it exactly:
1286
+ \`api.body(p, (payload, ctx, request) => …)\` — the typed body first;
1287
+ \`api.params(p, (params, ctx, request) => …)\` — the typed route params first;
1288
+ \`api.request(p, (request, ctx) => …)\` — the whole request first.
1289
+ Only \`.request\` hands you the request as the FIRST argument. When you need to name its type,
1290
+ \`HandlerRequest\` comes from \`@owlmeans/entrypoint\` — \`@owlmeans/server-api\` does NOT export it.
1260
1291
  - Handlers are ENTITY-SCOPED: \`sources/api/src/app/<entity>/<action>.ts\`, named exports only.
1261
1292
  The directory is what keeps two entities' \`list\` apart — the file name carries no marker.
1262
1293
  `),
@@ -56,11 +56,19 @@ and typescript.
56
56
  /** The rules every coder and the fixer need, whatever they are writing. */
57
57
  const CODING_BASE = [ViableSkill.OutputSourceOnly, ViableSkill.TsStyle, ViableSkill.TsImports]
58
58
 
59
- /** The frontend stack, in the order a component is built up. */
59
+ /**
60
+ * The frontend stack, in the order a component is built up.
61
+ *
62
+ * `OwlmeansState` is here, not only on the state coder: the view models that READ the stores are
63
+ * written by the view and nav coders and repaired by the fixer, and none of them carried it —
64
+ * the traces show `useStoreList(...)` read as `.list` / `.items` / a plain `T[]` in 18 projects,
65
+ * the second most frequent repair the fixer made.
66
+ */
60
67
  const FRONTEND = [
61
68
  ViableSkill.ReactComponents, ViableSkill.OwlMeansEntrypoints, ViableSkill.OwlMeansNav,
62
69
  ViableSkill.OwlMeansServices, ViableSkill.ShadcnUi, ViableSkill.FormFeedback,
63
- ViableSkill.StoreAccess, ViableSkill.ViewModelNaming, ViableSkill.LibrariesUi,
70
+ ViableSkill.OwlmeansState, ViableSkill.StoreAccess, ViableSkill.ViewModelNaming,
71
+ ViableSkill.LibrariesUi,
64
72
  ]
65
73
 
66
74
  /** The backend stack. */