@stacksjs/defaults 0.75.86 → 0.75.87
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.
|
@@ -69,7 +69,8 @@ const result = await bedrock.chat([{ role: 'user', content: 'Hello' }], { system
|
|
|
69
69
|
```
|
|
70
70
|
|
|
71
71
|
- Every request goes through Bedrock's Converse API, so one shape serves Nova,
|
|
72
|
-
Claude and Llama; the model is configuration.
|
|
72
|
+
Claude and Llama; the model is configuration. `bedrock.streamChat()` and
|
|
73
|
+
`streamChatEvents()` stream through `converse-stream` (ts-cloud >= 0.16.44).
|
|
73
74
|
- Credentials come from the AWS credential chain, never config. Region:
|
|
74
75
|
`drivers.bedrock.region`, `AWS_REGION`, `AWS_DEFAULT_REGION`, us-east-1.
|
|
75
76
|
- Default model `amazon.nova-lite-v1:0`: on demand, no profile, no agreement.
|
|
@@ -96,7 +97,11 @@ messages.push(assistantTurn(result), toolResultsTurn(
|
|
|
96
97
|
- The `responseFormat` structured-output tool is internal: its JSON is
|
|
97
98
|
`content`, never a tool call.
|
|
98
99
|
- Ollama refuses `toolChoice: 'required'` / `{ name }`; it cannot force a call.
|
|
99
|
-
- `streamChat()`
|
|
100
|
+
- Streaming takes the same `tools`. `streamChat()` yields text and returns the
|
|
101
|
+
full `AIResult` (with `toolCalls`) when it ends; `streamChatEvents()` yields
|
|
102
|
+
`{ type: 'text' }`, `{ type: 'tool_call', call }` (whole, once its arguments
|
|
103
|
+
have streamed) and a final `{ type: 'done', result }`. Every driver,
|
|
104
|
+
Bedrock included.
|
|
100
105
|
|
|
101
106
|
## Provider-Neutral Client
|
|
102
107
|
|
|
@@ -799,6 +799,12 @@ Models with `traits.useApi` automatically get CRUD routes via ORM actions:
|
|
|
799
799
|
| PUT/PATCH | `/api/{model}/{id}` | Generated update | 200 |
|
|
800
800
|
| DELETE | `/api/{model}/{id}` | Generated destroy | 204 |
|
|
801
801
|
|
|
802
|
+
Which `useApi` models get these routes is `security.api.models` in
|
|
803
|
+
`config/security.ts` (`'all'` by default, `'own'`, `'none'`, or a list of model
|
|
804
|
+
names that may include `'own'`), overridden by `STACKS_MODEL_APIS`. `'all'`
|
|
805
|
+
includes the ~80 framework models, so an app that does not use commerce or
|
|
806
|
+
CMS should set `'own'`. The OpenAPI schemas follow the same selection.
|
|
807
|
+
|
|
802
808
|
Generated store and update handlers accept declared `fillable` attributes and
|
|
803
809
|
the foreign-key attributes derived from `belongsTo`. For example,
|
|
804
810
|
`belongsTo: ['Product', 'Customer']` accepts `productId` / `product_id` and
|
|
@@ -60,6 +60,23 @@ they name: `defineEvents` and `defineListener` from `@stacksjs/events`,
|
|
|
60
60
|
- `determineAppEnv(): 'dev' | 'stage' | 'prod' | string`
|
|
61
61
|
- `localUrl(): string` — local development URL
|
|
62
62
|
|
|
63
|
+
## Feature Flags
|
|
64
|
+
`feature(name)` from `@stacksjs/config` reads `enabled` on `config/<name>.ts`.
|
|
65
|
+
It accepts the installable bundles (`dashboard`, `commerce`, `cms`, `forms`,
|
|
66
|
+
`marketing`, `monitoring`, `realtime`, `queue`) plus two config gates: `auth`
|
|
67
|
+
(whether the ORM loads Team, Referral, Subscriber, Site and the other account
|
|
68
|
+
models; it does not mount the auth routes, `STACKS_DEFAULT_ROUTES` does) and
|
|
69
|
+
`email` (the email webhook route bundle). `./buddy features` lists both groups.
|
|
70
|
+
|
|
71
|
+
Any other name is a compile error, so a typo cannot silently read `false`. An
|
|
72
|
+
app's own flags are declared first:
|
|
73
|
+
|
|
74
|
+
```ts
|
|
75
|
+
declare module '@stacksjs/config' {
|
|
76
|
+
interface AppFeatureFlags { 'new-checkout': true }
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
63
80
|
## All 44 Config Files
|
|
64
81
|
|
|
65
82
|
### Core App
|
|
@@ -104,7 +121,7 @@ they name: `defineEvents` and `defineListener` from `@stacksjs/events`,
|
|
|
104
121
|
### Security
|
|
105
122
|
| File | Type | Key Settings |
|
|
106
123
|
|------|------|-------------|
|
|
107
|
-
| `security.ts` | SecurityConfig | firewall (enabled, countryCodes, rateLimitPerMinute
|
|
124
|
+
| `security.ts` | SecurityConfig | api.rowScoping('deny'), api.models('all' / 'own' / 'none' / names; `STACKS_MODEL_APIS` overrides), firewall (enabled, countryCodes, rateLimitPerMinute) |
|
|
108
125
|
| `hashing.ts` | HashingConfig | driver('bcrypt'), bcrypt.rounds(12), argon2 config |
|
|
109
126
|
|
|
110
127
|
### Features
|
package/ide/vscode/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"publisher": "Stacks",
|
|
3
3
|
"name": "vscode-stacks",
|
|
4
4
|
"displayName": "Stacks",
|
|
5
|
-
"version": "0.75.
|
|
5
|
+
"version": "0.75.87",
|
|
6
6
|
"description": "Stacks, built into VS Code: stx templates, pickier linting and formatting, encrypted env files, the dev server preview and every buddy command. No other extensions required.",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"funding": "https://github.com/sponsors/chrisbbreuer",
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@stacksjs/defaults",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "0.75.
|
|
5
|
+
"version": "0.75.87",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "git+https://github.com/stacksjs/stacks.git",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"@iconify-json/f7": "^1.2.2",
|
|
57
57
|
"@iconify-json/hugeicons": "^1.2.35",
|
|
58
|
-
"@stacksjs/mobile": "^0.75.
|
|
58
|
+
"@stacksjs/mobile": "^0.75.87",
|
|
59
59
|
"@stacksjs/sanitizer": "^0.2.384",
|
|
60
60
|
"@xterm/addon-fit": "^0.11.0",
|
|
61
61
|
"@xterm/xterm": "^6.0.0",
|