Skip to content

Commit e27d6d3

Browse files
committed
docs(spec): cite the /ai/models picker decision as cloud ADR-0028
The JSDoc on AiModelsResponseSchema and its models field, and the matching protocol.test.ts comment, cited a bare ADR-0028. That number resolves to this repository's metadata-naming record; the decision is cloud's (plan-filtered AI model picker). JSDoc and comments only. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01D6F9axfoPzR7t8G1J7Ytzz
1 parent 959ee31 commit e27d6d3

3 files changed

Lines changed: 13 additions & 3 deletions

File tree

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
'@objectstack/spec': patch
3+
---
4+
5+
Clause-②: no
6+
7+
docs(spec): the `GET /api/v1/ai/models` response JSDoc cites `cloud ADR-0028`, not a bare `ADR-0028`
8+
9+
- **What changed.** The JSDoc on `AiModelsResponseSchema` and on its `models` field now cites `cloud ADR-0028` (the plan-filtered AI model picker decision) where it cited a bare `ADR-0028`. This repository's own ADR-0028 is about metadata naming and namespace isolation; the AI service that serves this list is a cloud package. The client SDK TSDoc and the docs already cite it this way.
10+
- **Unchanged.** Every schema shape, `.describe()` string, generated JSON Schema and behaviour.

‎packages/spec/src/api/protocol.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ describe('ObjectStack Protocol', () => {
372372
expect(AiCompleteRequestSchema.safeParse({ prompt: 'Summarise:', options: { maxTokens: 64 } }).success).toBe(true);
373373
expect(AiCompleteRequestSchema.safeParse({}).success).toBe(false);
374374

375-
// models — both live shapes: the ADR-0028 allowlist and the bare-id fallback
375+
// models — both live shapes: the cloud ADR-0028 allowlist and the bare-id fallback
376376
expect(AiModelsResponseSchema.safeParse({
377377
models: [{ id: 'gpt-4o-mini', label: 'GPT-4o mini', default: true }], defaultModel: 'gpt-4o-mini',
378378
}).success).toBe(true);

‎packages/spec/src/api/protocol.zod.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3396,10 +3396,10 @@ export const AiCompleteRequestSchema = lazySchema(() => z.object({
33963396
options: z.record(z.string(), z.unknown()).optional().describe('Request options (model, temperature, maxTokens, …)'),
33973397
}));
33983398

3399-
/** `GET /api/v1/ai/models` — the environment's plan-filtered picker list (ADR-0028). */
3399+
/** `GET /api/v1/ai/models` — the environment's plan-filtered picker list (cloud ADR-0028). */
34003400
export const AiModelsResponseSchema = lazySchema(() => z.object({
34013401
/**
3402-
* Objects when the service exposes the ADR-0028 allowlist; bare ids when it
3402+
* Objects when the service exposes the cloud ADR-0028 allowlist; bare ids when it
34033403
* falls back to the adapter's `listModels()`. Both shapes are live, so both
34043404
* are declared rather than one being asserted and the other 404-by-parse.
34053405
*/

0 commit comments

Comments
 (0)