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

# L1 · Ingestion & Normalization

> Turns raw documents into structured objects without losing the source.

export const Provenance = () => <Tooltip tip="Knowing where every piece of data came from and what was done to it along the way.">provenance</Tooltip>;

<Note>
  **In plain terms:** L1 takes raw material (PDFs, CAD metadata, spreadsheets, prior
  files) and turns it into clean, structured objects, while always keeping a link
  back to exactly where each piece came from.
</Note>

## What it does

L1 normalizes source material while preserving <Provenance />. It parses rules,
documents, CAD metadata, tables, bills of material, PDFs, and prior vessel records
into typed objects the rest of the system can reason over.

The discipline here is **"never lose the source."** Every normalized object can
trace back to the exact document, page, and version it came from:

* PDFs become extracted requirements with page references.
* CAD metadata becomes typed objects.
* Bills of material become line items linked to materials.

## What L1 outputs

* `normalized_document`
* `extracted_requirement`
* `cad_metadata_object`
* `bom_line_item`
* `evidence_object`

## Why provenance matters here

If a normalized object cannot point back to its origin, then any later claim built
on it is unverifiable. By preserving the trail at ingestion time, L1 makes it
possible for a clearance value or a rule citation to be traced all the way back to
the original document, which is what makes a decision defensible later.

Related: [Keeping Your Data Yours](/concepts/keeping-data-yours).
