[ArtStudio] ArtifactKinds derives kind from stage only — OBJ stored as kind "mesh-glb" #361

Closed
opened 2026-07-04 12:53:12 +00:00 by spikerj · 1 comment
Owner

Found during the #359 end-to-end run (run 1 produced an OBJ from TripoSR before output_format=glb existed; it landed in GridFS with kind mesh-glb). Epic #346.

ArtifactKinds.For (SpikerSoft.EventHandlers.ArtPipeProcessor) maps stage → kind without looking at the file. Kind should incorporate the actual artifact type (extension/content sniff): mesh-glb vs mesh-obj, image-png, texture-set, anim-mp4, etc. Matters for the frontend's artifact panel (picks viewer by kind) and the P7 games handoff contract.

Acceptance: kind reflects the real file type for every artifact the worker uploads; existing stage association unchanged; unit tests cover glb/obj/png cases.

Found during the #359 end-to-end run (run 1 produced an OBJ from TripoSR before `output_format=glb` existed; it landed in GridFS with kind `mesh-glb`). Epic #346. `ArtifactKinds.For` (SpikerSoft.EventHandlers.ArtPipeProcessor) maps stage → kind without looking at the file. Kind should incorporate the actual artifact type (extension/content sniff): `mesh-glb` vs `mesh-obj`, `image-png`, `texture-set`, `anim-mp4`, etc. Matters for the frontend's artifact panel (picks viewer by kind) and the P7 games handoff contract. **Acceptance:** kind reflects the real file type for every artifact the worker uploads; existing stage association unchanged; unit tests cover glb/obj/png cases.
spikerj added the bug label 2026-07-04 12:53:12 +00:00
Author
Owner

Resolved in spikersoft-backend PR #65 (merged to master). ArtifactKinds now derives kind from the actual file extension (mesh-glb vs mesh-obj, image-png, animation-mp4, …) while keeping the stage association; 27 unit tests incl. the glb/obj/png acceptance trio. Closing.

Resolved in spikersoft-backend PR #65 (merged to `master`). `ArtifactKinds` now derives kind from the actual file extension (mesh-glb vs mesh-obj, image-png, animation-mp4, …) while keeping the stage association; 27 unit tests incl. the glb/obj/png acceptance trio. Closing.
Sign in to join this conversation.