@jskit-ai/agent-docs 0.1.242 → 0.1.244

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 (128) hide show
  1. package/guide/agent/app-extras/assistant-conversation.md +4 -2
  2. package/guide/agent/app-extras/assistant.md +3 -1
  3. package/guide/agent/app-extras/realtime.md +12 -3
  4. package/guide/agent/app-setup/database-layer.md +1 -1
  5. package/guide/agent/app-setup/existing-application-migration.md +0 -7
  6. package/guide/agent/framework/application-operations.md +1 -1
  7. package/guide/agent/framework/crud-operations.md +9 -9
  8. package/guide/agent/index.md +2 -0
  9. package/package.json +2 -3
  10. package/patterns/feature-package/example/booking-engine/package.json +1 -1
  11. package/patterns/feature-package/example/booking-engine/src/server/actions.js +0 -2
  12. package/patterns/feature-package/example/variations/AvailabilityEngineProvider.js +1 -1
  13. package/patterns/feature-package/example/variations/InvoiceRollupProvider.js +1 -1
  14. package/patterns/minimal-foundation/example/AGENTS.md +19 -0
  15. package/patterns/minimal-foundation/example/package.json +3 -3
  16. package/patterns/minimal-foundation/example/server/lib/runtimeEnv.js +3 -11
  17. package/patterns/minimal-foundation/example/src/main.js +0 -2
  18. package/patterns/shell-foundation/PATTERN.md +11 -20
  19. package/patterns/shell-foundation/example/AGENTS.md +19 -0
  20. package/patterns/shell-foundation/example/package.json +4 -4
  21. package/patterns/shell-foundation/example/packages/main/package.json +1 -1
  22. package/patterns/shell-foundation/example/server/lib/runtimeEnv.js +3 -11
  23. package/patterns/shell-foundation/example/src/components/ShellLayout.vue +1 -0
  24. package/patterns/shell-foundation/example/src/main.js +0 -2
  25. package/patterns/shell-foundation/example/src/pages/home/settings.vue +2 -2
  26. package/reference/autogen/KERNEL_MAP.md +16 -147
  27. package/reference/autogen/PATTERN_INDEX.md +37 -37
  28. package/reference/autogen/packages/agent-docs.md +1 -9
  29. package/reference/autogen/packages/assistant-core.md +102 -68
  30. package/reference/autogen/packages/assistant-runtime.md +29 -15
  31. package/reference/autogen/packages/assistant-voice-sherpa.md +2 -1
  32. package/reference/autogen/packages/assistant-voice.md +8 -11
  33. package/reference/autogen/packages/auth-core.md +1 -1
  34. package/reference/autogen/packages/auth-provider-local-core.md +1 -1
  35. package/reference/autogen/packages/auth-provider-local-db-core.md +1 -1
  36. package/reference/autogen/packages/auth-provider-oidc-core.md +1 -1
  37. package/reference/autogen/packages/auth-provider-supabase-core.md +1 -1
  38. package/reference/autogen/packages/auth-web.md +1 -2
  39. package/reference/autogen/packages/connector-google-calendar.md +6 -2
  40. package/reference/autogen/packages/connectors-catalog.md +26 -7
  41. package/reference/autogen/packages/connectors-core.md +14 -3
  42. package/reference/autogen/packages/connectors-web.md +6 -1
  43. package/reference/autogen/packages/console-core.md +1 -1
  44. package/reference/autogen/packages/console-web.md +1 -1
  45. package/reference/autogen/packages/crud-core.md +1 -1
  46. package/reference/autogen/packages/database-runtime-mysql.md +1 -1
  47. package/reference/autogen/packages/database-runtime-postgres.md +1 -1
  48. package/reference/autogen/packages/database-runtime.md +2 -86
  49. package/reference/autogen/packages/http-runtime.md +6 -92
  50. package/reference/autogen/packages/http-web.md +29 -49
  51. package/reference/autogen/packages/json-rest-api-core.md +1 -1
  52. package/reference/autogen/packages/kernel.md +108 -405
  53. package/reference/autogen/packages/mobile-capacitor.md +11 -1
  54. package/reference/autogen/packages/oidc-issuer-core.md +1 -1
  55. package/reference/autogen/packages/payments-core.md +12 -4
  56. package/reference/autogen/packages/payments-web.md +1 -1
  57. package/reference/autogen/packages/realtime.md +7 -5
  58. package/reference/autogen/packages/resource-core.md +1 -4
  59. package/reference/autogen/packages/resource-crud-core.md +4 -3
  60. package/reference/autogen/packages/rewarded-core.md +1 -1
  61. package/reference/autogen/packages/rewarded-web.md +1 -1
  62. package/reference/autogen/packages/shell-web.md +114 -49
  63. package/reference/autogen/packages/storage-runtime.md +1 -1
  64. package/reference/autogen/packages/uploads-image-web.md +1 -1
  65. package/reference/autogen/packages/uploads-runtime.md +1 -1
  66. package/reference/autogen/packages/users-core.md +1 -1
  67. package/reference/autogen/packages/users-web.md +1 -2
  68. package/reference/autogen/packages/workspaces-core.md +3 -1
  69. package/reference/autogen/packages/workspaces-web.md +1 -1
  70. package/reference/autogen/tooling/config-eslint.md +1 -1
  71. package/reference/autogen/tooling/jskit-catalog.md +8 -9
  72. package/reference/autogen/tooling/jskit-release.md +3 -4
  73. package/reference/autogen/tooling/testUtils.md +1 -28
  74. package/skills/jskit/SKILL.md +8 -6
  75. package/skills/jskit/references/app-operations.md +1 -1
  76. package/skills/jskit/references/crud-form-actions.md +62 -0
  77. package/skills/jskit/references/crud-operations.md +9 -9
  78. package/skills/jskit/references/existing-application-migration.md +0 -7
  79. package/{patterns → skills/jskit/references/heuristics}/INDEX.md +24 -38
  80. package/{patterns → skills/jskit/references/heuristics}/child-cruds.md +2 -0
  81. package/{patterns → skills/jskit/references/heuristics}/client-requests.md +2 -0
  82. package/{patterns → skills/jskit/references/heuristics}/crud-authoring.md +2 -0
  83. package/{patterns → skills/jskit/references/heuristics}/crud-links.md +2 -0
  84. package/{patterns → skills/jskit/references/heuristics}/crud-repository-mapping.md +3 -1
  85. package/{patterns → skills/jskit/references/heuristics}/filters.md +3 -1
  86. package/{patterns → skills/jskit/references/heuristics}/live-actions.md +2 -0
  87. package/{patterns → skills/jskit/references/heuristics}/page-redirects.md +2 -0
  88. package/{patterns → skills/jskit/references/heuristics}/page-scaffolding.md +5 -3
  89. package/{patterns → skills/jskit/references/heuristics}/placements.md +2 -0
  90. package/{patterns → skills/jskit/references/heuristics}/row-policies.md +2 -0
  91. package/{patterns → skills/jskit/references/heuristics}/server-search.md +2 -0
  92. package/{patterns → skills/jskit/references/heuristics}/surfaces.md +5 -3
  93. package/{patterns → skills/jskit/references/heuristics}/ui-contract.md +3 -1
  94. package/{patterns → skills/jskit/references/heuristics}/ui-testing.md +2 -0
  95. package/skills/jskit/references/pattern-index.md +37 -37
  96. package/skills/jskit/references/patterns/app/minimal-foundation/example/AGENTS.md +19 -0
  97. package/skills/jskit/references/patterns/app/minimal-foundation/example/package.json +3 -3
  98. package/skills/jskit/references/patterns/app/minimal-foundation/example/server/lib/runtimeEnv.js +3 -11
  99. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/main.js +0 -2
  100. package/skills/jskit/references/patterns/app/shell-foundation/PATTERN.md +11 -20
  101. package/skills/jskit/references/patterns/app/shell-foundation/example/AGENTS.md +19 -0
  102. package/skills/jskit/references/patterns/app/shell-foundation/example/package.json +4 -4
  103. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/package.json +1 -1
  104. package/skills/jskit/references/patterns/app/shell-foundation/example/server/lib/runtimeEnv.js +3 -11
  105. package/skills/jskit/references/patterns/app/shell-foundation/example/src/components/ShellLayout.vue +1 -0
  106. package/skills/jskit/references/patterns/app/shell-foundation/example/src/main.js +0 -2
  107. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home/settings.vue +2 -2
  108. package/skills/jskit/references/patterns/auth/accounts-hub/example/package.json +2 -2
  109. package/skills/jskit/references/patterns/auth/oidc-sign-in/example/package.json +2 -2
  110. package/skills/jskit/references/patterns/auth/supabase-auth/example/package.json +1 -1
  111. package/skills/jskit/references/patterns/connectors/calendar-cli/example/package.json +4 -4
  112. package/skills/jskit/references/patterns/connectors/oauth-connection/PATTERN.md +27 -610
  113. package/skills/jskit/references/patterns/connectors/paddle-catalogue/example/create-products.js +2 -1
  114. package/skills/jskit/references/patterns/connectors/redshift-queries/PATTERN.md +1 -1
  115. package/skills/jskit/references/patterns/crud/crud-screen-set/PATTERN.md +11 -1
  116. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/package.json +2 -2
  117. package/skills/jskit/references/patterns/database/mysql-application/example/package.json +1 -1
  118. package/skills/jskit/references/patterns/database/postgres-application/example/package.json +1 -1
  119. package/skills/jskit/references/patterns/realtime/realtime-application/example/package.json +2 -2
  120. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/package.json +1 -1
  121. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/src/server/actions.js +0 -2
  122. package/skills/jskit/references/patterns/server/feature-package/example/variations/AvailabilityEngineProvider.js +1 -1
  123. package/skills/jskit/references/patterns/server/feature-package/example/variations/InvoiceRollupProvider.js +1 -1
  124. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home/index.vue +15 -5
  125. package/skills/jskit/references/patterns/shell/application-shell/example/tests/e2e/adaptive-shell.spec.ts +1 -1
  126. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/package.json +2 -2
  127. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/package.json +3 -3
  128. package/templates/app/AGENTS.md +0 -38
