@jskit-ai/agent-docs 0.1.306 → 0.1.307

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 (36) hide show
  1. package/guide/agent/app-setup/multi-homing.md +6 -3
  2. package/guide/agent/framework/data-access.md +98 -5
  3. package/guide/agent/framework/material-3.md +8 -2
  4. package/guide/agent/framework/typed-features.md +8 -0
  5. package/package.json +1 -1
  6. package/patterns/feature-package/example/booking-engine/package.json +1 -1
  7. package/patterns/minimal-foundation/example/package.json +4 -4
  8. package/patterns/shell-foundation/example/package.json +5 -5
  9. package/patterns/shell-foundation/example/packages/main/package.json +1 -1
  10. package/reference/autogen/PATTERN_INDEX.md +38 -38
  11. package/reference/autogen/packages/http-web.md +1 -1
  12. package/reference/autogen/packages/kernel.md +1 -0
  13. package/reference/autogen/packages/resource-runtime.md +3 -1
  14. package/reference/autogen/packages/shell-web.md +7 -0
  15. package/reference/autogen/tooling/config-eslint.md +2 -0
  16. package/reference/autogen/tooling/jskit-catalog.md +1 -0
  17. package/skills/jskit/references/data-access.md +98 -5
  18. package/skills/jskit/references/heuristics/live-actions.md +3 -0
  19. package/skills/jskit/references/material-3.md +8 -2
  20. package/skills/jskit/references/multi-homing.md +6 -3
  21. package/skills/jskit/references/pattern-index.md +38 -38
  22. package/skills/jskit/references/patterns/app/minimal-foundation/example/package.json +4 -4
  23. package/skills/jskit/references/patterns/app/shell-foundation/example/package.json +5 -5
  24. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/package.json +1 -1
  25. package/skills/jskit/references/patterns/auth/accounts-hub/example/package.json +3 -3
  26. package/skills/jskit/references/patterns/auth/oidc-sign-in/example/package.json +2 -2
  27. package/skills/jskit/references/patterns/auth/supabase-auth/example/package.json +1 -1
  28. package/skills/jskit/references/patterns/connectors/calendar-cli/example/package.json +4 -4
  29. package/skills/jskit/references/patterns/crud/crud-feature-package/example/packages/books/package.json +3 -3
  30. package/skills/jskit/references/patterns/database/mysql-application/example/package.json +2 -2
  31. package/skills/jskit/references/patterns/database/postgres-application/example/package.json +2 -2
  32. package/skills/jskit/references/patterns/realtime/realtime-application/example/package.json +2 -2
  33. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/package.json +1 -1
  34. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/package.json +3 -3
  35. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/package.json +6 -6
  36. package/skills/jskit/references/typed-features.md +8 -0
@@ -9,7 +9,7 @@
9
9
  },
10
10
  "description": "App-local runtime composition and lightweight glue.",
11
11
  "dependencies": {
12
- "@jskit-ai/kernel": "0.2.20"
12
+ "@jskit-ai/kernel": "0.2.21"
13
13
  },
14
14
  "jskit": {
15
15
  "kind": "runtime",
@@ -2,8 +2,8 @@
2
2
  "private": true,
3
3
  "type": "module",
4
4
  "dependencies": {
5
- "@jskit-ai/database-runtime": "0.1.269",
6
- "@jskit-ai/database-runtime-mysql": "0.1.267",
7
- "@jskit-ai/oidc-issuer-core": "0.1.29"
5
+ "@jskit-ai/database-runtime": "0.1.270",
6
+ "@jskit-ai/database-runtime-mysql": "0.1.268",
7
+ "@jskit-ai/oidc-issuer-core": "0.1.30"
8
8
  }
9
9
  }
@@ -2,7 +2,7 @@
2
2
  "private": true,
3
3
  "type": "module",
4
4
  "dependencies": {
5
- "@jskit-ai/auth-provider-oidc-core": "0.2.31",
6
- "@jskit-ai/auth-web": "0.2.29"
5
+ "@jskit-ai/auth-provider-oidc-core": "0.2.32",
6
+ "@jskit-ai/auth-web": "0.2.30"
7
7
  }
8
8
  }
@@ -2,6 +2,6 @@
2
2
  "private": true,
3
3
  "type": "module",
4
4
  "dependencies": {
5
- "@jskit-ai/auth-provider-supabase-core": "0.2.23"
5
+ "@jskit-ai/auth-provider-supabase-core": "0.2.24"
6
6
  }
7
7
  }
@@ -7,10 +7,10 @@
7
7
  "db:migrate:status": "knex --knexfile ./knexfile.js migrate:list"
8
8
  },
9
9
  "dependencies": {
10
- "@jskit-ai/connectors-core": "0.2.28",
11
- "@jskit-ai/connector-google-calendar": "0.2.28",
12
- "@jskit-ai/database-runtime": "0.1.269",
13
- "@jskit-ai/database-runtime-mysql": "0.1.267",
10
+ "@jskit-ai/connectors-core": "0.2.29",
11
+ "@jskit-ai/connector-google-calendar": "0.2.29",
12
+ "@jskit-ai/database-runtime": "0.1.270",
13
+ "@jskit-ai/database-runtime-mysql": "0.1.268",
14
14
  "knex": "^3.1.0"
15
15
  }
