# Proposed Friendly Filing System Compatibility Requirements

This list asserts what must be true for an implementation to be considered *courteous*.

---

## A. Data model

1. **Quad shape.** Every record is `timestamp, subject, predicate, object`.
2. **Timestamp primary key.** 20-digit `YYYYMMDDHHMMSSNNNNNN`. Lexicographic order equals chronological order. The index is source-suffixable to avoid collisions across users.
3. **Plaintext interoperability.** The implementation must read and write CSV at minimum. It may also support n-quads, Turtle, Notation3, RDFa.
4. **Append-only history.** Existing quads are not destroyed in place; replacement is by newer quad with same subject and predicate.

## B. Boundaries

5. **Four storage buckets** Private (plus none), Direct (plus one), Members-only (plus some), Public (plus all).
6. **User-controlled opt-in.** The user defines upstream sources and opts in or out per source.
7. **Interoperable ingestion.** Across the bucket gap *and* across implementations.

## C. Query

8. **Inverted index / concordance.** Bidirectional search (by subject OR object) is supported.
9. **Ordered and unordered sorts.** Both full and partial sorts (groupings) are admitted as first-class.
10. **CR required; UD optional.** Create and Read MUST exist. Update and Delete MUST NOT modify, only supersede.
11. **Closed Simplex typing.** Result set from any query reduces to one of: boolean, integer, double, or variable-length BLOB (Binary Large OBject). No fifth type.

## D. Layers

12. **Five swappable layers.** Frontends, UX, skills (routes), backends, devops; each independently replaceable. Layer boundaries are strict; layer contents are not.

## E. User experience

13. **Acceptance tests.** Required for all data moving between the user and the second-party. The tests assert normative behaviour.
14. **Adaptability — UI-agnostic, modality-independent.** Identical rules apply across frontends. App enhancement and app renunciation are equally first-class. Quads can be input and output through any channel that satisfies acceptance tests.
15. **Presentation belongs to the receiver.** All views defined user-side, never sender-side.

## F. Locality & routing

16. **Local-only operation possible.** No mandatory remote dependency.
17. **Remote delegation possible.** When the user chooses it.
18. **Routing is pattern-matched and observable.** The user can trace what was routed where, and why.

## G. Second person

19. **Fiducial duty.** Any integrated second-person operates with the first-person's best interest as highest priority.
20. **Second-person actions traceable.** Through the control plane.
21. **MITM as feature, not bug.** Trusted intermediation is permitted by design.

## H. Endurance

22. **Forward-compatible data exchange.** Data written today must remain portable later as interoperable plaintext.
23. **Updates optional.** Obsolescence of hardware or software only affect implementation, not data model.
24. **Extendible.** Dereferencing unrecognized values fails gracefully.

---

DRAFT REVISION 2026-07-01
REQUESTING COMMENTS!!!!!1
REPLY-TO: FFS@NOTHING.NEW