@@ -42,7 +42,7 @@ invoking the service. Matching the configured warehouse is only a target check.
42
42
  The library does not resolve ambient AWS profiles or switch to a more privileged
43
43
  account after a denial. The application resolves its own credential bindings; editable references do
44
44
  not grant AWS permissions. This shared credential mode has no provider callback
45
- URL and does not depend on an Online registration or allocation.
45
+ URL and does not depend on a hosting platform's registration or allocation.
46
46
 
47
47
  ## Framework APIs
48
48
 
@@ -76,9 +76,19 @@ id (or a distinct new-record marker) so form cache entries stay separate.
76
76
  The New/Edit examples supply it; list/view screen wrappers derive their
77
77
  standard keys from `resourceNamespace`.
78
78
 
79
+ Each form fact has one input. `resource`, `input`, `buildPayload`,
80
+ `mapPayloadToModel` and `createModel` are top-level `useCrudAddEditScreen()`
81
+ options; `addEditOptions` carries only request and route options for
82
+ `useAddEdit()` (such as `apiSuffix`, `queryKeyFactory`, `readEnabled`,
83
+ `writeMethod`, URL templates, permissions, `client`, `transport` and
84
+ `onSaveSuccess`) and rejects anything else. The save-error message is
85
+ `addEditOptions.fallbackSaveError` when given, otherwise the resource's
86
+ `messages.saveError`; the request error and its toast use the same string.
87
+
79
88
  Save navigation is configured in the top-level `saveSuccess` object. The default
