Supporting Reference 5: Data Contracts

This page defines the configuration, JSON state, and schema contracts the automation depends on. Treat these contracts as production interfaces, not optional metadata.

R5.1 Primary config contract: amir2000_config.py

Runtime behavior is driven by Python config blocks and environment overrides. There is no YAML source-of-truth layer.

R5.2 JSON state files in data/

FileTypeContract role
folder_map.jsonobjectFolder key to display/title mapping contract.
location_list.jsonarray[string]Location suggestion source for UI and normalization.
autofix_dict.jsonobjectToken correction map used in text cleanup.
spellcheck_exceptions.jsonarray[string]Domain-specific allowlist to reduce false fixes.
new_taxonomy_log.jsonarray[object]Append-style record of taxonomy additions.
used_filenames.jsonarray[string]Global filename reservation ledger.
ui_state.jsonobjectUI/editor state persistence (layout and session context).
prefill_qc_last.jsonobjectLast prefill QC summary and flagged row identifiers.

R5.3 SQL schema contract sources

R5.4 Contract integrity rules

R5.5 Change control checklist

  1. Define contract change and impacted modules.
  2. Update config/JSON/SQL source files consistently.
  3. Run DB bootstrap and small end-to-end validation batch.
  4. Confirm publish behavior and mirror sync are unaffected.
  5. Update related documentation pages (Step 4 and Step 5 when relevant).

R5.6 Continuation path

© 2026 Amir Darzi
Privacy Policy  |  Photography site | W3C-Valid  |  Cookie settings