Registry reconciliation
_Generated 2026-10-26 by python -m hoodie_bev.registry_reconcile against schema v1. Generated, not hand-kept: re-run it rather than editing this file._
Read-only. This compares hoodie-suite's registry (from a JSON snapshot) with hoodie_bev.registry.SOURCES. It changes nothing and decides nothing; where the two disagree it lists the disagreement.
Size
| entries | |
|---|---|
| hoodie-suite (sources + builds) | 92 |
| hoodie-bev | 48 |
| on both (same id) | 32 |
| suite only | 60 |
| bev only | 16 |
Same source, two names?
None.
Disagreements on shared ids
Only where both sides state a value. placement is listed for a decision, not as an error: klass=mac and where=cloud are related, not equal.
| field | count |
|---|---|
| acquisition.cadence | 6 |
| shape.tables | 5 |
| status | 3 |
| id | field | suite | bev |
|---|---|---|---|
binnys | shape.tables | ['binnys_products'] | ['binnys_store_stock'] |
census | acquisition.cadence | weekly | monthly |
census-acs | acquisition.cadence | weekly | monthly |
census-migration | acquisition.cadence | weekly | monthly |
doordash-addr | status | disabled | live |
doordash-full | shape.tables | ['doordash_full_runs', 'doordash_products_full', 'doordash_outlets_full'] | ['doordash_items'] |
geocode | acquisition.cadence | daily | weekly |
geocode | shape.tables | ['src_outlets'] | ['outlet_geocodes'] |
geocode | status | disabled | live |
haskells | acquisition.cadence | daily | weekly |
meijer | acquisition.cadence | daily | weekly |
ubereats | shape.tables | ['ubereats_products_parts'] | ['ubereats_stores'] |
ubereats | status | disabled | live |
vtinfo | shape.tables | ['vtinfo_titos'] | ['vtinfo_accounts'] |
What each registry states (fill rate)
Every field of the v1 record. The empty rows are the point: they are what is unknown until someone decides it, and they are why rights, trust and keys are not populated by this slice.
| part | field | suite | bev |
|---|---|---|---|
| identity | kind | 92/92 | 48/48 |
| identity | label | 92/92 | 0/48 |
| identity | status | 92/92 | 48/48 |
| identity | replaced_by | 0/92 | 0/48 |
| acquisition | acquisition.where | 0/92 | 48/48 |
| acquisition | acquisition.lane | 0/92 | 48/48 |
| acquisition | acquisition.cadence | 73/92 | 48/48 |
| acquisition | acquisition.interval_h | 23/92 | 0/48 |
| acquisition | acquisition.cost_class | 32/92 | 0/48 |
| acquisition | acquisition.requires | 10/92 | 0/48 |
| rights | rights.record_ref | 2/92 | 0/48 |
| rights | rights.facts_use | 0/92 | 0/48 |
| rights | rights.terms_url | 0/92 | 0/48 |
| rights | rights.needs_counsel | 0/92 | 0/48 |
| trust | trust.master_role | 0/92 | 0/48 |
| trust | trust.spine_eligible | 0/92 | 0/48 |
| shape | shape.grains | 0/92 | 0/48 |
| shape | shape.tables | 92/92 | 48/48 |
| shape | shape.keys | 0/92 | 0/48 |
| shape | shape.raw_fields_ref | 0/92 | 0/48 |
Records that fail validation
None.
Suite only
abc-catalog, abc-facets, abc-fws, aggregator-geo, asset-divergence, bbg, bottlecapps, build-dist-xwalk, build-item-identity, build-master-quality, build-master-quality-canon, build-obs-quality, build-outlets, build-product-master, build-representativeness, build-sipsource-marts, build-ue-catalog, build-velocity, build-velocity-calibrate, build-velocity-signals, census-acs5, cityhive, control-states, dam-bacardi, dam-census, dam-gallery, doordash-geo-tx, fast-geo, geo, hemp-inventory, img-hash, instacart-bevalc, kroger, kroger-api, naop, normalize-facts, offprem-census, offprem-census-expand, outlet-union, postmates, postmates-full, postmates-sitemap, publix, sevennow, snowflake-load, specs, stop-and-shop, target, target-stores, toast, total-wine, ttb, ttb-enrich, ubereats-enrich, ubereats-full, ubereats-sitemap, vip-finder-census, xsource-gold, xsource-match, xsource-queue
Bev only
al-products, bc-liquor, doordash-zip, id-products, master-brand, master-item, master-outlet, me-products, mont-catalog, mont-purch, mont-sales, nc-pricing, or-pricing, slug-cities, ut-products, vt-pricing