Append Mesh file picker and paid sharing task after public sharing

This commit is contained in:
archipelago
2026-10-07 14:45:45 -04:00
parent d4f3cceb52
commit 573a58622f
2 changed files with 56 additions and 3 deletions
+17 -2
View File
@@ -126,11 +126,17 @@ Private backup and artifacts are under
should continue on the phone after app close, with native controls, queue,
artwork, authorization and video PiP. Physical V4V acceptance is open.
21. **Public files/folders — queued, perform last:** Make public in both More
21. **Public files/folders — queued, after prior tasks:** Make public in both More
menus, discovery by non-peered/non-federated nodes, the same peer-sharing
pricing interface with blue tints instead of orange, optional charging and
a tiny blue marker at the icon's top-left. Full scope is backlog task21.
22. **Mesh file sharing — queued, final task after21:** Share file opens From node
/ From computer; node picker has tree navigation, search across all own files,
retained multiple selections at the bottom and Send. Plan node-to-node
delivery and support paid files using the usual recipient payment interface.
Full scope is backlog task22.
## Additional release-regression items
- Paid-file recovery must never issue a second payment; source protections and
@@ -284,7 +290,8 @@ No percentage is inferred from test counts.
| 18 Firewall/tunnel | In progress | Read-only UI done; settings persistence/reboot/rollback qualification |
| 19 Media guide/Cloud PiP | Nearly finished | PiP operator-accepted; finish reusable contract and remaining edge cases |
| 20 Native background media | In progress | Cloud PiP done; native audio service/controls and device checks remain |
| 21 Public files/folders | Queued, final task | Shared pricing interface with blue tints, unrelated-node discovery and tiny marker |
| 21 Public files/folders | Queued, before22 | Shared pricing interface with blue tints, unrelated-node discovery and tiny marker |
| 22 Mesh file sharing | Queued, final task | Node/computer choice, tree/search picker, retained multi-selection, delivery design and usual paid-file flow |
Completed subitems: Framework LND startup incident, companion download/viewer
acceptance, physical upload acceptance, APK55 delivery and reported Cloud PiP
@@ -312,3 +319,11 @@ fleet/device qualification, mirror review/parity and final artifact gates remain
`~/.local/state/archipelago/release-qualification/indeehub-backup-restore-20261007/`.
- No live app/container, database, wallet, catalog, payment or public file was
changed. Disposable fixtures used network-none and no live volumes.
### Mesh sharing addition — operator request
Task22 now follows task21 at the end. Its detailed scope is in
`post-1.9.0-work-backlog.md`. This is a recorded requirement/design task, not a
claim that the picker or transport/payment flow has been implemented. Existing
public-sharing blue pricing and marker requirements are retained unchanged.
+39 -1
View File
@@ -551,7 +551,7 @@ and video, with video using picture-in-picture where the device supports it.
from browser-only tests.
## 21. Public files and folders — final task
## 21. Public files and folders — deferred end-of-list task
Added by the operator on 2026-10-07. Perform after the existing tasks, including
previously deferred work. Status: queued; no public visibility has been changed.
@@ -578,3 +578,41 @@ previously deferred work. Status: queued; no public visibility has been changed.
unrelated-node discovery, paid access, withdrawal and mobile/desktop layouts.
No live file publication or real payment is authorized merely by adding this
task to the backlog.
## 22. Mesh Share file: node/computer picker and paid delivery — final task
Added by the operator after task21 on 2026-10-07. Append after public sharing;
status: queued. Plan the node-to-node sharing design before implementation.
- Clicking **Share file** in Mesh opens a source-choice modal with **From node**
and **From computer**. From computer opens the local device file picker;
plan upload/staging and delivery within the same send flow.
- **From node** opens a polished file-browser modal using the existing design
system, with folder-tree navigation and search across **all of the user's own
files**, not just the currently open folder. Preserve ownership/permissions;
show useful paths for matching names and truthful loading/empty/error states.
- Allow multiple file selections. Retain selections across tree navigation and
searches, collect them in a selection area at the bottom, allow individual
removal, and provide a clear **Send** action with a selected-file count.
Keep the browser and selection area usable on mobile and desktop.
- Plan and compare the supported node-to-node delivery paths before choosing
the implementation: reuse existing authenticated file sharing, discovery and
FIPS transports where suitable. Determine what the Mesh message carries,
how recipient identity/access is checked, where file bytes reside, and how
local-computer files become available without duplicate uploads or exposing
unrelated/private files. Distinguish Mesh messaging from bulk-file transport;
cover sender offline, recipient offline, reconnect, expiry and resumable
delivery with explicit progress and failure/retry behaviour.
- Support sharing an existing paid file and configuring a paid share through
the existing pricing flow. When a recipient opens a paid file, present the
**usual purchase/payment interface** and supported payment methods; verify
settlement/entitlement before releasing paid content. Reuse ownership and
recovery logic so repeat opens, retries and lost replies do not charge again.
- Define mixed free/paid multi-file messages, recipient previews, per-file price
and delivery states, existing entitlements and source deletion/withdrawal.
Selecting or sending a file must not silently make it globally public;
preserve the distinction from task21 public discovery.
- Qualify both source choices, tree navigation, whole-library search, retained
multi-selection/removal, Send, cross-node receipt/open/download, free and paid
access, duplicate/reconnect recovery and responsive/accessibility behaviour.