Humberto Henríquez

Technical case study · Synthetic-data demonstration

Data consolidation:
publish with sound judgment.

RELOJ explores a month-end close problem: four sources arrive with different levels of freshness, and one may stop responding. The decision to accept, flag or stop changes what gets published.

Project and explanation: Humberto Wilfredo Henríquez Benítez · Updated

The problem it illustrates

A total may look correct even when one source belongs to the previous period. The demonstration shows how freshness, validation rules and publication policy affect the close. The technical work involves modeling those decisions and making their consequences visible.

Scope: an interactive browser simulation using synthetic data and a fixed seed. It does not connect to client systems. The displayed times, quantities and differences are scenario values; they are neither client impact metrics nor a benchmark.

Screenshot of RELOJ, a four-source consolidation demonstration using synthetic data
Actual screenshot of the laboratory interface. Its data represents a synthetic scenario.

How the scenario is built

The JavaScript engine calculates source states and the close result based on the selected controls. The illustrated pipeline covers extraction, preparation, validation, modeling and publication.

  1. Four sources
  2. Preparation
  3. Validation
  4. Semantic model
  5. Publication
Illustrated source Condition you can explore
Transactional database Incremental query with a recent cutoff.
Supporting lists Collaboration data refreshed at a different time.
Treasury service Simulated outage and recovery using a statement from the previous period.
Branch files Excel workbooks older than the other sources.

The representation groups 42 checks into categories: keys, referential integrity, reconciliation, freshness and format. The engine derives failures from the scenario; it does not run 42 queries against an external database.

A walkthrough to verify the behavior

  1. Run the default configuration. Review each source's cutoff and the pipeline result.
  2. Reduce the freshness threshold. A source can exceed the limit even while it continues to respond.
  3. Select “Reject.” If a source is stale, watch the pipeline stop at that source.
  4. Select “Accept and flag.” Enable “Simulate service outage” and keep “Stop if validation fails” selected. The scenario should stop at validation.
  5. Disable that stop condition. Compare the result published with warnings and review the information accompanying the deferred data.

The log, source table and final result let you compare the selected policy with its consequences. “Accept silently” deliberately illustrates the risk of hiding staleness; it is not an operational recommendation.

Design decisions and limitations

Visible freshness

Age is evaluated for each source and described in text. Color supports the explanation.

Separate policy

The same scenario can stop or be published with warnings depending on the control decision.

Reproducible scenario

The fixed seed and engine rules let you compare decisions against the same synthetic dataset.

Taking this pattern into production requires contracts and validation for real data, protected credentials, persisted execution records, access controls, recovery tests and operational metrics. This demo does not establish that those components are in place.