v0.2.5 grouped actions
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "recap-relay-server",
|
"name": "recap-relay-server",
|
||||||
"version": "0.2.4",
|
"version": "0.2.5",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"private": true,
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
@@ -94,15 +94,13 @@ const inputSpec = InputSpec.of({
|
|||||||
placeholder: null,
|
placeholder: null,
|
||||||
}),
|
}),
|
||||||
// Max tier knobs.
|
// Max tier knobs.
|
||||||
max_monthly: Value.union(
|
max_monthly: Value.union({
|
||||||
{
|
name: 'Max — Monthly Credits',
|
||||||
name: 'Max — Monthly Credits',
|
description:
|
||||||
description:
|
'Max-tier users default to unlimited monthly credits. Switch to "Limit to a specific amount" to cap how many credits each Max install can spend per month.',
|
||||||
'Max-tier users default to unlimited monthly credits. Switch to "Limit to a specific amount" to cap how many credits each Max install can spend per month.',
|
default: 'unlimited',
|
||||||
default: 'unlimited',
|
variants: maxMonthlyVariants,
|
||||||
},
|
}),
|
||||||
maxMonthlyVariants,
|
|
||||||
),
|
|
||||||
max_gemini_cap: Value.number({
|
max_gemini_cap: Value.number({
|
||||||
name: 'Max — Gemini Cap (monthly)',
|
name: 'Max — Gemini Cap (monthly)',
|
||||||
description:
|
description:
|
||||||
@@ -127,7 +125,7 @@ export const adjustTierQuotas = sdk.Action.withInput(
|
|||||||
'Tune the per-tier monthly credit caps and Gemini exposure without redeploying. Changes apply to the next request — no restart needed.',
|
'Tune the per-tier monthly credit caps and Gemini exposure without redeploying. Changes apply to the next request — no restart needed.',
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'Tiers',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ export const setAdminPassword = sdk.Action.withInput(
|
|||||||
"Gate the relay's /admin dashboard. The public /relay/* endpoints are unaffected — they're per-call authenticated via X-Recap-Install-Id + Authorization headers.",
|
"Gate the relay's /admin dashboard. The public /relay/* endpoints are unaffected — they're per-call authenticated via X-Recap-Install-Id + Authorization headers.",
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'Setup',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ export const setGeminiKey = sdk.Action.withInput(
|
|||||||
"The operator's Gemini key. Required — the relay will refuse to serve traffic until this is set.",
|
"The operator's Gemini key. Required — the relay will refuse to serve traffic until this is set.",
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'AI Backends',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ export const setGemmaUrl = sdk.Action.withInput(
|
|||||||
'Optional. Where the relay forwards analysis requests once a user exceeds their monthly Gemini cap. Leave URL empty to disable the fallback.',
|
'Optional. Where the relay forwards analysis requests once a user exceeds their monthly Gemini cap. Leave URL empty to disable the fallback.',
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'AI Backends',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ export const setKeysatBaseUrl = sdk.Action.withInput(
|
|||||||
"Where the relay validates Recap user licenses. Defaults to https://keysat.xyz — override to a co-located internal hostname if Keysat is on the same Start9 server.",
|
"Where the relay validates Recap user licenses. Defaults to https://keysat.xyz — override to a co-located internal hostname if Keysat is on the same Start9 server.",
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'Setup',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export const setParakeetUrl = sdk.Action.withInput(
|
|||||||
"Optional. Where the relay forwards transcription requests once a user exceeds their monthly Gemini cap. Leave URL empty to disable the operator-hardware fallback.",
|
"Optional. Where the relay forwards transcription requests once a user exceeds their monthly Gemini cap. Leave URL empty to disable the operator-hardware fallback.",
|
||||||
warning: null,
|
warning: null,
|
||||||
allowedStatuses: 'any',
|
allowedStatuses: 'any',
|
||||||
group: null,
|
group: 'AI Backends',
|
||||||
visibility: 'enabled',
|
visibility: 'enabled',
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|||||||
@@ -5,8 +5,9 @@ import { v_0_2_1 } from './v0.2.1'
|
|||||||
import { v_0_2_2 } from './v0.2.2'
|
import { v_0_2_2 } from './v0.2.2'
|
||||||
import { v_0_2_3 } from './v0.2.3'
|
import { v_0_2_3 } from './v0.2.3'
|
||||||
import { v_0_2_4 } from './v0.2.4'
|
import { v_0_2_4 } from './v0.2.4'
|
||||||
|
import { v_0_2_5 } from './v0.2.5'
|
||||||
|
|
||||||
export const versionGraph = VersionGraph.of({
|
export const versionGraph = VersionGraph.of({
|
||||||
current: v_0_2_4,
|
current: v_0_2_5,
|
||||||
other: [v_0_2_3, v_0_2_2, v_0_2_1, v_0_2_0, v_0_1_0],
|
other: [v_0_2_4, v_0_2_3, v_0_2_2, v_0_2_1, v_0_2_0, v_0_1_0],
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
import { VersionInfo } from '@start9labs/start-sdk'
|
||||||
|
|
||||||
|
export const v_0_2_5 = VersionInfo.of({
|
||||||
|
version: '0.2.5:0',
|
||||||
|
releaseNotes: {
|
||||||
|
en_US:
|
||||||
|
'StartOS actions are now grouped (Setup / AI Backends / Tiers) for easier navigation in the operator dashboard.',
|
||||||
|
},
|
||||||
|
migrations: {
|
||||||
|
up: async ({ effects }) => {},
|
||||||
|
down: async ({ effects }) => {},
|
||||||
|
},
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user