From 71131932de145c8e9790e4d65801929404d35167 Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Sun, 26 Apr 2026 04:18:34 +0900 Subject: [PATCH] =?UTF-8?q?roadmap:=20#228=20filed=20=E2=80=94=203D-asset-?= =?UTF-8?q?generation=20API=20typed=20taxonomy=20is=20structurally=20absen?= =?UTF-8?q?t:=20zero=20/v1/3d/generations=20endpoint=20surface,=20zero=20T?= =?UTF-8?q?hreeDGenerationRequest/ThreeDObject/MeshFormat/ThreeDTaskId=20t?= =?UTF-8?q?yped=20model,=20zero=20ThreeDAsset=20OutputContentBlock=20varia?= =?UTF-8?q?nt,=20zero=20generate=5F3d=5Fasset/retrieve=5F3d=5Ftask=20Provi?= =?UTF-8?q?der=20trait=20methods,=20zero=20ProviderClient=20dispatch=20wit?= =?UTF-8?q?h=20nine=20recommended=20third-party=20partners=20(Meshy-AI/Tri?= =?UTF-8?q?po-AI/CSM/Luma-Genie/Stability3D/Point-E/Shap-E/GET3D/One-2-3-4?= =?UTF-8?q?5),=20zero=20async-task-polling-primitive=20in=20runtime=20(con?= =?UTF-8?q?firms=20async-task-polling=20cluster=20grows=20to=203:=20#221+#?= =?UTF-8?q?227+#228=20=E2=80=94=20structural=20pattern=20confirmed=20not?= =?UTF-8?q?=20anomalous),=20zero=20claw=203d/mesh/generate-3d=20CLI=20subc?= =?UTF-8?q?ommand,=20zero=20/3d=20/mesh=20slash=20command,=20zero=20mesh?= =?UTF-8?q?=5Fper=5Fasset=5Fcost=5Fusd=20pricing=20field=20=E2=80=94=20nin?= =?UTF-8?q?e-layer-fusion-shape=20identical=20to=20#227=20with=20mesh-moda?= =?UTF-8?q?lity=20replacing=20video-modality=20(GLB/GLTF/USDZ/OBJ/FBX=20bi?= =?UTF-8?q?nary-spatial-geometry=20output=20instead=20of=20MP4=20binary-te?= =?UTF-8?q?mporal-media,=20per-3d-asset=20pricing=20instead=20of=20per-sec?= =?UTF-8?q?ond-of-video,=20mesh-polygon-density=20as=20quality=20axis=20re?= =?UTF-8?q?placing=20video-fps-and-duration)=20/=20Jobdori=20cycle=20#379?= =?UTF-8?q?=20/=20sibling-shape=20cluster=20grows=20to=2027=20/=20multimod?= =?UTF-8?q?al-IO=20cluster=20grows=20to=206=20/=20provider-asymmetric-dele?= =?UTF-8?q?gation=20cluster=20grows=20to=205=20/=20async-task-polling=20cl?= =?UTF-8?q?uster=20grows=20to=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ROADMAP.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/ROADMAP.md b/ROADMAP.md index 35cc209..f64935b 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -16281,3 +16281,23 @@ fn pricing_for_model_returns_none_for_video_generation() { **Status:** Open. No code changed. Filed 2026-04-26 04:08 KST. Branch: feat/jobdori-168c-emission-routing. HEAD: 897055a (post-#226). Sibling-shape cluster: 26 pinpoints. Wire-format-parity cluster: 17 members. Capability-parity cluster: 9 members. Multimodal-IO cluster: 5 members (#220 image-input + #224 embedding-output + #225 audio-bidirectional + #226 image-output + #227 video-output). Cross-cutting-data-pipeline cluster: 4 members. Multipart-transport cluster: 4 members. Provider-asymmetric-delegation cluster: 4 members (the largest partner-set yet at twelve-plus partners for #227). **Nine-layer-fusion-shape-with-async-task-polling-primitive** matches #225's nine-layer-count but with the novel async-task-polling-primitive axis replacing the symmetric-input-output content-block axis — the largest fusion-shape gap catalogued so far, the upstream prerequisite of every visual-temporal-output coding-agent affordance, and the first cluster member where async-task-polling-primitive becomes a structural prerequisite of the dispatch layer. Distinct from prior cluster members; novel and applies to follow-on candidate 3D-asset-generation API typed taxonomy (#228 candidate inheriting same nine-axis shape with mesh-modality and per-asset-pricing). 🪨 + +--- + +## Pinpoint #228 — 3D-asset-generation API typed taxonomy is structurally absent + +**Branch:** feat/jobdori-168c-emission-routing +**Filed:** 2026-04-26 04:17 KST (Jobdori cycle #379) +**Extends:** #168c emission-routing audit / explicit follow-on from #227's nine-layer-fusion-shape-with-async-task-polling-primitive + +**Summary:** Zero `/v1/3d/generations` endpoint surface across both Anthropic-native and OpenAI-compat lanes. Zero `ThreeDGenerationRequest` / `ThreeDGenerationResponse` / `ThreeDObject` / `MeshFormat` / `MeshQuality` / `TextureDensity` / `ThreeDTaskStatus` / `ThreeDTaskId` typed model in `rust/crates/api/src/types.rs`. Zero `ThreeDAsset` variant on `OutputContentBlock` (4-arm exhaustive: Text/ToolUse/Thinking/RedactedThinking — the mesh-modality extension of #227's video-output axis). Zero `generate_3d_asset` / `retrieve_3d_task` methods on `Provider` trait (only `send_message` + `stream_message` exist). Zero 3D-asset-generation dispatch on `ProviderClient` enum (three variants Anthropic/Xai/OpenAi; zero Shap-E / Meshy-AI / Tripo-AI / CSM / StablePoint3D / Luma-Genie / Point-E / GET3D / One-2-3-45 partner-routing variants). Zero async-task-polling-primitive in the runtime (#227's novel shape-axis, required because mesh generation takes 10-180+ seconds). Zero `claw 3d` / `claw mesh` / `claw generate-3d` CLI subcommand. Zero `/3d` / `/mesh` / `/generate-3d` slash command in `SlashCommandSpec` table. Zero `mesh_per_asset_cost_usd` / `mesh_per_polygon_cost_usd` / `texture_resolution_cost_multiplier` fields in `ModelPricing` struct (text-token-only fields only). Zero 3D model entries in `MODEL_REGISTRY`. + +**Shape:** Same nine-layer fusion shape as #227 (endpoint-URL-set + async-task-polling-primitive + data-model-with-output-content-block-only + request-side opt-in for format/quality/texture + Provider-trait-method-set-with-Unsupported-fallback + ProviderClient-enum-dispatch-with-partner-lanes + CLI-subcommand-surface + pricing-tier + async-task-polling-primitive-with-timeout-and-resume) but with mesh-modality replacing video-modality: GLB/GLTF/USDZ/OBJ/FBX binary output instead of MP4, per-3D-asset pricing instead of per-second-of-video, and mesh-polygon-density as the key quality axis replacing video-fps-and-duration. + +**Key distinction from #227:** Output is binary-spatial-geometry (mesh + textures) not binary-temporal-media (video frames). Polling shape is identical (async-task-id-based two-phase request/poll) because mesh generation also exceeds typical HTTP timeout windows. Provider-asymmetric: Anthropic does not offer 3D generation at all; OpenAI has no GA 3D-gen endpoint; primary providers are Meshy AI, Tripo AI, CSM (Common Sense Machines), Luma Genie, Stability 3D, Point-E/Shap-E (Meta open-weight), GET3D (NVIDIA). + +**Clusters:** Sibling-shape cluster grows to 27. Wire-format-parity cluster grows to 18. Capability-parity cluster grows to 10. Multimodal-IO cluster grows to 6 (#220 image-input + #224 embedding-output + #225 audio-bidirectional + #226 image-output + #227 video-output + #228 mesh-output). Multipart-transport cluster: 4 (mesh-edits/retexture subset also needs multipart for reference-image upload). Provider-asymmetric-delegation cluster grows to 5. Async-task-polling cluster: 2 (#221 batch-dispatch + #227 video-gen + #228 mesh-gen — grows to three members that require async-task-polling-primitive at the runtime layer, confirming it as a first-class structural pattern, not a one-off). + +**Status:** Open. No code changed. Filed 2026-04-26. HEAD: 4ced378. Async-task-polling cluster now 3 members — pattern is confirmed structural, not anomalous. Upstream prerequisite of every spatial-computing / AR / VR / 3D-visualization coding-agent affordance. Provider-asymmetric (no Anthropic/OpenAI GA surface); nine recommended third-party partners. Inherits #227's novel async-task-polling-primitive shape-axis. + +🪨