80
89
  prefers a configured record-view URL, then the list. A create-and-list variation
81
- sets `navigateToView: false` and `listUrlTemplate` to its list route. Set both
90
+ sets `navigateToView: false` and `saveSuccess.listUrlTemplate` to its list
91
+ route; `addEditOptions.listUrlTemplate` does not drive save navigation. Set both
82
92
  `navigateToView` and `navigateToList` to `false` to stay on the form. A custom
83
93
  `addEditOptions.onSaveSuccess` replaces default invalidation and navigation;
84
94
  it is unnecessary for ordinary list navigation. The generic CRUD guide explains
@@ -8,8 +8,8 @@
8
8
  "./shared": "./src/shared/index.js"
9
9
  },
10
10
  "dependencies": {
11
- "@jskit-ai/crud-core": "0.1.256",
12
- "@jskit-ai/resource-crud-core": "0.1.187"
11
+ "@jskit-ai/crud-core": "0.1.257",
12
+ "@jskit-ai/resource-crud-core": "0.1.188"
13
13
  },
14
14
  "jskit": {
15
15
  "kind": "runtime",
@@ -8,6 +8,6 @@
8
8
  "db:migrate:status": "knex --knexfile ./knexfile.js migrate:list"
9
9
  },
10
10
  "dependencies": {
11
- "@jskit-ai/database-runtime-mysql": "0.1.243"
11
+ "@jskit-ai/database-runtime-mysql": "0.1.244"
12
12
  }
