This commit is contained in:
seb
2026-10-05 19:04:48 +02:00
parent 4718cb5726
commit 191a0b29e2
3 changed files with 6 additions and 5 deletions

View File

@@ -169,7 +169,7 @@ Company-scoped key/value settings. Auth via selected company (`google_auth.selec
- With `frontendOnly: true`, backend-only keys are omitted / `get` returns `undefined` (no leak via error type beyond missing).
- `writeonly: true` → usergui gets a `"***"` scrambled version when retrieving the key (in `list`, or in `get` when `maskWriteonly` is enabled / `frontendOnly: true`). The backend receives the full value.
- `keys.tavily`, `keys.openrouter`, and `keys.serper` default to `writeonly: true` on `set`.
- `set` only allows a fixed allow-list of keys: `ui.theme`, `keys.tavily`, `keys.openrouter`, `keys.serper`, `labelprinter.addr`, `labelprinter.type`.
- `set` only allows a fixed allow-list of keys: `ui.theme`, `keys.tavily`, `keys.openrouter`, `keys.serper`, `systemprompt-prefix`, `systemprompt-suffix`, `default-model`.
- No delete endpoint — settings are upsert / read only.
Errors: `No company selected`, `Company not found`, `Not authorized`, `Invalid setting`.

View File

@@ -154,8 +154,8 @@ export async function fillDatabase(store, options = {}) {
writeonly: false,
});
await store.companysetting.set(ctx.googleAuthId, {
key: 'labelprinter.type',
value: 'zebra',
key: 'default-model',
value: 'openai/gpt-6-luna:floor',
frontend: false,
writeonly: false,
});

View File

@@ -15,8 +15,9 @@ const ALLOWED_KEYS = new Set([
'keys.tavily',
'keys.openrouter',
'keys.serper',
'labelprinter.addr',
'labelprinter.type',
'systemprompt-prefix',
'systemprompt-suffix',
'default-model',
]);
const WRITEONLY_KEYS = new Set([