test(cli): shared-files journey + .gitignore + docs (§11.6 files C5)

- collections.rs: shared_files_collection_is_read_write_across_the_subtree
  — a group declares kv+docs+files in one string-or-table manifest; authed
  app A creates a blob via files::shared_collection("assets").create(...),
  app B lists + gets the SAME bytes back across the subtree, a
  sibling-subtree app gets CollectionNotShared, collections ls shows all
  three kinds. Live-verified the bytes land under
  files/groups/<group_id>/assets/<id[0:2]>/<id>.
- .gitignore: ignore /crates/picloud-cli/data (the CLI journey harness
  spawns the server from that dir; the files journey is the first CLI test
  to write blobs).
- docs: design §11.6 (KV+DOCS+FILES shipped; topics/queue still deferred),
  sdk-shape (files::shared_collection), CLAUDE.md current-focus.

Full journey suite 117/117; schema blessed (55 migrations); workspace
clippy -D clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
MechaCat02
2026-06-30 19:56:47 +02:00
parent 17221a2683
commit 9c6d690792
5 changed files with 179 additions and 30 deletions

5
.gitignore vendored
View File

@@ -26,8 +26,11 @@ docker-compose.override.yml
config.local.toml
/data
# Files-root blob storage created when integration tests run build_app
# from the picloud crate dir (PICLOUD_FILES_ROOT default ./data).
# from a crate dir (PICLOUD_FILES_ROOT default ./data). The CLI journey
# harness spawns the server from the picloud-cli dir, so it lands there too
# (the §11.6 group-files journey is the first CLI test to write blobs).
/crates/picloud/data
/crates/picloud-cli/data
/postgres-data
# Dashboard