fix(attachments): use only qbit-object-storage's api package #11

Merged
KofTwentyTwo merged 1 commits from fix/object-storage-api-only into develop 2026-10-14 01:01:34 +00:00
KofTwentyTwo commented 2026-10-14 00:58:46 +00:00 (Migrated from github.com)

Summary

This removes qbit-collaboration's only edge into a non-api class of qbit-object-storage (qbit-bom#10, guardrail G1-arch). AttachmentStorage.maxBytes read the bucket's upload cap through StorageBucket.config().getMaxUploadBytes(), which returns the non-api StorageBucketConfig.

Behavior after this change:

  • Collaboration enforces only its own per-table maxBytes setting (default 100 MB).
  • Object storage still enforces the bucket's cap when the object is put. An oversized upload is still refused, but by storage rather than up front.

I've asked the remediation agent for a StorageBucket.maxUploadBytes() accessor in object-storage's api package. When it ships, collaboration will switch to it, so the panel can show the smaller of the two limits.

Test plan

  • ./mvnw -o verify: green, with the coverage gates unchanged.
  • CircleCI test_only.

🤖 Generated with Claude Code

## Summary This removes qbit-collaboration's only edge into a non-`api` class of qbit-object-storage (qbit-bom#10, guardrail G1-arch). `AttachmentStorage.maxBytes` read the bucket's upload cap through `StorageBucket.config().getMaxUploadBytes()`, which returns the non-`api` `StorageBucketConfig`. Behavior after this change: - Collaboration enforces only its own per-table `maxBytes` setting (default 100 MB). - Object storage still enforces the bucket's cap when the object is put. An oversized upload is still refused, but by storage rather than up front. I've asked the remediation agent for a `StorageBucket.maxUploadBytes()` accessor in object-storage's `api` package. When it ships, collaboration will switch to it, so the panel can show the smaller of the two limits. ## Test plan - [x] `./mvnw -o verify`: green, with the coverage gates unchanged. - [ ] CircleCI `test_only`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.