-
released this
2026-07-29 14:28:10 +00:00 | 0 commits to main since this releaseSub-project 1 of 4 in the workflow rethink. A capture now has an explicit lifecycle derived from the filesystem, and storage retention hangs off it.
Changed
- Completing a review reclaims that capture's intermediates. Signing a capture off in the publish quality gate — "Confirm unchanged" or uploading a cleaned PLY — deletes
frames/,colmap/,training/,brush_dataset/,rescue/probes/andshare/_tmp/. Kept, as before: everything inoutput/,pipeline.log,runs.jsonl, finished share bundles — andrescue/clips/*.mp4, which are a bisection-rescued capture's recorded origin, without whichresume/add-videocannot work. The reclaim is deferred while a run looks live (a WebUI job, or any working dir touched in the last hour — what a CLIresumelooks like from outside); the sign-off itself always stands. - A capture never reviewed is reclaimed after 30 days, on the next WebUI/app start, with a warning in the captures list from day 23. Configurable via
[lifecycle] unreviewed_grace_days;0disables it. The sweep only touches captures the WebUI actually lists — nested legacy layouts are left tomigrate-storage. export.copy_to_outputsis deprecated and defaults tofalse.outputs_dirwas a second, unmanaged copy of every PLY that nothing ever reclaimed.captures/<id>/output/is the only location now;doctorwarns while the key is stilltrue. Existing config files keep loading.- Compressed SOGs are kept at
output/scene.sogand reused — a repeat share of an unchanged capture goes from minutes of compression to seconds.
Added
-
autosplat migrate-storagebrings an existing backlog onto the retention policy. Scanscaptures/recursively so nested pre-Phase-9 rescue layouts are found, plus the deprecatedoutputs/copies, and prints one table of everything reclaimable. Preview by default,--applyexecutes.Never deleted, and always listed with the reason: an orphaned
outputs/entry (the only surviving copy of a capture that was removed), a failed capture, a capture that looks mid-rebuild, or a directory burying a nested capture's only PLY. It refuses to run at all whencaptures_dirandoutputs_dirnest inside one another.
Fixed
cleanup-intermediatesnever reclaimedrescue/orbrush_dataset/, and scanned non-recursively — so bisection-rescue leftovers and nested pre-Phase-9 capture layouts were invisible to it. On the maintainer's machine that was 11,2 of 19 GB.
Measured on the maintainer's real data: 27,8 GB → 13,1 GB, with orphaned scenes, failed captures and
rescue/clipsdeliberately untouched.Apple-Silicon only (macOS 15+). The DMG is signed and notarized.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Completing a review reclaims that capture's intermediates. Signing a capture off in the publish quality gate — "Confirm unchanged" or uploading a cleaned PLY — deletes
-
released this
2026-07-19 21:01:28 +00:00 | 33 commits to main since this releasePublish quality gate
Captures must be reviewed once in the SuperSplat viewer before their first share: upload a cleaned
.ply(e.g. exported from SuperSplat's own export UI) or confirm the scene unchanged. The gate is tracked per-capture and auto-invalidates when the capture is rebuilt (detected viascene.plymtime), requiring a fresh review.Capture cleanup
cleanup-intermediatesCLI command + WebUI "Free up space" button — reclaims disk space held byframes/,colmap/,training/once a capture has finished exporting.
Docs
- Portability audit:
AGENTS.mdfiles marked maintainer-local where they referenced the maintainer's own machine setup;GETTING-STARTED.mdquickstart path fixed to be relative.
See pipeline/CHANGELOG.md for full details.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-07-19 11:02:48 +00:00 | 51 commits to main since this releasePapercut cleanup slice for the captures/detail WebUI, seeded 2026-07-18 in the Coding-Cockpit. Five items, all TDD'd:
- Fixed —
share/_tmp/scene.sogcompression leftover is now cleaned up after a successful share-bundle build. - Fixed —
finished_atnow survives a WebUI restart for successfully-finished jobs too (previously only failed jobs had a durable fallback), fixing captures-list ordering. - Fixed — COLMAP's mapper stage no longer falsely triggers the "quiet — may be stuck" liveness warning; the heuristic now also watches
colmap/database.db/colmap/sparse/**mtime, not justpipeline.log. - Added — per-row delete action in the captures list.
- Added — click-to-sort captures list columns (id/status/stage/created/ply), toggling asc/desc, surviving the 3s HTMX poll.
Full details: pipeline/CHANGELOG.md
Signed + notarized DMG attached below.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Fixed —
-
released this
2026-07-15 14:50:16 +00:00 | 54 commits to main since this releaseFixes the "Download bundle (.zip)" button doing nothing in the packaged DMG app. Root cause: the desktop app opens the WebUI in a native pywebview WKWebView window, which gates handling of
<a download>links behindwebview.settings['ALLOW_DOWNLOADS'](default False, never enabled). The server-side download route was already correct.See CHANGELOG.md and pipeline/CHANGELOG.md for details.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
released this
2026-07-15 11:48:26 +00:00 | 55 commits to main since this releasePatch release: share bundles now bundle and use the
embed/viewer runtime instead ofviewer/, making them genuinely zero-external (PlayCanvas vendored) and fixing the feature being non-functional in the packaged DMG app.See CHANGELOG.md and pipeline/CHANGELOG.md for details.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
released this
2026-07-15 07:20:08 +00:00 | 65 commits to main since this releaseAdded
embed/— minimal, embeddable splat viewer. A new self-contained
monorepo component: a single iframe page
(embed/index.html?src=…&poster=…&autoplay=1) with click-to-load gate,
percentile auto-framing, auto-orbit and fullscreen — and a fully vendored
PlayCanvas engine (zero external requests).viewer/is parked as the
development viewer (walking mode, collision editor, landing page live there).
A pose-authoring workflow (?pose=…&orbit=…&authoring=1) lets you capture a
curated camera view into a ready-to-embed link instead of relying on
auto-framing.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-07-14 12:19:18 +00:00 | 83 commits to main since this releaseAdded
- WebUI "Create share bundle" — on-demand action on a finished capture that compresses the scene to
.sogand assembles a self-contained, self-hostable viewer bundle (folder +.zip) reachable via an unguessable link. Unlisted, not access-controlled.
Fixed
- WebUI capture detail no longer freezes in its
runningrender after a job finishes — the liveness poll now detects therunning → donetransition and reloads the page.
Full details: pipeline/CHANGELOG.md
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- WebUI "Create share bundle" — on-demand action on a finished capture that compresses the scene to
-
v1.12.0 — Monorepo merge Stable
released this
2026-06-15 22:43:42 +00:00 | 96 commits to main since this releaseMonorepo merge
autosplat-pipelineandautosplat-viewerare now one repository —pipeline/+viewer/— with full, lossless history.Highlights
- One shared version line, starting at v1.12.0 (continuing the pipeline strand; the viewer joins from 1.1.1).
- History preserved verbatim: pre-merge tags namespaced
pipeline-v*/viewer-v*;git log --followreaches the full history inside each subfolder. feat/collision-meshcarried over (8 commits).- Product-level root: README · CHANGELOG · AGENTS · consolidated license set ·
scripts/deploy-pages.sh. - Live viewer (Codeberg Pages): https://jkaindl.codeberg.page/autosplat/
Migration notes
The old repositories (
video-to-3d-gaussian-splat,autosplat-viewer) are archived (not deleted); their releases remain reachable there. A GitHub mirror is available at https://github.com/johannes-kaindl/autosplat.Full details: CHANGELOG.md.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads