Skip to content

Add Go 3Drop NAS library with Drive hand-off and provider downloads - #70

Draft
davidcollom wants to merge 3 commits into
mainfrom
feat/three-drop-sync
Draft

davidcollom wants to merge 3 commits into
mainfrom
feat/three-drop-sync

Conversation

@davidcollom

@davidcollom davidcollom commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

3Drop keeps saved models behind an interactive Google login, and its cloud-browser session cannot be exported into a NAS process. This adds a Go backup service that can consume a complete browser-generated JSON inventory through Google Drive, archive likes and collection references, and download supported model files locally.

  • Cobra/Viper CLI: cookie sync, saved-response import, local handoff, drive publish, drive sync, and provider/explicit-link downloads. Flags override environment and config.
  • Strict complete-inventory contract with counts, model IDs, source URLs, titles and collection IDs/membership. Partial, inconsistent, stale and older inventories cannot replace the catalogue. Prior files and snapshots survive removals.
  • Drive file creation/update and authenticated reads by stable file ID, with renewable authorised-user OAuth credentials in private mounted files. No 3Drop/Google sign-in tokens or expiring model download links belong in the inventory.
  • DOM-only browser helper and operator runbook; provider interface with Printables as the first adapter. Concurrent transfers honour --workers, --max-files and --max-file-size.
  • Non-root AMD64/ARM64 container, Compose and suspended Kubernetes examples, Go/browser-helper CI and existing image-publishing integration.

Validation: local go test -race -cover ./... passes (80.3% coverage), go vet passes, five synthetic browser-helper tests pass, Linux AMD64/ARM64 builds pass, YAML parses and git diff --check passes. The new commit's GitHub Go/browser-helper workflow and AMD64/ARM64 container build both pass.

Live verification: Google login and rendered account pages were verified. The private account API schemas and full export remain unverified after a cloud-browser security-policy block. The partial reference export was saved privately and not committed. Drive is not connected to this conversation and no live Drive publication occurred. Printables free metadata/link generation was verified, but actual file retrieval returned HTTP 403 in this environment. No images were published and no NAS deployment occurred.

Keep this draft until a complete private Drive publication, NAS pull and real file transfer are verified. Further verification/adapters are tracked in #69. Setup and boundaries: three-drop-sync/docs/google-drive-handoff.md; browser workflow: three-drop-sync/agents/README.md.

@davidcollom davidcollom changed the title Add Go 3Drop NAS backups with provider adapters and concurrent downloads Add Go 3Drop NAS library with Drive hand-off and provider downloads Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant