People, Money, Documents Data Model
People
People records are lightweight private records for individuals and entities involved in QiLife.
Canonical fields:
id: ULIDdisplay_namelegal_nametyperelationshipemailphoneaddressnotestags_jsonmetadata_jsoncreated_atupdated_atarchived_atdeleted_at
Transactions
Transactions log actual money movement.
Canonical fields:
id: ULIDdateamount_centscurrencydirectionfrom_labelto_labelcategorybucket_codethread_idstatusnotesevidence_document_idsource_qibit_idcreated_atupdated_atarchived_atdeleted_at
Monetary values use integer cents, not floats.
Obligations
Obligations track who owes what.
Canonical fields:
id: ULIDowed_by_labelowed_to_labelobligation_typeamount_centscurrencyreasonstatusdue_daterelated_transaction_idsource_qibit_idcreated_atupdated_atresolved_atarchived_atdeleted_at
Canonical statuses:
open
partial
waiting_on
resolved
disputed
archived
Documents
Documents store file metadata only. Files remain on disk.
Canonical fields:
id: ULIDtitlefile_pathsourcedocument_typebucket_codethread_idfile_hashmime_typesize_bytesnotescreated_atupdated_atarchived_atdeleted_at
Relationship Rule
People, transactions, obligations, and documents can relate to QiBits, threads, and one another through a mix of direct foreign keys and links. Tags support retrieval, but links remain the canonical way to express known structure.