16
16
  }
@@ -9,9 +9,9 @@
9
9
  "./shared": "./src/shared/index.js"
10
10
  },
11
11
  "dependencies": {
12
- "@jskit-ai/crud-core": "0.2.28",
13
- "@jskit-ai/resource-core": "0.1.211",
14
- "@jskit-ai/resource-crud-core": "0.1.213"
12
+ "@jskit-ai/crud-core": "0.2.29",
13
+ "@jskit-ai/resource-core": "0.1.212",
14
+ "@jskit-ai/resource-crud-core": "0.1.214"
15
15
  },
16
16
  "jskit": {
17
17
  "kind": "runtime",
@@ -9,7 +9,7 @@
9
9
  "test": "jskit test --databases"
10
10
  },
11
11
  "dependencies": {
12
- "@jskit-ai/database-runtime": "0.1.269",
13
- "@jskit-ai/database-runtime-mysql": "0.1.267"
12
+ "@jskit-ai/database-runtime": "0.1.270",
13
+ "@jskit-ai/database-runtime-mysql": "0.1.268"
14
14
  }
15
15
  }
@@ -9,7 +9,7 @@
9
9
  "test": "jskit test --databases"
10
10
  },
11
11
  "dependencies": {
12
- "@jskit-ai/database-runtime": "0.1.269",
13
- "@jskit-ai/database-runtime-postgres": "0.1.266"
12
+ "@jskit-ai/database-runtime": "0.1.270",
13
+ "@jskit-ai/database-runtime-postgres": "0.1.267"
14
14
  }
15
15
  }
@@ -2,7 +2,7 @@
2
2
  "private": true,
3
3
  "type": "module",
4
4
  "dependencies": {
5
- "@jskit-ai/realtime": "0.2.30",
6
- "@jskit-ai/shell-web": "0.2.27"
5
+ "@jskit-ai/realtime": "0.2.31",
6
+ "@jskit-ai/shell-web": "0.2.28"
7
7
  }
8
8
  }
@@ -5,7 +5,7 @@
5
5
  "private": true,
6
6
  "type": "module",
7
7
  "dependencies": {
8
- "@jskit-ai/kernel": "0.2.20",
8
+ "@jskit-ai/kernel": "0.2.21",
9
9
  "json-rest-schema": "^1.0.20"
10
10
  },
11
11
  "exports": {
@@ -10,9 +10,9 @@
10
10
  "./shared": "./src/shared/index.js"
11
11
  },
12
12
  "dependencies": {
13
- "@jskit-ai/crud-core": "0.2.28",
14
- "@jskit-ai/resource-crud-core": "0.1.213",
15
- "@jskit-ai/users-core": "0.2.31"
13
+ "@jskit-ai/crud-core": "0.2.29",
14
+ "@jskit-ai/resource-crud-core": "0.1.214",
15
+ "@jskit-ai/users-core": "0.2.32"
16
16
  },
17
17
  "jskit": {
18
18
  "kind": "runtime",
@@ -10,14 +10,14 @@
10
10
  "./shared": "./src/shared/index.js"
11
11
  },
12
12
  "dependencies": {
13
- "@jskit-ai/crud-core": "0.2.28",
14
- "@jskit-ai/resource-crud-core": "0.1.213",
15
- "@jskit-ai/users-core": "0.2.31",
16
- "@jskit-ai/workspaces-core": "0.2.31"
13
+ "@jskit-ai/crud-core": "0.2.29",
14
+ "@jskit-ai/resource-crud-core": "0.1.214",
15
+ "@jskit-ai/users-core": "0.2.32",
16
+ "@jskit-ai/workspaces-core": "0.2.32"
17
17
  },
18
18
  "peerDependencies": {
19
- "@jskit-ai/kernel": "0.2.20",
20
- "@jskit-ai/resource-runtime": "0.2.25"
19
+ "@jskit-ai/kernel": "0.2.21",
20
+ "@jskit-ai/resource-runtime": "0.2.26"
21
21
  },
22
22
  "jskit": {
23
23
  "kind": "runtime",
@@ -819,6 +819,14 @@ for anything that reads or writes the domain.**
819
819
  address and refuses with 429, `kernel.http.rateLimited` and `Retry-After`.
820
820
  A limit worth changing per application is read from its config, as
821
821
  `config.auth.rateLimits` is.
822
+ - A route's `body` is validated by the kernel, on every method, DELETE
823
+ included. A request without a body is validated as an empty one: a body
824
+ validated in `create` or `replace` mode answers 400 `validation_failed`
825
+ naming its required fields, and one in the default `patch` mode, or with no
826
+ required fields, reaches the handler as `{}`. A body that is not a JSON
827
+ object answers 400 with the field error `request: "must be object"`. On the
828
+ client, a `useCommand()` DELETE sends its parsed input as the body when the
829
+ command declares `input` or `buildRawPayload`.
822
830
 
823
831
  Why: an action is the one place a domain operation's policy, input and
824
832
  events are declared.