13
13
  }
@@ -8,6 +8,6 @@
8
8
  "db:migrate:status": "knex --knexfile ./knexfile.js migrate:list"
9
9
  },
10
10
  "dependencies": {
11
- "@jskit-ai/database-runtime-postgres": "0.1.242"
11
+ "@jskit-ai/database-runtime-postgres": "0.1.243"
12
12
  }
13
13
  }
@@ -2,7 +2,7 @@
2
2
  "private": true,
3
3
  "type": "module",
4
4
  "dependencies": {
5
- "@jskit-ai/realtime": "0.1.244",
6
- "@jskit-ai/shell-web": "0.1.251"
5
+ "@jskit-ai/realtime": "0.1.245",
6
+ "@jskit-ai/shell-web": "0.1.252"
7
7
  }
8
8
  }
@@ -5,7 +5,7 @@
5
5
  "private": true,
6
6
  "type": "module",
7
7
  "dependencies": {
8
- "@jskit-ai/kernel": "0.1.245",
8
+ "@jskit-ai/kernel": "0.1.246",
9
9
  "json-rest-schema": "^1.0.17"
10
10
  },
11
11
  "exports": {
@@ -14,8 +14,6 @@ function createActions({ bookingEngine } = {}) {
14
14
  input: statusQueryInputValidator,
15
15
  output: null,
16
16
  idempotency: "none",
17
- audit: { actionName: ACTION_GET_STATUS },
18
- observability: {},
19
17
  async execute(input) {
20
18
  return bookingEngine.readStatus(input);
21
19
  }
@@ -1,5 +1,5 @@
1
1
  import { defineFeature } from "@jskit-ai/kernel/server/features";
2
- import { emptyInputValidator } from "@jskit-ai/kernel/shared/actions/actionContributorHelpers";
2
+ import { emptyInputValidator } from "@jskit-ai/kernel/server/actions/actionContributorHelpers";
3
3
  import { createService } from "./orchestratorService.js";
4
4
 
5
5
  const AvailabilityEngineProvider = defineFeature({
@@ -1,5 +1,5 @@
1
1
  import { defineFeature } from "@jskit-ai/kernel/server/features";
2
- import { emptyInputValidator } from "@jskit-ai/kernel/shared/actions/actionContributorHelpers";
2
+ import { emptyInputValidator } from "@jskit-ai/kernel/server/actions/actionContributorHelpers";
3
3
  import { createRepository } from "./repository.js";
4
4
 
5
5
  const InvoiceRollupProvider = defineFeature({
@@ -15,16 +15,16 @@ const healthQuery = useQuery({
15
15
  });
16
16
 
17
17
  const health = computed(() => {
18
- if (healthQuery.isPending.value || healthQuery.isFetching.value) {
19
- return "loading...";
20
- }
21
-
22
18
  if (healthQuery.error.value) {
23
19
  return "unreachable";
24
20
  }
25
21
 
26
22
  return healthQuery.data.value?.ok ? "ok" : "unhealthy";
27
23
  });
24
+
25
+ const healthPending = computed(
26
+ () => healthQuery.isPending.value || healthQuery.isFetching.value
27
+ );
28
28
  </script>
29
29
 
30
30
  <template>
@@ -36,7 +36,13 @@ const health = computed(() => {
36
36
  <v-sheet rounded="lg" border class="home-surface-screen__panel">
37
37
  <div class="home-surface-screen__status">
38
38
  <span class="text-caption text-medium-emphasis">Service health</span>
39
- <strong>{{ health }}</strong>
39
+ <v-skeleton-loader
40
+ v-if="healthPending"
41
+ aria-label="Loading service health"
42
+ class="home-surface-screen__health-skeleton"
43
+ type="text"
44
+ />
45
+ <strong v-else>{{ health }}</strong>
40
46
  </div>
41
47
  <v-divider vertical class="d-none d-sm-block" />
42
48
  <div class="home-surface-screen__status">
@@ -71,6 +77,10 @@ const health = computed(() => {
71
77
  min-width: 9rem;
72
78
  }
73
79
 
80
+ .home-surface-screen__health-skeleton {
81
+ max-width: 5rem;
82
+ }
83
+
74
84
  @media (max-width: 640px) {
75
85
  .home-surface-screen__actions :deep(.v-btn) {
76
86
  min-height: 48px;
@@ -1,7 +1,7 @@
1
1
  import { expect, test } from "@playwright/test";
2
2
  import { DEFAULT_VIEWPORTS, runAdaptiveShellSmokeCase } from "@jskit-ai/shell-web/test/adaptiveShellSmoke";
3
3
 
4
- test.describe("generated adaptive shell smoke", () => {
4
+ test.describe("adaptive shell smoke", () => {
5
5
  for (const viewport of DEFAULT_VIEWPORTS) {
6
6
  test(`${viewport.name} layout has reachable navigation and no horizontal overflow`, async ({ page }) => {
7
7
  await runAdaptiveShellSmokeCase({ page, expect, viewport });
@@ -9,8 +9,8 @@
9
9
  "./shared": "./src/shared/index.js"
10
10
  },
11
11
  "dependencies": {
12
- "@jskit-ai/crud-core": "0.1.256",
13
- "@jskit-ai/resource-crud-core": "0.1.187"
12
+ "@jskit-ai/crud-core": "0.1.257",
13
+ "@jskit-ai/resource-crud-core": "0.1.188"
14
14
  },
15
15
  "jskit": {
16
16
  "kind": "runtime",
@@ -9,9 +9,9 @@
9
9
  "./shared": "./src/shared/index.js"
10
10
  },
11
11
  "dependencies": {
12
- "@jskit-ai/crud-core": "0.1.256",
13
- "@jskit-ai/resource-crud-core": "0.1.187",
14
- "@jskit-ai/workspaces-core": "0.1.223"
12
+ "@jskit-ai/crud-core": "0.1.257",
13
+ "@jskit-ai/resource-crud-core": "0.1.188",
14
+ "@jskit-ai/workspaces-core": "0.1.224"
15
15
  },
16
16
  "jskit": {
17
17
  "kind": "runtime",
@@ -1,38 +0,0 @@
1
- # App Agent Instructions
2
-
3
- Use current project context, JSKIT public APIs, and the official framework
4
- documentation as the source of truth for application work.
5
-
6
- Framework references:
7
-
8
- - `https://mobily-enterprises.github.io/jskit-ai/guide/`
9
- - `https://mobily-enterprises.github.io/jskit-ai/patterns/`
10
-
11
- Before implementation, read the narrow relevant source pattern completely. If
12
- its owner package is installed, prefer that version-matched package-owned copy.
13
- Do not install an unrelated runtime package only to read documentation.
14
-
15
- Before adding or changing browser-test setup, read `patterns/ui-testing.md` in
16
- this package. Routine tests reuse the isolated schema and prepare fixtures once
17
- per suite invocation. Keep `BROWSER_TEST_DB_NAME` distinct from disposable
18
- `TEST_DB_NAME` and prove that disposable cleanup preserves browser migrations.
19
- Require repeat-start regression proof; do not rebuild the
20
- database or production frontend for each focused browser check.
21
-
22
- Keep verification output small. Run the relevant cases together, save complete
23
- stdout/stderr to local artifacts, and preserve the exit status. Report counts,
24
- duration, failed case names and artifact paths; read only actionable failure
25
- excerpts. Do not dump full JSON/TAP reports, passing assertions, request logs or
26
- traces into agent context. Wait on the existing run instead of restarting it or
27
- repeatedly printing unchanged output. Keep startup and cleanup errors visible.
28
- For browser evidence, use existing automated cases, targeted locators and
29
- meaningful visual checkpoints. Avoid a full DOM snapshot or screenshot after
30
- every action; retain the required viewport, identity and security checks.
31
-
32
- Pages never start with a page header, title block, welcome heading, or other
33
- standalone heading copy. Start with the useful content and actions. If the user
34
- wants a heading, they will ask for or add one.
35
-
36
- Copied pattern source is ordinary application source. Do not add generator
37
- provenance, receipts, completion ledgers, or tooling-operation history. Keep
38
- changes scoped to the user request and verify runtime behavior directly.