internkim
Data room

Document metadata

Each document has an identifier, title, kind, factual summary, language and date. date is the day the document itself bears, the day it was issued. createdAt is when it entered the data room and updatedAt when its record last changed; sizeBytes is the original's size, empty without one. categoryCode names a category without children or X. Optional fields include counterpart, covered period, tags, status and the document it supersedes. A replacement preserves earlier documents.

sha256 identifies the original bytes. storagePath is where the original sits in the private asset bucket: <company>/dataroom/<parent>/<category>/<name>.<documentID>.<extension>, or directly under the parent for a category without children. A derived file sits beside it as <name>.<documentID>.<file>, so content.txt, the text preview, shares the document's identifier with the original. Reclassifying a document moves its files. The original remains unchanged; a standalone tree stores metadata in its <file>.md sidecar and generates catalogs from those labels.

The service keeps its own files here too. The company seal and logo are ordinary documents under a fixed name in a fixed category, both listed once in web/src/lib/data-room/service-files.ts. Each version is stored as <name>.<YYYY-MM-DD>.<documentID>.<extension>, where the day is the document's date, the day the version took effect. Older versions stay, a new version supersedes the one it follows, and forms print the version with the latest date, the one created later when two share a day. Only an administrator keeps a version. Every member of the company reads the kept versions so their forms carry them, while the rest of the category stays with its circles.

Write a summary that states the document's facts, amounts and dates. Review extraction warnings when OCR, transcription or a format converter is unavailable. A missing derivative does not change the document's permissions.