apps/mobile/app.config.ts | 5 +- apps/mobile/src/components/ComposerAttachmentStrip.tsx | 54 ++- apps/mobile/src/connection/platform.ts | 2 +- apps/mobile/src/features/home/usePendingTaskListActions.ts | 2 +- apps/mobile/src/features/sharing/IncomingShareProvider.tsx | 64 ++- apps/mobile/src/features/sharing/incoming-share-inbox.test.ts | 3 + apps/mobile/src/features/sharing/incoming-share-inbox.ts | 10 +- apps/mobile/src/features/sharing/incoming-share-model.test.ts | 519 ++++++++++++++++++++- apps/mobile/src/features/sharing/incoming-share-model.ts | 243 +++++++++- apps/mobile/src/features/sharing/incoming-share-storage.test.ts | 78 ++++ apps/mobile/src/features/sharing/incoming-share-storage.ts | 16 +- apps/mobile/src/features/threads/NewTaskDraftScreen.tsx | 165 ++++++- apps/mobile/src/features/threads/NewTaskRouteScreen.tsx | 4 +- apps/mobile/src/features/threads/ThreadComposer.tsx | 58 ++- apps/mobile/src/features/threads/ThreadDetailScreen.tsx | 6 +- apps/mobile/src/features/threads/ThreadFeed.tsx | 162 ++++++- apps/mobile/src/features/threads/ThreadRouteScreen.tsx | 1 + apps/mobile/src/features/threads/new-task-flow-provider.tsx | 49 +- apps/mobile/src/features/threads/use-project-actions.ts | 62 ++- apps/mobile/src/lib/attachmentDownload.test.ts | 270 +++++++++++ apps/mobile/src/lib/attachmentDownload.ts | 128 ++++++ apps/mobile/src/lib/attachmentUpload.test.ts | 461 +++++++++++++++++++ apps/mobile/src/lib/attachmentUpload.ts | 318 +++++++++++++ apps/mobile/src/lib/composer-image-schema.ts | 17 + apps/mobile/src/lib/composerAttachmentFiles.test.ts | 56 +++ apps/mobile/src/lib/composerAttachmentFiles.ts | 82 ++++ apps/mobile/src/lib/composerFiles.test.ts | 386 ++++++++++++++++ apps/mobile/src/lib/composerImages.ts | 207 +++++++++ apps/mobile/src/lib/projectThreadStartTurn.ts | 13 +- apps/mobile/src/state/attachments.ts | 5 + apps/mobile/src/state/pending-task-editor-writes.test.ts | 353 +++++++++++++++ apps/mobile/src/state/pending-task-editor-writes.ts | 89 ++++ apps/mobile/src/state/thread-outbox-manager.ts | 226 +++++++-- apps/mobile/src/state/thread-outbox-model.ts | 58 ++- apps/mobile/src/state/thread-outbox-removal.test.ts | 305 +++++++++++++ apps/mobile/src/state/thread-outbox-removal.ts | 91 ++++ apps/mobile/src/state/thread-outbox.test.ts | 493 +++++++++++++++++++- apps/mobile/src/state/thread-outbox.ts | 26 +- apps/mobile/src/state/use-composer-drafts.test.ts | 724 +++++++++++++++++++++++++++-- apps/mobile/src/state/use-composer-drafts.ts | 336 +++++++++++++- apps/mobile/src/state/use-thread-composer-state.ts | 110 ++++- apps/mobile/src/state/use-thread-outbox-drain.test.ts | 574 +++++++++++++++++++++++ apps/mobile/src/state/use-thread-outbox-drain.ts | 779 +++++++++++++++++++++++++++++--- docs/user/composer.md | 17 +- patches/expo-sharing@57.0.16.patch | 123 +++++ pnpm-lock.yaml | 5 +- pnpm-workspace.yaml | 1 + 47 files changed, 7459 insertions(+), 297 deletions(-)