feat(review): View prompt + Call 2 declared attrs, Create-desc gate
Shared assemble_call2 for GET .../call2/prompt and POST call2 (seed + DECLARED ATTRIBUTES + dimension fact + brand/geo; photo slots without base64). Create desc disabled until content LLM + title/short + species + wood cats/primary + edge + ≥1 figure + grade + moisture + price; show missing. figure_term_ids required for ready. Moisture defaults to Kiln dried (kd). Pin snl / liveedge in wood-cat UI. Ready-on-change via MultiSelect onCommit.
This commit is contained in:
@@ -379,6 +379,26 @@ export function inferContent(slabId: string): Promise<Call2Result> {
|
||||
}).then((r) => parse<Call2Result>(r));
|
||||
}
|
||||
|
||||
/** View prompt: assembled Call 2 text + photo slots (no base64, no model call). */
|
||||
export interface Call2PromptPhoto {
|
||||
seq: number;
|
||||
id: string;
|
||||
bytes: number;
|
||||
long_edge_px: number | null;
|
||||
}
|
||||
|
||||
export interface Call2Prompt {
|
||||
text: string;
|
||||
photos: Call2PromptPhoto[];
|
||||
prompt_revision_id: number | null;
|
||||
}
|
||||
|
||||
export function getCall2Prompt(slabId: string): Promise<Call2Prompt> {
|
||||
return fetch(`/api/v1/slabs/${encodeURIComponent(slabId)}/inference/call2/prompt`).then((r) =>
|
||||
parse<Call2Prompt>(r),
|
||||
);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Taxonomy (METADATA-5/15/30; only legal picker options)
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user