> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vinmake.com/llms.txt
> Use this file to discover all available pages before exploring further.

# The seven Books families

> The native accounting registers, their tie-outs, and the read and freshness states that keep missing evidence visible.

# The seven Books families

Books is the native accounting workspace behind `/books`.
It reads the records that each business process actually owns, then attaches the related accounting event, complete journal entries, source clock, approval evidence, and Assurance findings without making a second ledger.

| Family                     | What its registers cover                                                                                                  |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Settlement / rails / AP-AR | rails, evidence, obligations, settlements, allocations, advances, deposits, employee float, and rail matches              |
| Inventory / costing        | stock, production, receipts, costing, logistics allocations, inventory adjustments, assets, orders, items, and bill lines |
| Payroll                    | employees, contracts, attendance, payrolls, components, allocations, bills, obligations, variances, and accruals          |
| Loans / treasury           | facilities and movements                                                                                                  |
| VAT / statutory tax        | tax entries                                                                                                               |
| Adjustment notes           | debit and credit notes against existing obligations                                                                       |
| Consolidation              | intercompany invoices, FX revaluations, equity, and dividends                                                             |

Select a family from the Books overview, then open a structure to see its bounded native register.
Five approval-sensitive families also show exact durable maker-checker evidence rather than inferring approval from a status label.

## Read state is separate from freshness

| State          | What GreatBook is saying                                                                                                                             |
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `complete`     | Every required native read for this answer succeeded. Zero rows is reported separately as an empty complete result.                                  |
| `partial`      | Authoritative rows were read, but some related structure, accounting link, tie-out, or evidence was unavailable or defective. The rows stay visible. |
| `inconclusive` | The available evidence cannot decide the question, such as a missing or ambiguous clock or lineage fact.                                             |
| `error`        | The native read itself failed. No count or empty-book claim is derived from it.                                                                      |

Freshness is another contract over each family's source clocks.
`fresh` means the newest relevant clock is within the 35-day window, `stale` means it is older, `inconclusive` means the clock is unknown or the family has no authoritative as-of field, and `error` means freshness could not be evaluated.
A stale family can still have a complete read, and a fresh timestamp cannot turn a partial read into a complete one.

Several families legitimately render **Inconclusive** or **Freshness unavailable** when native source facts, journal lineage, book-currency history, or an authoritative as-of clock are absent.
Those labels are the intended result of a bounded read, not a degraded substitute for green.

## Coverage is the published subset

Family accounting-link coverage includes structures that actually publish accounting links.
Master and reference structures remain authoritative family members, but their absence from the accounting-link subset is not a failed link.
The UI reconciles every structure the endpoint published and separately verifies the complete family catalogue, so it neither demands a fabricated journal link from a master table nor lets an unknown structure disappear.

A control-account tie-out may publish no control account only when that control discovers its accounts from its own rows and the same response establishes a zero-row population.
A populated control with no named account is still unreadable.

## What this surface refuses

Books is read-only.
It does not edit native rows, post a journal, waive a finding, convert an unreadable response into zero, call an unknown clock stale, or hide rows because their journal lineage is missing.

## When the answer is unknown

Unknown coverage remains `partial` or `inconclusive`, unknown freshness remains `inconclusive`, and a failed source remains `error`.
The UI withholds totals that require a complete answer and shows the backend detail instead of painting an empty state.

## Verified at source

* `backend/app/logics/finance/books.py` defines the seven-family catalogue, register projection, four read states, 35-day freshness contract, approval-sensitive families, and read-only behavior.
* `backend/app/logics/finance/gl_lineage.py` owns the shared event/source resolver used by Books and Transactions.
* The GreatBook web repository's `src/lib/books-workspace.ts` rejects malformed or internally inconsistent complete responses before the UI may show their counts and distinguishes the published accounting-link subset from the full family catalogue.
* The release fixtures under `tests/fixtures/real-api/books-family-*-summary.json` record all seven family responses from the running demo backend at the pinned release head; they include complete, partial, inconclusive, fresh, and inconclusive-freshness states rather than one universal green result.
