DisclosureOS documentation · v2 Beta
Reproduce an ELDÆON reading
Trace a real electric-field reading through the source row, standard documents and mission viewer.
Reproduce 5.0 V/m from an ELDÆON environment log, then inspect what the standard can and cannot verify. This is real mission data with incomplete equipment context. It demonstrates how to retain a useful reading without presenting it as a calibrated measurement.
Open this reading in the mission viewer.
1. Run the example
Download the example, unzip it and open the eldaeon-reading folder. With Node.js 22 or newer:
npm install
npm startThe dependency is the published @disclosureos/schema@2.0.0-beta.4. Installation fetches dependencies. The check itself reads local files and makes no network requests.
The download includes the same ten-minute JSON projection used by the portal, four standard documents, a partial export manifest and a reproduction script. It does not include the full original CSV or sensor README. Their hashes are retained from the mission intake. Source data remains attributed to ELDÆON; this download does not grant new redistribution rights.
2. Read the result
The output separates reproducing the recorded value from qualifying its capture context:
| Check | Expected result | Meaning |
|---|---|---|
| Retained window bytes | Matched | The JSON projection matches its saved digest. |
| Recorded cell | 5.0 V/m | The source cell and standard measurement agree. V/m is declared by the provider; measurement uncertainty is unknown. |
| Original CSV bytes | Not supplied | The default run does not recheck the original file. |
| Standard structure and relationships | Passed | The documents have valid shapes and their declared connections resolve. |
| Acquisition profile | Failed | BINDING.CONTEXT_INCOMPLETE: required equipment and capture details remain unknown. |
| Measurement profile | Failed | MEASUREMENT.CAPTURE_UNKNOWN: equipment capture boundaries are not established. |
| Scientific validity and clock uncertainty | Not checked | Copying a value and normalizing its timestamp do not establish accuracy or synchronization. |
npm start exits successfully when the recorded value is reproduced and the standard reports these expected limitations. It does not turn either failed profile into a pass. Use this command to require qualification instead:
npm run qualifyIt currently exits with status 1. A missing calibration record should lead to a data request, not a fabricated calibration or relaxed validation rule.
3. Follow the source connection
| File | Role |
|---|---|
source.json | Identifies the original CSV, its retained intake hash, physical line 27746, electric-field column and original local time. |
row.json | One retained row, represented as a derived product. /raw/5 contains the source cell "5.0". The original CSV remains a separate raw product. |
window.json | The portal's complete interval, included for an independent comparison with row.json. It also contains rows outside this one-reading mapping. |
history.json | Contains one observation, its source assertion, measured value and processing lineage. The claim list is empty. |
context.json | Describes the logger and capture with explicit unknowns for unsupplied details. |
export-mapping.json | A partial manifest authored by DisclosureOS from the export and retained README unit declaration. It is not a provider-issued hardware configuration. |
bindings.json | Connects the observation's original CSV to the context's captured product and instrument. |
measurements.json | Connects the recorded value to that product, the electric-field channel and its declared time. |
The original timestamp is 2026-07-28 22:29:00 PDT. Applying the provider's UTC−07:00 declaration gives 2026-07-29 05:29:00 UTC. Duplicate timestamps elsewhere in the file remain separate rows. No interpolation, averaging or unit conversion is performed.
The measurement-binding profile stops at the unresolved capture time. The script also runs the acquisition profile separately, so its context diagnostics and available artifact checks remain visible. A profile's external: not_checked is not proof that every original file was verified.
4. Check an original file locally
If you have the original CSV, provide its local path:
npm start -- --original "/path/to/2026-07-28-12_17_28.csv"The script checks the full file's byte length and SHA-256 against the retained intake, then compares physical line 27746 with the projected row. It does not upload the file. A mismatch stops the run. Supplying matching bytes does not resolve the missing equipment context, and it does not check the README's bytes or calibration.
A changed projected cell, canonical measurement, timestamp or channel mapping also fails the reproduction check. The example's tests cover those cases to prevent the viewer and standard documents from silently diverging.
5. Complete the capture context
Before treating this as a qualified measurement, obtain:
- The equipment model, serial number and channel configuration used for this export.
- Hardware and firmware revisions, the nominal sampling behavior and units for each channel.
- Capture and deployment boundaries, plus clock source, synchronization and uncertainty.
- Applicable calibration records and their validity periods.
The magnetic and RF channels need their own unit clarification. This example deliberately uses the electric-field channel, whose README declaration is V/m. A confirmed unit label still does not establish calibration.
This is one reproducible reading, not a complete mission DatasetRelease, a cross-sensor time alignment or an anomaly assessment. Extend the mapping to other channels only when their source interpretation is clear.
Continue
Use Connect measurements for the general contract, Equipment and captures for capture context, or Prepare a dataset contribution for the broader handoff. The synthetic measured-value exercise demonstrates a complete declared mapping with passing profile checks.