data_id	data_family	support_level_or_geography	targets_or_fields	pipeline_state	public_status	sensitivity	license_or_policy_status	raw_source_or_access	example_internal_artifacts	current_rest_surface	current_mcp_surface	openapi_surface	docs_surface	sdk_or_lib_surface	public_data_inventory_asset	inventory_asset_class	inventory_current_surface	inventory_support_level	inventory_target_family	inventory_source_family	inventory_license_status	inventory_public_readiness	inventory_recommended_surface	inventory_phase	inventory_blockers	inventory_next_step	source_contract	canonical_contracts	raw_retention	normalization_steps	engineering_steps	synthesis_policy	delivery_mode	target_rest	target_mcp	target_openapi	target_docs	target_sdk	default_export_formats	recommended_public_surface	gap_or_blocker	next_step
forecast.address_h3	forecast_output	address|h3; Houston best coverage	home value p10/p25/p50/p75/p90; appreciation; fan chart	serving	launch	medium	public_api_terms	Homecastr geocoding plus forecast serving tables	apps/web/src/app/api/v1/forecast/route.ts; h3 serving path	/api/v1/forecast	forecast_by_address	yes	docs/api/README.md; apps/web public docs	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Keep as API surface, not bulk data	Payload is public API output but address-level use is more sensitive than aggregates	Add provenance labels to docs and keep benchmark catalog focused on aggregate outputs
forecast.parcel_lot	forecast_output	parcel; FL plus Houston	property value bands; parcel account output	serving	hold	high	license_review_required	Assessor and parcel serving tables for lot-level forecasts	apps/web/src/app/api/v1/forecast/lot/route.ts	/api/v1/forecast/lot	forecast_by_parcel	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.property_level_surfaces	forecast_outputs	/api/v1/forecast/lot and /api/v1/forecast/unit	parcel|unit	property_level_home_value	assessor_unit_serving	license_review_required	hold	Do not package publicly beyond existing guarded surfaces until review is explicit	phase_3	Parcel and unit provenance plus source terms still need explicit review	Keep out of benchmark and public-data release waves for now	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Guarded API only; no public benchmark dump	Parcel provenance and source terms need explicit review	Document as excluded from phase-1 public-data release
forecast.unit	forecast_output	unit; FL plus Houston	unit-level value bands; optional sibling units	serving	hold	high	license_review_required	Unit and condo sibling serving tables	apps/web/src/app/api/v1/forecast/unit/route.ts	/api/v1/forecast/unit	forecast_by_unit	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.property_level_surfaces	forecast_outputs	/api/v1/forecast/lot and /api/v1/forecast/unit	parcel|unit	property_level_home_value	assessor_unit_serving	license_review_required	hold	Do not package publicly beyond existing guarded surfaces until review is explicit	phase_3	Parcel and unit provenance plus source terms still need explicit review	Keep out of benchmark and public-data release waves for now	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Guarded API only; no public benchmark dump	Unit-level release exceeds aggregate-first floor	Keep only authenticated/controlled serving path
forecast.tabblock	forecast_output	tabblock; NYC plus Houston	home value bands; block-level geography	serving	draft	medium	public_api_terms	Census tabblock forecast serving tables	apps/web/src/app/api/v1/forecast/tabblock/route.ts	/api/v1/forecast/tabblock	forecast_by_tabblock	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Consider aggregate benchmark examples after privacy/provenance review	Tabblock can be small-area sensitive	Keep as public API; do not promote as phase-1 bulk data
forecast.tract_home_value	forecast_output	tract; nationwide plus richer jurisdictions	home value bands; fan chart	serving	launch	low	public_api_terms	Tract forecast serving tables	apps/web/src/app/api/v1/forecast/tract/route.ts	/api/v1/forecast/tract	forecast_by_tract	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Primary public aggregate forecast surface	Needs benchmark-oriented examples and provenance labels	Add examples tying to catalog and source manifests
forecast.zcta	forecast_output	ZCTA; nationwide	home value bands; fan chart	serving	launch	low	public_api_terms	ZCTA forecast serving tables	apps/web/src/app/api/v1/forecast/zcta/route.ts	/api/v1/forecast/zcta	forecast_by_zcta	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Primary public aggregate forecast surface	Docs-site does not yet tie it to public-data catalog	Add catalog examples and CSV/JSON consumer snippets
forecast.zip3	forecast_output	ZIP3; nationwide	home value bands; regional forecast output	serving	launch	low	public_api_terms	ZIP3 aggregate serving tables	apps/web/src/app/api/v1/forecast/zip3/route.ts	/api/v1/forecast/zip3	forecast_by_zip3	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Good public consumer feed	Not yet represented explicitly in public-data inventory	Add explicit catalog overlay or fold into aggregate surfaces
forecast.county	forecast_output	county; nationwide	home value bands; county metrics	serving	launch	low	public_api_terms	County forecast serving tables	apps/web/src/app/api/v1/forecast/county/route.ts	/api/v1/forecast/county	forecast_by_county	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Primary public aggregate forecast and benchmark-consumer surface	Needs versioned provenance in docs examples	Add benchmark-oriented county examples
forecast.state	forecast_output	state; all states	home value bands; state metrics	serving	launch	low	public_api_terms	State forecast serving tables	apps/web/src/app/api/v1/forecast/state/route.ts	/api/v1/forecast/state	forecast_by_state	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Primary public aggregate forecast surface	Needs versioned provenance in docs examples	Add catalog examples and state CSV artifact references
forecast.h3_legacy	forecast_output	H3 resolution 8; Houston legacy	home value bands	serving	draft	medium	public_api_terms	H3 forecast serving tables	apps/web/src/app/api/v1/forecast/hex/route.ts	/api/v1/forecast/hex	forecast_by_h3_cell	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Keep as legacy API, not public-data package	Legacy geography and limited coverage	De-emphasize in public-data docs in favor of tract/ZCTA/county/state
forecast.outlook_county	forecast_output	county; nationwide	median appreciation; highest upside; median value; trajectory	serving	launch	low	public_api_terms	Precomputed county outlook and trajectory tables	apps/web/src/app/api/v1/outlook/county/route.ts	/api/v1/outlook/county	get_county_outlook	yes	apps/web public docs; docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Public aggregate consumer feed	Only county outlook is fully in OpenAPI	Add state outlook to OpenAPI or mark as app-only
forecast.outlook_state	forecast_output	state	median appreciation; highest upside; state summary	serving	draft	low	public_api_terms	State outlook RPC and aggregate export logic	apps/web/src/app/api/v1/outlook/state/route.ts; apps/web/src/app/api/forecasts/download/route.ts	/api/v1/outlook/state	get_data_asset; query_forecasts; get_target_metric_forecast	yes	app docs partial	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_surfaces	forecast_outputs	REST + MCP forecast_by_state or forecast_by_county or forecast_by_zcta or forecast_by_tract	state|county|zcta|tract	home_value_forecast	homecastr_world_model_public_serving	public_api_terms	launch	existing forecast REST and MCP with catalog provenance	phase_1	Need explicit inventory and provenance fields around the aggregate-safe slice	Keep aggregate-safe examples and provenance labels current in catalog	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Expose through catalog if intended for public consumers	Missing MCP/OpenAPI/docs coverage	Decide whether state outlook is public API or app-only helper
forecast.aggregate_downloads	forecast_output	national|state|city|county|tract	CSV aggregate outlook rows with metadata comments	serving_export	launch	low	public_export_ready	CSV export builder over state/county/city/tract aggregate data	apps/web/src/app/api/forecasts/download/route.ts	/api/forecasts/download	get_data_asset; query_forecasts; get_target_metric_forecast	yes	docs/public-data/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.aggregate_downloads	forecast_outputs	/api/forecasts/download state and city exports	state|county|tract	home_value_forecast	aggregate_outlook_exports	public_export_ready	launch	CSV and JSON artifact packaging first; Parquet deferred	phase_1	Need benchmark-facing artifact manifest rows	Publish catalog row and example CSV metadata block	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	CSV and JSON public artifact pattern	No MCP wrapper and not in OpenAPI	Add benchmark catalog link and maybe OpenAPI entry if public API
forecast.narratives	forecast_output	county|tract|city|state	narrative text; geography metadata	serving	draft	medium	public_copy_review	AI-generated market narrative records	apps/web/src/app/api/v1/narratives/route.ts	/api/v1/narratives	get_narrative	yes	docs/api/README.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	forecast.narratives	forecast_outputs	/api/v1/narratives	county|tract|city|state	market_narrative	narrative_generation	public_copy_review	draft	Phase-2 REST and MCP narrative pack	phase_2	Need copy QA and versioning so narrative packaging stays benchmark-safe	Add examples and explicit numeric-versus-narrative separation	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Phase-2 consumer feed with version labels	Copy QA and numeric-vs-narrative separation not finished	Add version/provenance fields before benchmark-facing release
forecast.tract_target_metrics	forecast_output	tract	value|income|rent|population|housing|tenure|mobility|employment|education|rates	feature_gated_serving	draft	low	public_api_terms	Target metric forecast and history RPCs	apps/web/src/app/api/v1/forecast/tract/metric/route.ts; apps/web/src/lib/forecast-targets.ts	/api/v1/forecast/tract/metric; /api/v1/data/forecasts	get_target_metric_forecast; query_forecasts	yes	docs/public-data/README.md; apps/web/public/openapi.json; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	forecast.target_metric_tract	forecast_outputs	/api/v1/forecast/tract/metric	tract	target_metric_forecast	acs_target_serving	public_api_terms	draft	Phase-2 tract target-metric bridge surface	phase_2	Deployment flag and downstream examples are not yet standardized	Add MCP examples and benchmark-oriented usage snippets	hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Phase-2 bridge plus canonical forecast contract for benchmarks and downstream training consumers	Published SDK package and deployment-flag review still missing	Add downstream adapter examples and decide when legacy feature gating ends
forecast.tiles_mvt_pmtiles	forecast_output	mvt tiles; map zoom hierarchy	tile features; choropleth values; growth metrics	app_surface	not_public	medium	mixed_public_api_and_internal_cache	Forecast tiles, PMTiles generation, tile cache	apps/web/src/app/api/forecast-tiles/[z]/[x]/[y]/route.ts; packages/pipeline/scripts/tiles	/api/forecast-tiles/{z}/{x}/{y}	get_data_asset; query_forecasts; get_target_metric_forecast	yes	docs/training/PMTILES_GENERATION_GUIDE.md	client.dataAssets.get(); client.forecasts.query(); client.artifacts.download()	not_in_inventory												hc.source_snapshot.v1	hc.forecast_series.v1 | hc.forecast_vintage.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve model output bundles and served payload snapshots by model version and origin time.	canonicalize entity IDs and geography vintages | separate origin time from forecast time | normalize target IDs, units, quantiles, and scenarios	derive growth and summary statistics from canonical forecast points | retain the input forecast IDs used by every summary	Scenario generation is allowed only as hc.synthetic_record.v1 with parent forecast snapshots and no observed-data claim.		/api/v1/data/forecasts | /api/v1/data/vintages | /api/v1/data/artifacts/{artifact_id}	query_forecasts | get_forecast_vintage | get_data_artifact	ForecastSeries | ForecastVintage | ArtifactManifest	dataset card | forecast semantics | provenance and model card | REST/MCP/SDK examples	client.forecasts.query | client.vintages.get | client.artifacts.download	json | jsonl | csv	Keep as app visualization surface	Tile payloads need explicit public artifact contract before bulk use	Document separately if exporting vector tiles becomes a product
backtest.coverage_vintages	backtest_output	zcta|tract|parcel	historical values; forecast vintages by origin year	app_surface	draft	medium	internal_methodology_surface	Forecast and historical actuals by origin year for methodology charts	apps/web/src/app/api/backtest-coverage/route.ts	/api/backtest-coverage	get_data_asset; get_public_forecast_vintage; get_backtest_scores; get_benchmark_result	yes	methodology docs implied	client.dataAssets.get(); client.vintages.get(); client.benchmarks.get()	backtest.model_vs_persistence_cutoff2016_h8	backtest_vintage_outputs	plan_public_forecast_vintage_benchmarks.py summary and completed score rows	tract|county-prefix	total_population|total_housing_units|occupied_units|vacant_units	model_vs_persistence_score_table	score_summary_public_safe	launch	/api/v1/benchmarks/backtests	phase_1	Need public summary schema tied back to one inventory row	Expose summarized score rows and artifact identifiers only	hc.source_snapshot.v1	hc.forecast_vintage.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve complete evaluation artifacts, configs, dataset snapshot IDs, and compact public summaries separately.	normalize target and horizon identifiers | record split and availability cutoffs | distinguish model, public forecast, and persistence baselines	compute comparable score rows | derive improvement and calibration summaries without dropping sample counts	Bootstrap and stress-test samples are allowed as synthetic benchmark artifacts and never replace reported observed scores.		/api/v1/data/vintages | /api/v1/data/benchmarks | /api/v1/data/artifacts/{artifact_id}	get_forecast_vintage | get_benchmark_result | get_data_artifact	ForecastVintage | BenchmarkResult | ArtifactManifest	benchmark card | split methodology | reproducibility guide | score interpretation	client.vintages.get | client.benchmarks.get | client.artifacts.download	json | jsonl | csv | parquet	Convert aggregate portions into benchmark vintages/backtests	Parcel mode is not phase-1 public-safe	Split aggregate-safe output from parcel-level methodology helper
benchmark.catalog	benchmark_metadata	all listed public-data assets	asset class; support; readiness; provenance fields	serving	launch	low	public_metadata	Inventory-driven benchmark/public-data catalog	docs/public-data/asset-inventory.tsv; apps/web/src/lib/benchmarks.ts	/api/v1/benchmarks/catalog	list_benchmark_datasets|get_benchmark_dataset	yes	docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	all inventory rows												hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Version registry and runner configuration snapshots with content hashes.	canonicalize dataset, suite, model, and jurisdiction identifiers | resolve every registry entry to immutable snapshot IDs	derive searchable capabilities and compatibility labels	Not applicable; generated compatibility summaries remain derived metadata.		/api/v1/data/catalog | /api/v1/data/benchmarks	list_data_assets | get_benchmark_result	DatasetAsset | BenchmarkResult	catalog reference | benchmark registry | adapter matrix	client.dataAssets.list | client.benchmarks.get	json | csv	Canonical discovery surface for public data	Published SDK package is still missing	Add package-level examples once SDK packaging is decided
benchmark.public_vintages_oeo	backtest_output	county	total_population; scenario rows	serving	launch	low	public_source_table	Arizona OEO Maricopa 2022 public forecast vintage fixture	packages/pipeline/scripts/pipeline/training/public_forecast_vintages_az_oeo_maricopa_medium_2022_report.csv	/api/v1/benchmarks/vintages; /api/v1/data/vintages/{vintage_id}	get_public_forecast_vintage; get_forecast_vintage	yes	docs/public-data/README.md; apps/web/public/openapi.json; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	backtest.public_vintage_oeo_maricopa_2022	backtest_vintage_outputs	public_forecast_vintages_az_oeo_maricopa_medium_2022_report.csv	county	total_population	public_forecast_vintage_fixture	public_source_table	launch	/api/v1/benchmarks/vintages	phase_1	Need stable endpoint examples and benchmark-only labeling	Serve validated rows with provenance fields and CSV option	hc.source_snapshot.v1	hc.forecast_vintage.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve complete evaluation artifacts, configs, dataset snapshot IDs, and compact public summaries separately.	normalize target and horizon identifiers | record split and availability cutoffs | distinguish model, public forecast, and persistence baselines	compute comparable score rows | derive improvement and calibration summaries without dropping sample counts	Bootstrap and stress-test samples are allowed as synthetic benchmark artifacts and never replace reported observed scores.		/api/v1/data/vintages | /api/v1/data/benchmarks | /api/v1/data/artifacts/{artifact_id}	get_forecast_vintage | get_benchmark_result | get_data_artifact	ForecastVintage | BenchmarkResult | ArtifactManifest	benchmark card | split methodology | reproducibility guide | score interpretation	client.vintages.get | client.benchmarks.get | client.artifacts.download	json | jsonl | csv | parquet	Public benchmark vintage CSV/JSON plus canonical vintage contract	Only one validated public vintage currently served	Expand to additional provenance-clean vintages and add package-level examples
benchmark.model_vs_persistence	backtest_output	tract|county-prefix	total_population|housing units|occupied/vacant units	score_summary_public_safe	launch	low	score_summary_public_safe	Summarized ACS cutoff benchmark score rows	apps/web/src/lib/benchmarks.ts; packages/pipeline/scripts/pipeline/training/plan_public_forecast_vintage_benchmarks.py	/api/v1/benchmarks/backtests; /api/v1/data/benchmarks/{benchmark_id}	get_backtest_scores; get_benchmark_result	yes	docs/public-data/README.md; apps/web/public/openapi.json; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	backtest.model_vs_persistence_cutoff2016_h8	backtest_vintage_outputs	plan_public_forecast_vintage_benchmarks.py summary and completed score rows	tract|county-prefix	total_population|total_housing_units|occupied_units|vacant_units	model_vs_persistence_score_table	score_summary_public_safe	launch	/api/v1/benchmarks/backtests	phase_1	Need public summary schema tied back to one inventory row	Expose summarized score rows and artifact identifiers only	hc.source_snapshot.v1	hc.forecast_vintage.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve complete evaluation artifacts, configs, dataset snapshot IDs, and compact public summaries separately.	normalize target and horizon identifiers | record split and availability cutoffs | distinguish model, public forecast, and persistence baselines	compute comparable score rows | derive improvement and calibration summaries without dropping sample counts	Bootstrap and stress-test samples are allowed as synthetic benchmark artifacts and never replace reported observed scores.		/api/v1/data/vintages | /api/v1/data/benchmarks | /api/v1/data/artifacts/{artifact_id}	get_forecast_vintage | get_benchmark_result | get_data_artifact	ForecastVintage | BenchmarkResult | ArtifactManifest	benchmark card | split methodology | reproducibility guide | score interpretation	client.vintages.get | client.benchmarks.get | client.artifacts.download	json | jsonl | csv | parquet	Public-safe score table plus canonical benchmark result contract	Underlying detailed panels and a published SDK package are not exposed	Add artifact manifest, reproducible scoring notes, and package-level examples
benchmark.raw_single_source_registry	benchmark_metadata	mixed panels	benchmark suites; model adapters; raw panel keys	metadata_serving	launch	low	benchmark_metadata_only	Raw single-source benchmark registry and runner config	packages/pipeline/scripts/pipeline/training/raw_single_source_benchmark_registry.yaml	/api/v1/benchmarks/sources	list_benchmark_datasets|get_benchmark_dataset	yes	docs/training/raw-single-source-benchmarks.md; docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Version registry and runner configuration snapshots with content hashes.	canonicalize dataset, suite, model, and jurisdiction identifiers | resolve every registry entry to immutable snapshot IDs	derive searchable capabilities and compatibility labels	Not applicable; generated compatibility summaries remain derived metadata.		/api/v1/data/catalog | /api/v1/data/benchmarks	list_data_assets | get_benchmark_result	DatasetAsset | BenchmarkResult	catalog reference | benchmark registry | adapter matrix	client.dataAssets.list | client.benchmarks.get	json | csv	Public registry and adapter contract	Raw panels themselves remain private/reviewed	Add dataset cards and adapter examples for Chronos|TimesFM|Nixtla|Prior Labs
benchmark.mag_2023_projection_fixtures	benchmark_panel	mpa|raz|taz	total_population|total_housing_units|employment	manifest_serving	launch	low	validated_current_planning_surface	MAG 2023 public planning/projection services	packages/pipeline/scripts/pipeline/training/extract_arizona_mag_public_fixtures.py; arizona_mag_utility_panel_sources.json	/api/v1/benchmarks/sources	get_data_asset; get_provenance; get_data_artifact	yes	docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	benchmark.mag_2023_projection_fixtures	benchmark_panels	extract_arizona_mag_public_fixtures.py plus MAG 2023 validated services	mpa|raz|taz	population|housing|employment	mag_public_projection_fixture	validated_current_planning_surface	launch	/api/v1/benchmarks/sources with fixture summary now and vintages later	phase_1	Current planning fixture is not a 2016 or 2021 same-vintage backtest	Ship manifest and support-level summary with explicit vintage note	hc.source_snapshot.v1	hc.observation.v1 | hc.panel_row.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve each public fixture and extraction response before normalization.	map planning geographies and metric names to canonical IDs | record publication, retrieval, and availability dates	build leakage-safe panel rows | materialize benchmark splits from immutable snapshot IDs	Synthetic spatial-allocation tests are allowed only as separately labeled benchmark datasets.		/api/v1/data/observations | /api/v1/data/panels | /api/v1/data/benchmarks	query_observations | get_panel_slice | get_benchmark_result	Observation | PanelRow | BenchmarkResult	dataset card | geography mapping | benchmark instructions	client.observations.query | client.panels.getSlice | client.benchmarks.get	json | jsonl | csv | parquet	Source manifest and fixture summary now; vintages later	Current planning surface is not same-vintage historical backtest	Add explicit vintage note and fixture artifact links
benchmark.normalized_training_panels_candidate	training_panel	tract|county|state	public-safe targets and covariates	planned	draft	medium	review_required	Selected aggregate panels to be normalized for public training use	docs/public-data/asset-inventory.tsv	/api/v1/data/observations; /api/v1/data/panels/{panel_id}	query_observations; get_panel_slice	yes	docs/public-data/README.md; apps/web/public/openapi.json; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	benchmark.normalized_training_panels_candidate	benchmark_panels	not yet published; derived from provenance-safe aggregate panels only	tract|county|state	normalized_training_panels	provenance_safe_public_panels	review_required	draft	Phase-3 normalized training panel release if source terms are clear	phase_3	Need normalization spec and source-term review before release	Start with aggregate public-safe panels only	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Training panels never replace raw or normalized parents; preserve snapshot and feature-manifest IDs.	conform all released panels to entity, time, metric, unit, and availability contracts | remove source-specific naming from the canonical export	materialize reproducible feature sets and splits | validate leakage, missingness, duplicates, and geography continuity	Optional synthetic augmentations must be separate partitions with generator and quality manifests.		/api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	get_panel_slice | get_data_artifact	PanelRow | ArtifactManifest	training dataset card | feature dictionary | split and leakage report | loader examples	client.panels.getSlice | client.panels.download	jsonl | csv | parquet	Phase-3 aggregate training panels with canonical observation/panel contracts	Needs explicit source-term review, sample export, and broader metric coverage	Publish small aggregate sample export and training-eligibility notes before release
provenance.arizona_archive_status	provenance_manifest	county|mpa|raz|taz	validated|pending|rejected vintage records	serving	launch	low	public_source_metadata_only	Arizona MAG/OEO/Phoenix vintage archive search ledger	packages/pipeline/scripts/pipeline/training/arizona_mag_public_archive_status.json	/api/v1/benchmarks/sources; /api/v1/data/provenance/{provenance_id}	get_provenance	yes	docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	provenance.arizona_archive_status_ledger	provenance_manifests	arizona_mag_public_archive_status.json	county|mpa|raz|taz	vintage_validation	archive_status_ledger	public_source_metadata_only	launch	/api/v1/benchmarks/sources	phase_1	None beyond endpoint packaging	Publish validated-versus-pending ledger as the provenance floor	hc.source_snapshot.v1	hc.provenance_manifest.v1 | hc.dataset_asset.v1 | hc.access_policy.v1	Version the original manifest and any source-term evidence used to create it.	canonicalize source, snapshot, transform, artifact, and license identifiers | make validated, pending, and rejected states explicit	derive lineage graphs and completeness checks	Not applicable; inferred lineage must be explicitly marked inferred until validated.		/api/v1/data/provenance | /api/v1/data/catalog	get_provenance | list_data_assets	ProvenanceManifest | DatasetAsset	provenance reference | source ledger | license notes	client.provenance.get | client.dataAssets.list	json | jsonl | csv	Public provenance ledger	Docs-site now mentions the client surface, but provenance-specific examples are still missing	Add public docs link and source manifest examples
provenance.arizona_utility_sources	provenance_manifest	tract|mpa|raz|taz	panel inputs; required outputs; source families	serving	launch	low	public_source_metadata_only	Arizona utility panel source manifest	packages/pipeline/scripts/pipeline/training/arizona_mag_utility_panel_sources.json	/api/v1/benchmarks/sources; /api/v1/data/provenance/{provenance_id}	get_provenance	yes	docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	provenance.arizona_utility_panel_sources	provenance_manifests	arizona_mag_utility_panel_sources.json	tract|mpa|raz|taz	panel_inputs	source_manifest	public_source_metadata_only	launch	/api/v1/benchmarks/sources	phase_1	Need one-to-one mapping from manifest to output assets	Publish required outputs and validated fixture references	hc.source_snapshot.v1	hc.provenance_manifest.v1 | hc.dataset_asset.v1 | hc.access_policy.v1	Version the original manifest and any source-term evidence used to create it.	canonicalize source, snapshot, transform, artifact, and license identifiers | make validated, pending, and rejected states explicit	derive lineage graphs and completeness checks	Not applicable; inferred lineage must be explicitly marked inferred until validated.		/api/v1/data/provenance | /api/v1/data/catalog	get_provenance | list_data_assets	ProvenanceManifest | DatasetAsset	provenance reference | source ledger | license notes	client.provenance.get | client.dataAssets.list	json | jsonl | csv	Public source manifest	Needs one-to-one links to released fixture outputs	Add fixture artifact IDs and output status fields
provenance.arizona_enrichment_catalog	provenance_manifest	parcel|tract|mpa|raz|taz	source URLs; roles; vintage safety notes	serving	launch	medium	public_source_metadata_only	Phoenix/Arizona source catalog for planning, utility, water, hazards, transport	packages/pipeline/scripts/pipeline/training/arizona_phoenix_enrichment_source_catalog.json	/api/v1/benchmarks/sources; /api/v1/data/provenance/{provenance_id}	get_provenance	yes	docs/public-data/README.md; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	provenance.arizona_enrichment_source_catalog	provenance_manifests	arizona_phoenix_enrichment_source_catalog.json	parcel|tract|mpa|raz|taz	source_catalog	enrichment_source_catalog	public_source_metadata_only	launch	/api/v1/benchmarks/sources	phase_1	Catalog is safe but mirrored raw pulls are not	Publish catalog metadata only and keep raw extracts private	hc.source_snapshot.v1	hc.provenance_manifest.v1 | hc.dataset_asset.v1 | hc.access_policy.v1	Version the original manifest and any source-term evidence used to create it.	canonicalize source, snapshot, transform, artifact, and license identifiers | make validated, pending, and rejected states explicit	derive lineage graphs and completeness checks	Not applicable; inferred lineage must be explicitly marked inferred until validated.		/api/v1/data/provenance | /api/v1/data/catalog	get_provenance | list_data_assets	ProvenanceManifest | DatasetAsset	provenance reference | source ledger | license notes	client.provenance.get | client.dataAssets.list	json | jsonl | csv	Public metadata only; raw pulls private	Raw extracts and scraped documents are not licensed/reviewed	Keep catalog public and add retrieval metadata fields
source_review.master_catalog	source_metadata	global; 1671 total discovered/mentioned sources	source status; cadence; jurisdiction; family; leakage safety	metadata_only	draft	medium	mixed_unknown	Comprehensive source review ledger from repo, docs, storage, and discovery	packages/pipeline/scripts/data_acquisition/docs/source_review/coverage_summary.json; property_source_coverage_summary.json	/api/v1/data/assets/source_review.master_catalog; /api/v1/data/sources; /api/v1/data/provenance/{provenance_id}	get_data_asset; list_data_sources; get_provenance	yes	packages/pipeline/scripts/data_acquisition/docs/source_review/README.md	client.dataAssets.get(); client.sources.list(); client.provenance.get()	not_in_inventory												hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.source_snapshot.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Retain discovery and review snapshots, including unresolved license status.	canonicalize source family, geography, cadence, access method, terms, and review state	derive coverage, freshness, confidence, and missing-source summaries	Not applicable; discovery hypotheses remain labeled unverified metadata.		/api/v1/data/sources | /api/v1/data/catalog | /api/v1/data/provenance	list_data_sources | list_data_assets | get_provenance	SourceSnapshot | DatasetAsset | ProvenanceManifest	source catalog | coverage ledger | review-state definitions	client.sources.list | client.dataAssets.list | client.provenance.get	json | csv	Public summary only after cleanup	Contains discovered candidates, malformed rows, vendors, and storage artifacts	Create cleaned source-family summary before public exposure
source_review.property_coverage	source_metadata	US national plus state/local rows	assessment|survey|proxy coverage; source access mode; source-to-coverage feature mapping	metadata_only	draft	medium	mixed_unknown	US property source coverage generated hierarchy	packages/pipeline/scripts/data_acquisition/docs/source_review/property_source_coverage.md; docs/public-data/source-coverage-index.tsv; docs/public-data/source-coverage-map.geojson; docs/public-data/reference-boundaries.geojson	/api/v1/data/assets/source_review.property_coverage; /api/v1/data/sources; /api/v1/data/coverage/map; /api/v1/data/coverage/sources; /api/v1/data/artifacts/public-data.source_coverage_index_tsv/download; /api/v1/data/artifacts/public-data.reference_boundaries_geojson/download; /api/v1/data/provenance/{provenance_id}	get_data_asset; list_data_sources; list_source_coverage_index; get_provenance	yes	/docs/data coverage atlas; source_review docs	client.dataAssets.get(); client.sources.list(); client.coverage.listSources(); client.provenance.get()	not_in_inventory												hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.source_snapshot.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Retain discovery and review snapshots, including unresolved license status.	canonicalize source family, geography, cadence, access method, terms, and review state	derive coverage, freshness, confidence, and missing-source summaries	Not applicable; discovery hypotheses remain labeled unverified metadata.		/api/v1/data/sources | /api/v1/data/catalog | /api/v1/data/provenance	list_data_sources | list_data_assets | get_provenance	SourceSnapshot | DatasetAsset | ProvenanceManifest	source catalog | coverage ledger | review-state definitions	client.sources.list | client.dataAssets.list | client.provenance.get	json | csv	Public source-to-geography index with public reference boundaries where available, generalized coverage regions elsewhere, and official upstream links	Source-native boundaries are not redistributed until source/license review is explicit	Promote reviewed native-source geometry links source-by-source after terms review
schema.canonical_property_panel	schema	parcel|jurisdiction|year	canonical property fields; value; land; improvement; dwelling; sqft; lat/lon	documented_schema	draft	medium	internal_schema	Canonical property training schema and source mappings	packages/pipeline/scripts/data_acquisition/docs/MASTER_SCHEMA.md; schema_registry.yaml	/api/v1/data/assets/schema.canonical_property_panel; /api/v1/data/schemas	get_data_asset; list_data_schemas; get_data_schema	yes	data_acquisition docs	client.dataAssets.get(); client.schemas.get()	not_in_inventory												hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.artifact_manifest.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Version SQL, YAML, JSON Schema, migration, and compatibility snapshots by content hash.	assign stable schema IDs and semantic versions | record compatibility and deprecation state	generate language types, validators, OpenAPI components, and migration reports from canonical schemas	Not applicable.		/api/v1/data/schemas | /api/v1/data/artifacts/{artifact_id}	list_data_schemas | get_data_schema	DatasetAsset | ArtifactManifest	schema reference | compatibility policy | migration guide	client.schemas.list | client.schemas.get	json	Publish as schema reference before panel release	Current schema doc is training-oriented and has some mojibake/legacy notes	Create public canonical schema doc with license and sensitivity fields
panel.hcad_houston	input_panel	parcel; Harris County TX	assessed value; land/improvement; property features; coordinates	panelized_serving_source	hold	high	license_review_required	Harris County appraisal district data and HCAD panels	packages/pipeline/scripts/data_acquisition/docs/schema_registry.yaml; jurisdictions.yaml	/api/v1/data/assets/panel.hcad_houston; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}; compatibility indirect via /api/v1/forecast/lot|unit|address|tract	get_data_asset; query_observations; query_features; get_panel_slice	yes	README coverage docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	holdback.raw_parcel_unit_histories	holdback_assets	raw parcel and unit histories plus parcel-level backtest panels	parcel|unit	property_history	assessor_histories	license_review_required	hold	Do not release in phase 1	phase_3	Raw parcel and unit histories exceed the conservative public floor	Limit public release to tract or ZCTA or county or state aggregates	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Aggregate and forecast outputs only	Raw parcel history is not public release-safe	Expose only aggregate derived benchmarks after license review
panel.florida_dor	input_panel	parcel|statewide FL	assessed/taxable/just values; sales; homestead; parcel fields	panelized_serving_source	hold	high	license_review_required	Florida DOR NAL/SDF and statewide parcel panels	packages/pipeline/scripts/data_acquisition/panel/florida_dor; jurisdictions.yaml	/api/v1/data/assets/panel.florida_dor; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}; compatibility indirect via /api/v1/forecast/lot|unit|tract	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md; docs/api/README.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	holdback.raw_parcel_unit_histories	holdback_assets	raw parcel and unit histories plus parcel-level backtest panels	parcel|unit	property_history	assessor_histories	license_review_required	hold	Do not release in phase 1	phase_3	Raw parcel and unit histories exceed the conservative public floor	Limit public release to tract or ZCTA or county or state aggregates	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Aggregate derived features only in early public releases	Raw statewide parcel histories need source-term review	Prepare aggregate-safe panel candidate for phase 3
panel.nyc	input_panel	parcel|BBL|tabblock|city	assessment values; land; tax class; H3; geometry joins	panelized_serving_source	hold	high	license_review_required	NYC DOF RPAD and MapPLUTO joined panel	packages/pipeline/scripts/data_acquisition/panel/nyc_rpad; raw registry	/api/v1/data/assets/panel.nyc; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}; compatibility indirect via /api/v1/forecast/tabblock|tract	forecast_by_tabblock|forecast_by_tract	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	holdback.raw_parcel_unit_histories	holdback_assets	raw parcel and unit histories plus parcel-level backtest panels	parcel|unit	property_history	assessor_histories	license_review_required	hold	Do not release in phase 1	phase_3	Raw parcel and unit histories exceed the conservative public floor	Limit public release to tract or ZCTA or county or state aggregates	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Benchmark metadata only until raw terms reviewed	Parcel/BBL panel is sensitive and not in public catalog as data	Add aggregate NYC benchmark fixture only if license-safe
panel.sf_ca	input_panel	parcel; San Francisco	assessed value; land/improvement; sales date; sqft; year built; lat/lon	panelized_benchmark_source	metadata_only	high	license_review_required	San Francisco secured roll assessor data	packages/pipeline/scripts/data_acquisition/docs/MASTER_SCHEMA.md; raw registry	/api/v1/data/assets/panel.sf_ca; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and score summaries only	Raw parcel panel not public surfaced	Add aggregate benchmark candidate if public terms are clear
panel.seattle_king_wa	input_panel	parcel; King County	assessment; land/improvement; property attributes	panelized_benchmark_source	metadata_only	high	license_review_required	Seattle/King County assessor and GIS data	packages/pipeline/scripts/pipeline/training/jurisdictions.yaml; raw registry	/api/v1/data/assets/panel.seattle_king_wa; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and aggregate summaries only	Source access has known blocking risk in schema docs	Verify current bulk access and license before release
panel.cook_county_il	input_panel	parcel; Cook County	mailed/certified/board land/building/total values	panelized_benchmark_source	metadata_only	high	license_review_required	Cook County assessor assessed values	packages/pipeline/scripts/data_acquisition/docs/MASTER_SCHEMA.md; raw registry	/api/v1/data/assets/panel.cook_county_il; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and score summaries only	Missing sales and physical attributes in verified schema	Add source card and aggregate-safe benchmark transforms
panel.philly	input_panel	parcel; Philadelphia	market/assessed value; land/improvement; area; year built	panelized_benchmark_source	metadata_only	high	license_review_required	Philadelphia assessor/OPA-style panel	packages/pipeline/scripts/pipeline/training/jurisdictions.yaml; raw registry	/api/v1/data/assets/panel.philly; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and score summaries only	Raw panel not public surfaced	Add source provenance card
panel.txgio_texas	input_panel	parcel; Texas	statewide assessor values; prior value; growth fields	panelized_benchmark_source	metadata_only	high	license_review_required	Texas statewide parcel/assessor panel where available	packages/pipeline/scripts/data_acquisition/panel/txgio; raw registry	/api/v1/data/assets/panel.txgio_texas; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and aggregate summaries only	Source URL/API issues noted in schema docs	Review TXGIO source status before any data exposure
panel.maricopa_az	input_panel	parcel|tract|taz|raz|mpa	values; sales; year built; land; subdivision; developability	source_catalog_ready	metadata_only	high	license_review_required	Maricopa assessor parcel universe and related tables	arizona_phoenix_enrichment_source_catalog.json; jurisdictions.yaml	/api/v1/data/assets/panel.maricopa_az; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/public-data/README.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	provenance.arizona_enrichment_source_catalog	provenance_manifests	arizona_phoenix_enrichment_source_catalog.json	parcel|tract|mpa|raz|taz	source_catalog	enrichment_source_catalog	public_source_metadata_only	launch	/api/v1/benchmarks/sources	phase_1	Catalog is safe but mirrored raw pulls are not	Publish catalog metadata only and keep raw extracts private	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Source catalog only; aggregate panel later	Raw parcel extracts and assessor terms need review	Keep raw private and publish only metadata/crosswalk summaries
panel.massgis	input_panel	parcel; Massachusetts	assessed value; sales; building fields; geometry	storage_verified	metadata_only	high	license_review_required	MassGIS parcel geodatabase	packages/pipeline/scripts/data_acquisition/docs/MASTER_SCHEMA.md; jurisdictions.yaml	/api/v1/data/assets/panel.massgis; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry only	Raw GDB is large and not public-surfaced	Create source card after terms review
panel.vancouver_bc	input_panel	parcel; Vancouver/BC	assessed value; land/improvement; year built	panelized_benchmark_source	metadata_only	high	license_review_required	BC Assessment style panel	raw_single_source_benchmark_registry.yaml	/api/v1/data/assets/panel.vancouver_bc; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Registry and score summaries only	Jurisdiction/source terms need review	Source-card and aggregate-only candidate
panel.uk_ppd	input_panel	transaction|parcel-derived; UK	sale price; sale year; transaction id	panelized_benchmark_source	metadata_only	medium	public_transaction_source	UK Price Paid Data transaction panel	raw_single_source_benchmark_registry.yaml; schema_registry.yaml	/api/v1/data/assets/panel.uk_ppd; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Good candidate for benchmark fixture after schema cleanup	Download/Cloud Function issue noted in schema docs	Verify access and publish benchmark-compatible sample
panel.france_dvf	input_panel	transaction|parcel-derived; France	valeur fonciere; sale date; type; area; lat/lon	panelized_benchmark_source	metadata_only	medium	public_transaction_source	France DVF transaction data	packages/pipeline/scripts/data_acquisition/docs/MASTER_SCHEMA.md; raw registry	/api/v1/data/assets/panel.france_dvf; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Good candidate for benchmark fixture after schema cleanup	Need license/readme and normalized output schema	Add public fixture candidate with source citation metadata
panel.acs_nationwide	input_panel	tract|county|state|national	value; income; rent; population; housing; tenure; mobility; employment; education	panelized_serving_source	draft	low	public_source	ACS tract and hierarchical history	panel/jurisdiction=acs_nationwide; apps/web target metric serving	/api/v1/data/observations; /api/v1/data/panels/{panel_id}; /api/v1/forecast/tract/metric	query_observations; get_panel_slice; get_target_metric_forecast	yes	docs/public-data/README.md; apps/web/public/openapi.json; docs/training; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	benchmark.normalized_training_panels_candidate	benchmark_panels	not yet published; derived from provenance-safe aggregate panels only	tract|county|state	normalized_training_panels	provenance_safe_public_panels	review_required	draft	Phase-3 normalized training panel release if source terms are clear	phase_3	Need normalization spec and source-term review before release	Start with aggregate public-safe panels only	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Best candidate for training-eligible aggregate panel with live canonical query surfaces	Sample artifact, published SDK package, and expanded metric docs still missing	Add sample export, package-level examples, and panel card
panel.austin_permit	input_panel	parcel|permit	redevelopment_event; permit counts; job valuation; review delay; units	panelized_benchmark_source	metadata_only	medium	license_review_required	Austin permit/redevelopment panel	raw_single_source_benchmark_registry.yaml; promote_austin_permit_panel_modal.py	/api/v1/data/assets/panel.austin_permit; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training/raw-single-source-benchmarks.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.raw_single_source_registry	benchmark_panels	raw_single_source_benchmark_registry.yaml	mixed	raw_source_benchmarks	raw_single_source_registry	benchmark_metadata_only	launch	/api/v1/benchmarks/sources plus catalog	phase_1	Need dataset-card framing and adapter examples for adjacent repos	Expose suites and model families without mirroring raw panels	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Event benchmark candidate, not phase-1 data release	Parcel-linked event data needs review	Create aggregate redevelopment benchmark summary first
panel.global_universal	input_panel	multi-jurisdiction	panelized property and context features	training_internal	draft	high	mixed_license_review	Universal/global training panels and bundles	build_global_panel.py; build_universal_panel_modal.py; src/data/dataset.py	/api/v1/data/assets/panel.global_universal; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/training	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	benchmark.normalized_training_panels_candidate	benchmark_panels	not yet published; derived from provenance-safe aggregate panels only	tract|county|state	normalized_training_panels	provenance_safe_public_panels	review_required	draft	Phase-3 normalized training panel release if source terms are clear	phase_3	Need normalization spec and source-term review before release	Start with aggregate public-safe panels only	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Do not publish raw; derive aggregate-safe panels later	Mixes many sources with different terms	Document lineage before exposing any subset
context.fred_macro	context_input	national|state|year	mortgage30; fed funds; treasury; CPI; oil; unemployment; VIX; HPI	panel_context	draft	low	public_api_terms	FRED and macro rate series	schema_registry.yaml; cache_market_sources_modal.py	/api/v1/data/assets/context.fred_macro; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate public covariate panel and benchmark-famous source	Not represented in public-data inventory	Add source manifest and normalized macro panel row
context.fhfa_case_shiller	context_input	national|state|metro|year	HPI indices; housing price proxies	panel_context	draft	low	public_source	FHFA HPI and Case-Shiller series	schema_registry.yaml; docs/ml/v15_source_benchmark_matrix.md	/api/v1/data/assets/context.fhfa_case_shiller; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Good public benchmark covariate	Some status marked false/incomplete in schema registry	Verify current cached data and add manifest row
context.bls_labor	context_input	national|state|county/month	labor market and inflation indicators	discovered_or_partial	draft	low	public_source	BLS labor/inflation sources	source_review coverage; docs/ml/v15_source_benchmark_matrix.md	/api/v1/data/assets/context.bls_labor; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/ml/v15_source_benchmark_matrix.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate benchmark-famous covariate	Not clearly panelized in current public-data stack	Add source status and panelization decision
context.census_acs	input_panel	tract|county|state|national	demographics; housing; income; rent; education; employment	panelized	draft	low	public_source	ACS 5-year and 1-year estimates; Census APIs	schema_registry.yaml; panel/acs scripts	/api/v1/data/observations; /api/v1/data/panels/{panel_id}	query_observations; get_panel_slice	yes	docs/public-data/README.md; apps/web/public/openapi.json; data_acquisition docs; apps/web/src/app/(marketing)/docs/sdk/page.tsx	apps/web/src/lib/public-data-client.ts	benchmark.normalized_training_panels_candidate	benchmark_panels	not yet published; derived from provenance-safe aggregate panels only	tract|county|state	normalized_training_panels	provenance_safe_public_panels	review_required	draft	Phase-3 normalized training panel release if source terms are clear	phase_3	Need normalization spec and source-term review before release	Start with aggregate public-safe panels only	hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep exact jurisdiction source files append-only, partitioned by source and retrieval snapshot.	resolve property and geography identity | normalize metric names, units, currencies, period semantics, and missingness | retain source record IDs	create as-of-safe features | panelize by entity and period | version all crosswalks and feature sets	Aggregation, imputation, and privacy-preserving samples require asset policy; raw high-sensitivity property rows are never silently synthesized or published.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels | /api/v1/data/artifacts/{artifact_id}	query_observations | query_features | get_panel_slice | get_data_artifact	Observation | FeatureRecord | PanelRow | ArtifactManifest	source card | field mapping | feature dictionary | panel schema | license and access note	client.observations.query | client.features.query | client.panels.getSlice | client.artifacts.download	jsonl | csv | parquet	Best first training-eligible public panel with canonical normalized observation and panel routes	Needs sample export, broader field card, and public panel documentation	Add canonical sample export plus metric dictionary and provenance notes
context.lehd_lodes	context_input	block group|county|year	jobs by demographic/industry; commute/workplace features	panel_context	draft	low	public_source	Census LEHD/LODES WAC data	data_source_ledger.md; schema_registry.yaml	/api/v1/data/assets/context.lehd_lodes; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate aggregate covariate panel	Not surfaced in REST/MCP/OpenAPI	Add source manifest and release decision
context.fema_disasters_nri	context_input	county|tract|hazard	expected annual loss; vulnerability; disaster flags; flood risk	panel_context	draft	low	public_source	FEMA disasters, NRI, flood/hazard products	data_source_ledger.md; schema_registry.yaml	/api/v1/data/assets/context.fema_disasters_nri; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md; source_review docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate hazard benchmark/covariate	Some sources marked not in GCS or portal-dependent	Verify cached fields and publish manifest first
context.epa_aqi	context_input	county|year	median AQI; PM2.5 exceedance days	panel_context	draft	low	public_source	EPA AirData/AQI archives	data_source_ledger.md; schema_registry.yaml	/api/v1/data/assets/context.epa_aqi; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate environmental covariate panel	Not in public-data inventory	Add manifest row and aggregate panel candidate
context.hud_fmr	context_input	county|year	rent benchmarks	panel_context_or_pending	draft	low	public_source	HUD Fair Market Rent data	schema_registry.yaml	/api/v1/data/assets/context.hud_fmr; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate public covariate	Registry marks some status incomplete	Add source verification and manifest row
context.noaa_climate_weather	context_input	station|county|city|year	temperature; weather; heat; design criteria	panel_context_or_pending	draft	low	public_source	NOAA GHCN/NCEI climate and engineering weather	data_source_ledger.md; arizona_phoenix_enrichment_source_catalog.json	/api/v1/data/assets/context.noaa_climate_weather; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md; docs/ml/v15_source_benchmark_matrix.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate climate benchmark/covariate	Not normalized into public panel yet	Add source manifest and aggregation spec
context.irs_migration	context_input	county|year	migration flows and income proxies	pending_or_context	draft	low	public_source	IRS county migration data	schema_registry.yaml	/api/v1/data/assets/context.irs_migration; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate mobility covariate	Not in current public-data inventory	Decide whether to include in aggregate panel
context.census_building_permits	context_input	county|month|place|permit	permit buildings; permit units; construction value; construction pipeline	normalized_public_bps_rows	launch	low	public_source	Census Building Permits Survey county-month permits and local permit systems	schema_registry.yaml; docs/ml/v15_source_benchmark_matrix.md; docs/prediction_markets/permit-zoning-data-readiness.md	/api/v1/data/permits/census-bps/county-monthly; /api/v1/data/assets/context.census_building_permits	get_census_bps_county_monthly; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.permits.queryCensusBpsCountyMonthly(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized Census BPS county-month rows; keep local permit systems metadata-only until normalized	Only Census BPS county-month rows are public; local permits, zoning, environmental permits, and entitlement feeds need normalization	Add refresh monitor, source-snapshot settlement manifests, and non-BPS permit/zoning row normalization
context.fast41_federal_permitting	context_input	project|state|county|agency|sector	project status; project sector; lead agency; project location; federal permitting context	normalized_public_project_inventory_rows	launch	low	public_source	FAST-41 federal permitting project inventory snapshot and Permitting Dashboard full-dataset candidate	docs/prediction_markets/permit-zoning-data-readiness.md; packages/pipeline/scripts/data_acquisition/permits_zoning/normalize_fast41_projects.py	/api/v1/data/permits/fast41/projects; /api/v1/data/assets/context.fast41_federal_permitting	get_fast41_projects; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.permits.queryFast41Projects(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized FAST-41 project inventory for public project/status/sector/location screening only	Full Permitting Dashboard milestone/event dataset mcm3-xbid returned unavailable and is not acquired; project inventory lacks milestone-date fields for settlement	Retry cloud-first full-dataset acquisition; normalize milestone/event rows; add recurring snapshots and change detection
context.epa_echo_npdes_sewer_overflows	context_input	permit|event|state|waterbody|coordinate	sewer overflow event count; reported discharge volume gallons; event type; wet weather; receiving waters	normalized_public_event_rows	launch	low	public_source	EPA ECHO NPDES current sewer-overflow and bypass event rows	docs/prediction_markets/permit-zoning-data-readiness.md; packages/pipeline/scripts/data_acquisition/permits_zoning/normalize_epa_echo_npdes_sewer_overflows.py	/api/v1/data/environmental/epa-echo/npdes-sewer-overflows; /api/v1/data/assets/context.epa_echo_npdes_sewer_overflows	get_epa_echo_npdes_sewer_overflows; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.environmental.queryEpaEchoNpdesSewerOverflows(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized EPA ECHO current sewer-overflow rows for public event/count/volume context only	ICIS-NPDES outfalls and non-effluent violations are exposed separately; limits, effluent violations, detailed permit/facility rows, detailed enforcement rows, and refresh/checksum/replacement policy remain missing for settlement	Add recurring refresh/checksum policy; normalize full ICIS-NPDES limits, effluent, detailed permit/facility, and detailed enforcement rows
context.epa_echo_npdes_sewer_overflow_history	context_input	permit|event|version|state|waterbody|coordinate	sewer overflow event versions; current report flag; replaced date; replacing payload id; reported discharge volume gallons; event type; receiving waters	normalized_public_event_history_rows	launch	low	public_source	EPA ECHO NPDES all-version sewer-overflow and bypass event rows	docs/prediction_markets/permit-zoning-data-readiness.md; packages/pipeline/scripts/data_acquisition/permits_zoning/normalize_epa_echo_npdes_sewer_overflow_history.py	/api/v1/data/environmental/epa-echo/npdes-sewer-overflow-history; /api/v1/data/assets/context.epa_echo_npdes_sewer_overflow_history	get_epa_echo_npdes_sewer_overflow_history; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.environmental.queryEpaEchoNpdesSewerOverflowHistory(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized EPA ECHO all-version sewer-overflow rows for public event amendment/replacement context only	ICIS-NPDES outfalls and non-effluent violations are exposed separately; limits, effluent violations, detailed permit/facility rows, detailed enforcement rows, and refresh/checksum/revision policy remain missing for settlement	Add recurring refresh/checksum policy; normalize full ICIS-NPDES limits, effluent, detailed permit/facility, and detailed enforcement rows
context.epa_echo_npdes_outfalls	context_input	permit|facility|outfall|state|waterbody|coordinate	NPDES permit status; facility/outfall location; permit component; current violation flag; CWA status; waterbody	normalized_public_partitioned_outfall_rows	launch	low	public_source	EPA ECHO ICIS-NPDES outfalls layer current facility, outfall, permit, and compliance context rows	docs/prediction_markets/permit-zoning-data-readiness.md; packages/pipeline/scripts/data_acquisition/permits_zoning/normalize_epa_echo_npdes_outfalls.py	/api/v1/data/environmental/epa-echo/npdes-outfalls; /api/v1/data/assets/context.epa_echo_npdes_outfalls	get_epa_echo_npdes_outfalls; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.environmental.queryEpaEchoNpdesOutfalls(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized partitioned EPA ECHO ICIS-NPDES outfall rows for public facility/outfall/permit context only	ICIS-NPDES non-effluent violations are exposed separately; limits, effluent violations, detailed permit/facility rows, detailed enforcement rows, and refresh/checksum/revision policy remain missing for settlement	Normalize full ICIS-NPDES limits, effluent, detailed permit/facility, and detailed enforcement rows; add recurring refresh/change detection
context.epa_echo_npdes_violations	context_input	permit|violation|state|date|rnc|enforcement_link_count	NPDES permit violation category; violation code; RNC detection/resolution; linked enforcement count	normalized_public_partitioned_violation_rows	launch	low	public_source	EPA ECHO ICIS-NPDES non-effluent permit schedule, compliance schedule, and single-event violation rows	docs/prediction_markets/permit-zoning-data-readiness.md; packages/pipeline/scripts/data_acquisition/permits_zoning/normalize_epa_echo_npdes_violations.py	/api/v1/data/environmental/epa-echo/npdes-violations; /api/v1/data/assets/context.epa_echo_npdes_violations	get_epa_echo_npdes_violations; get_data_asset	yes	docs/api/README.md; docs/api/MCP.md; docs/prediction_markets/permit-zoning-data-readiness.md	client.environmental.queryEpaEchoNpdesViolations(); client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Use normalized partitioned EPA ECHO ICIS-NPDES non-effluent violation rows for public permit/compliance context only	ICIS-NPDES effluent violations, limits, detailed enforcement action rows, and refresh/checksum/revision policy are missing for settlement	Normalize effluent/limits/detailed enforcement action tables; add recurring refresh/change detection and resolver policy
context.ms_buildings_nlcd	context_input	parcel|tract|raster	footprints; developed land; land cover	panel_context_or_pending	draft	medium	public_source_with_terms	Microsoft building footprints and NLCD land cover	schema_registry.yaml	/api/v1/data/assets/context.ms_buildings_nlcd; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Aggregate feature manifest only	Raw geospatial artifacts need terms/size review	Publish metadata and aggregate transforms only
context.usda_wildfire_land	context_input	raster|county|state|country	wildfire hazard; agricultural/land price context	pending_or_context	draft	low	public_source	USDA wildfire hazard and land values	data_source_ledger.md; ingest_usda_land_values.py; ingest_fao_land_prices.py	/api/v1/data/assets/context.usda_wildfire_land; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_source_ledger.md	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate land/hazard covariate	Not in public-data inventory	Add manifest row after verifying actual cached artifacts
context.state_oil_gas_energy	context_input	state|county|field	oil/gas production and regulatory context	pending_or_context	draft	low	mixed_public_source	State oil/gas and energy context sources	state_oil_gas registry; build_state_oil_gas_panel.py	/api/v1/data/assets/context.state_oil_gas_energy; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate economic/land-use covariate	Not connected to public-data surface	Add source family row or keep internal until validated
context.eurostat_global_rates	context_input	country|region|year	rates; HPI; macro indicators	pending_or_context	draft	low	public_source	Eurostat/global panels and BOE/ECB/INSEE macro sources	enrich_eurostat_globals.py; schema_registry.yaml	/api/v1/data/assets/context.eurostat_global_rates; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	data_acquisition docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Candidate international benchmark covariates	Not part of Homecastr public API focus yet	Keep out of phase 1; revisit for global benchmarks
prediction.parcl_ppsf	prediction_market_input	city|metro|national	daily PPSF; settlement value estimates	cached_or_accessible	hold	medium	third_party_api_terms	Parcl Labs API daily PPSF series for 9 markets	packages/pipeline/scripts/prediction_markets/parcl_fetch.py; README.md	/api/v1/data/assets/prediction.parcl_ppsf; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	prediction_markets README	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Snapshot third-party market payloads with retrieval time and terms state.	normalize market, contract, geography, price, probability, and close-time semantics | record third-party identifiers	derive calibrated probabilities and aligned housing-market features without rewriting source observations	Scenario probabilities must be labeled synthetic and preserve parent market snapshots.		/api/v1/data/observations | /api/v1/data/features	query_observations | query_features	Observation | FeatureRecord	source and terms card | market semantics | feature mapping	client.observations.query | client.features.query	json | jsonl | csv	Do not public-release without terms review	API key and Parcl terms likely restrict redistribution	Keep internal; publish only methodology if allowed
prediction.polymarket_markets	prediction_market_input	market contract|city odds	settlement odds; market prices; prediction outputs	cached_or_accessible	hold	medium	third_party_terms	Polymarket market pages/API and market odds	packages/pipeline/scripts/prediction_markets/polymarket_predictor.py	/api/v1/data/assets/prediction.polymarket_markets; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	prediction_markets README	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Snapshot third-party market payloads with retrieval time and terms state.	normalize market, contract, geography, price, probability, and close-time semantics | record third-party identifiers	derive calibrated probabilities and aligned housing-market features without rewriting source observations	Scenario probabilities must be labeled synthetic and preserve parent market snapshots.		/api/v1/data/observations | /api/v1/data/features	query_observations | query_features	Observation | FeatureRecord	source and terms card | market semantics | feature mapping	client.observations.query | client.features.query	json | jsonl | csv	Internal research/trading only	Live market data and trading use need policy review	Keep outside public-data release
prediction.redfin_realtor_market_inputs	prediction_market_input	market|listing aggregate	market trend inputs	discovered_or_cached	hold	medium	third_party_terms	Redfin scraper and related market data scripts	packages/pipeline/scripts/prediction_markets/redfin_scraper.py	/api/v1/data/assets/prediction.redfin_realtor_market_inputs; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	source_review docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Snapshot third-party market payloads with retrieval time and terms state.	normalize market, contract, geography, price, probability, and close-time semantics | record third-party identifiers	derive calibrated probabilities and aligned housing-market features without rewriting source observations	Scenario probabilities must be labeled synthetic and preserve parent market snapshots.		/api/v1/data/observations | /api/v1/data/features	query_observations | query_features	Observation | FeatureRecord	source and terms card | market semantics | feature mapping	client.observations.query | client.features.query	json | jsonl | csv	Do not public-release without terms review	Scraped/vendor-like inputs may be restricted	Document as internal-only unless licensing is explicit
ops.training_runs	ops_internal	internal	jurisdiction; origin year; instance type; elapsed hours; actual cost	authenticated_internal	hold	high	internal_only	Training run table and compute/cost records	apps/web/src/app/api/v1/training-runs/route.ts	/api/v1/training-runs	list_training_runs	yes	docs/api/README.md	client.dataAssets.get()	holdback.training_cost_history	holdback_assets	/api/v1/training-runs	internal	training_ops	internal_cost_history	internal_only	hold	Remain non-public	hold	Compute and cost history are internal ops data	Keep behind authenticated internal surfaces	hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	Demo key blocked; cost data internal	Keep out of public-data package
ops.product_analytics	ops_internal	internal	event counts; session IDs; anonymous IDs; page paths	authenticated_internal	hold	high	internal_only	Product event table and session analytics	apps/web/src/app/api/v1/analytics/events/route.ts; product-analytics libs	/api/v1/analytics/events	get_analytics_events	yes	docs/api/README.md	client.dataAssets.get()	holdback.analytics_session_data	holdback_assets	/api/v1/analytics/events	internal	product_usage	internal_analytics	internal_only	hold	Remain non-public	hold	User and session analytics are not public benchmark material	Keep behind non-demo API key gates	hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	User/session analytics are not benchmark material	Keep behind non-demo API key and out of public docs examples
ops.api_usage	ops_internal	internal	request counts; endpoints; source; status	authenticated_internal	hold	high	internal_only	API usage logs	apps/web/src/app/api/v1/usage/route.ts	/api/v1/usage	get_data_asset	yes	docs/api/README.md	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	Customer/API usage data is operational telemetry	Add to holdback inventory if public-data gating wants completeness
ops.status_history	ops_internal	internal component health	status; freshness; latency	public_status	public_low	low	public_operational_metadata	Status snapshots and health checks	apps/web/src/app/api/v1/status/route.ts; status/history route	/api/v1/status; /api/v1/status/history	get_data_asset	yes	docs/api/README.md	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Public operational status only	Not a data benchmark source	Keep separate from public-data catalog
ops.saved_searches_watchlist	ops_internal	user account data	search criteria; watched geographies; user preferences	authenticated_app	hold	high	internal_only	User saved searches and watchlist records	apps/web/src/app/api/saved-searches/route.ts; apps/web/src/app/api/watchlist/route.ts	/api/v1/data/assets/ops.saved_searches_watchlist	get_data_asset	yes	app-only	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	User-specific product data	Keep excluded from public-data and benchmark surfaces
ops.leads_contact_billing	ops_internal	internal PII/business	email; lead metadata; billing/customer state	authenticated_or_admin	hold	high	internal_only	Lead capture, contact, API key signup, Stripe billing	apps/web/src/app/api/lead-capture/route.ts; contact; checkout; portal	/api/v1/data/assets/ops.leads_contact_billing	get_data_asset	yes	app-only	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	PII and billing data	Keep excluded from data productization
eval.model_quality_results	backtest_output	multi-jurisdiction; origin years	model errors; calibration; compact/full eval payloads; checkpoint references	internal_eval_artifacts	draft	medium	internal_model_eval	Model eval JSONs, compact reports, diagnostics, and scratch summaries	packages/pipeline/scripts/inference/eval/results; scratch/summarize_latest_eval_metrics_modal.py	/api/v1/data/assets/eval.model_quality_results; /api/v1/data/vintages/{vintage_id}; /api/v1/data/benchmarks/{benchmark_id}	get_data_asset; get_public_forecast_vintage; get_backtest_scores; get_benchmark_result	yes	docs/training; docs/ml; local eval result files	client.dataAssets.get(); client.vintages.get(); client.benchmarks.get()	not_in_inventory												hc.source_snapshot.v1	hc.forecast_vintage.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve complete evaluation artifacts, configs, dataset snapshot IDs, and compact public summaries separately.	normalize target and horizon identifiers | record split and availability cutoffs | distinguish model, public forecast, and persistence baselines	compute comparable score rows | derive improvement and calibration summaries without dropping sample counts	Bootstrap and stress-test samples are allowed as synthetic benchmark artifacts and never replace reported observed scores.		/api/v1/data/vintages | /api/v1/data/benchmarks | /api/v1/data/artifacts/{artifact_id}	get_forecast_vintage | get_benchmark_result | get_data_artifact	ForecastVintage | BenchmarkResult | ArtifactManifest	benchmark card | split methodology | reproducibility guide | score interpretation	client.vintages.get | client.benchmarks.get | client.artifacts.download	json | jsonl | csv | parquet	Public-safe benchmark summaries only	Raw eval artifacts may reference private panels, checkpoints, and R2 keys	Summarize selected rows through /api/v1/benchmarks/backtests after QA
model.checkpoints_bundles_manifests	model_internal	modal volume|R2|GCS	model weights; dataset bundles; latent caches; run manifests; output keys	training_internal	hold	high	internal_only	R2/GCS checkpoints, tensor-window bundles, cached latent bundles, run manifests, checkpoint exports	scratch/*r2*_modal.py; packages/pipeline/scripts/pipeline/training/build_global_*; packages/pipeline/scripts/inference/upload/checkpoint	/api/v1/data/assets/model.checkpoints_bundles_manifests	get_data_asset	yes	docs/training and scratch scripts	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.model_artifact.v1 | hc.benchmark_result.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve checkpoints, configs, feature manifests, and evaluation bundles under restricted immutable snapshots.	assign stable model, code, training-data, and evaluation IDs | separate model metadata from downloadable weights	derive public model cards and benchmark summaries from reviewed metadata	Generated model documentation is derived metadata; weights and outputs retain original access policy.		/api/v1/internal/data/models | /api/v1/data/benchmarks | /api/v1/data/artifacts/{artifact_id}	get_model_metadata | get_benchmark_result | get_data_artifact	ModelArtifact | BenchmarkResult | ArtifactManifest	model card | evaluation report | artifact access policy	client.admin.models.get | client.benchmarks.get | client.artifacts.download	json	Do not publish as data surface	Contains model/IP artifacts and private storage references	Keep as internal lineage; expose only public model_version labels
geography.boundaries_crosswalks_labels	geography_reference	tract|zcta|county|state|city|osm labels	geographic labels; crosswalks; centroids; names; hierarchy	serving_reference	draft	low	public_source_or_generated	TIGER/Line, GNIS, OSM/Nominatim labels, county FIPS, tract/ZCTA crosswalks, city names	apps/web/src/lib/publishing/*json; packages/pipeline/scripts/data_acquisition/tiger_line_integration.py; scripts/data-processing	/api/v1/data/assets/geography.boundaries_crosswalks_labels; /api/v1/data/entities/{entity_id}; /api/v1/data/crosswalks; compatibility indirect via forecast pages and geocoding	get_data_asset; get_entity; get_geography_crosswalk	yes	app docs and generated JSONs	client.dataAssets.get(); client.entities.get(); client.geographies.getCrosswalk()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve boundary, label, and crosswalk vintages independently from derived simplifications.	canonicalize entity IDs and namespaces | version geography definitions and parent relationships | record geometry CRS and precision	build versioned crosswalks, centroids, adjacency, and simplified geometries	Generalized or simplified geometry is derived, not synthetic; simulated geography must use hc.synthetic_record.v1.		/api/v1/data/entities | /api/v1/data/crosswalks | /api/v1/data/artifacts/{artifact_id}	get_entity | get_geography_crosswalk | get_data_artifact	EntityReference | Observation | ArtifactManifest	geography reference | vintage and crosswalk guide | geometry download guide	client.entities.get | client.geographies.getCrosswalk | client.artifacts.download	json | csv | geojson | parquet | mvt | pmtiles	Good public reference manifest and light download candidate	Need source attribution and versioning before packaging	Add geography reference manifest to public-data inventory
geography.raw_parcel_block_geometries	geography_reference	parcel|block|tract|zcta|state	geometry; centroids; tile features; spatial joins	internal_or_app_surface	hold	high	mixed_license_review	Parcel polygons, block geometries, shapefiles, PMTiles inputs, geometry upload scripts	packages/pipeline/scripts/data_acquisition/geometry; packages/pipeline/scripts/inference/upload/geo; scripts/data-processing	/api/v1/data/assets/geography.raw_parcel_block_geometries; /api/v1/data/entities/{entity_id}; /api/v1/data/crosswalks; compatibility indirect via maps and forecast tiles	get_data_asset; get_entity; get_geography_crosswalk	yes	tiles/geography docs	client.dataAssets.get(); client.entities.get(); client.geographies.getCrosswalk()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Preserve boundary, label, and crosswalk vintages independently from derived simplifications.	canonicalize entity IDs and namespaces | version geography definitions and parent relationships | record geometry CRS and precision	build versioned crosswalks, centroids, adjacency, and simplified geometries	Generalized or simplified geometry is derived, not synthetic; simulated geography must use hc.synthetic_record.v1.		/api/v1/data/entities | /api/v1/data/crosswalks | /api/v1/data/artifacts/{artifact_id}	get_entity | get_geography_crosswalk | get_data_artifact	EntityReference | Observation | ArtifactManifest	geography reference | vintage and crosswalk guide | geometry download guide	client.entities.get | client.geographies.getCrosswalk | client.artifacts.download	json | csv | geojson | parquet | mvt | pmtiles	Aggregate geography only; raw parcel geometry held	Raw geometry may inherit parcel-source terms and large-file constraints	Expose only public boundary/crosswalk metadata first
context.infrastructure_interconnection	context_input	service_area|project|county|tract	grid, dark fiber, data-center utility context, interconnection signals	discovered_or_partial	draft	medium	mixed_public_source	Utility, interconnection, grid, energy, telecom, and infrastructure source research	packages/pipeline/docs/INFRASTRUCTURE_INTERCONNECTION_SOURCES.md; packages/pipeline/scripts/data_acquisition/enrichment; arizona_phoenix_enrichment_source_catalog.json	/api/v1/data/assets/context.infrastructure_interconnection; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	infrastructure/enrichment docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Public source manifest and aggregate features after review	Some sources are research leads or scraped context, not normalized panels	Promote validated public-source metadata into provenance manifests
context.data_center_site_research	context_input	market|company|region	site constraints; operators; infrastructure demand; GTM target research	research_internal	hold	medium	internal_research_mixed_sources	Data-center and infrastructure market research documents and target/company source notes	docs/phoenix-arizona-data-center-research.md; docs/gtm-*data-center*; docs/gtm-*operator*	/api/v1/data/assets/context.data_center_site_research; /api/v1/data/observations; /api/v1/data/features; /api/v1/data/panels/{panel_id}	get_data_asset; query_observations; query_features; get_panel_slice	yes	docs/gtm and research docs	client.dataAssets.get(); client.observations.query(); client.features.query(); client.panels.getSlice()	not_in_inventory												hc.source_snapshot.v1	hc.observation.v1 | hc.feature_record.v1 | hc.panel_row.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Keep immutable source extracts or API response snapshots with source-specific cadence and terms metadata.	normalize geographies, metric IDs, units, seasonal adjustment, and publication lag | separate event period, publication time, and retrieval time	apply as-of joins | derive lags, rolling statistics, exposure measures, and geography rollups with transform versions	Derived scenarios are allowed; observed context values and simulated context must remain different record types.		/api/v1/data/observations | /api/v1/data/features | /api/v1/data/panels	query_observations | query_features | get_panel_slice	Observation | FeatureRecord | PanelRow	source card | metric dictionary | publication-lag semantics | feature recipes	client.observations.query | client.features.query | client.panels.getSlice	jsonl | csv | parquet	Do not expose as public data except redacted source citations	GTM target research and relationship context should not become public datasets	Separate source citations from outreach/targeting notes before any release
ops.outreach_gtm_media_logs	ops_internal	internal contacts|organizations	recipients; routing; copy; suppression; send/review status	internal_ops	hold	high	internal_only	GTM, media, outreach batch reports, send logs, suppression reviews, target queues	docs/gtm-*; docs/media/*; outreach logs in repo	/api/v1/data/assets/ops.outreach_gtm_media_logs	get_data_asset	yes	internal docs	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	Contains outreach, relationship, and protected-recipient context	Keep excluded from API/MCP/public-data surfaces
research.tavus_conversations	research_internal	conversation|video	research conversation payloads and derived visuals	research_internal	hold	high	internal_or_third_party_terms	Tavus conversation exports and visual-analysis scripts	packages/research/tavus_all_conversations.json; packages/research/scripts/extract_all_tavus_conversations.py	/api/v1/data/assets/research.tavus_conversations	get_data_asset	yes	research scripts	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.artifact_manifest.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Preserve original research artifacts and evidence snapshots with relationship and confidentiality controls where applicable.	assign artifact, subject, source, date, and evidence IDs | separate factual extraction from analyst inference	derive publishable aggregate research only through an explicit review artifact	Generated summaries must cite parent artifacts and cannot be represented as source evidence.		/api/v1/internal/data/research | /api/v1/data/artifacts/{artifact_id}	query_internal_research | get_data_artifact	ArtifactManifest | ProvenanceManifest	internal research catalog | evidence and inference policy | artifact access guide	client.admin.research.query | client.artifacts.download	json	Remain non-public	Conversation exports may contain private participant data and platform terms	Keep out of public-data inventory except as holdback if needed
research.screening_priority_outputs	research_internal	internal research entities	priority scores; screening metadata; plots	research_internal	hold	medium	internal_only	Research screening configs, priority scores, plots, and output summaries	packages/research/configs; packages/research/output/screening	/api/v1/data/assets/research.screening_priority_outputs	get_data_asset	yes	research output docs	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.artifact_manifest.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Preserve original research artifacts and evidence snapshots with relationship and confidentiality controls where applicable.	assign artifact, subject, source, date, and evidence IDs | separate factual extraction from analyst inference	derive publishable aggregate research only through an explicit review artifact	Generated summaries must cite parent artifacts and cannot be represented as source evidence.		/api/v1/internal/data/research | /api/v1/data/artifacts/{artifact_id}	query_internal_research | get_data_artifact	ArtifactManifest | ProvenanceManifest	internal research catalog | evidence and inference policy | artifact access guide	client.admin.research.query | client.artifacts.download	json	Remain non-public unless explicitly repackaged	Research prioritization data is not benchmark material	Keep separate from public-data release
research.notebooks_pitch_artifacts	research_internal	research/demo artifacts	analysis notebooks; charts; screenshots; forecast examples	research_internal	hold	medium	mixed_internal_public	Prototype notebooks, pitch artifacts, presentation screenshots, PDFs, and derived reports	packages/research/notebooks; packages/research/docs; packages/research/pitch	/api/v1/data/assets/research.notebooks_pitch_artifacts	get_data_asset	yes	research docs and notebooks	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.artifact_manifest.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Preserve original research artifacts and evidence snapshots with relationship and confidentiality controls where applicable.	assign artifact, subject, source, date, and evidence IDs | separate factual extraction from analyst inference	derive publishable aggregate research only through an explicit review artifact	Generated summaries must cite parent artifacts and cannot be represented as source evidence.		/api/v1/internal/data/research | /api/v1/data/artifacts/{artifact_id}	query_internal_research | get_data_artifact	ArtifactManifest | ProvenanceManifest	internal research catalog | evidence and inference policy | artifact access guide	client.admin.research.query | client.artifacts.download	json	Do not treat as canonical data surface	Artifacts mix demos, screenshots, and draft claims	Use only as source-discovery hints, not public datasets
ops.pipeline_logs_run_status	ops_internal	internal operations	log output; status payloads; crash traces; panel run summaries	internal_ops	hold	medium	internal_only	Panel logs, modal logs, deployment status, eval errors, training reports	logs/*; packages/pipeline/scripts/logs; logs/deployment-status.json	/api/v1/data/assets/ops.pipeline_logs_run_status	get_data_asset	yes	internal logs	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	Logs can expose internal paths, run failures, keys, and operational details	Use for internal lineage only; never publish raw logs
schema.supabase_forecast_tables_migrations	schema	database|schema	forecast table definitions; RPC contracts; indexes; RLS rules	schema_internal	draft	low	schema_docs_public_possible	Forecast DB schemas, Supabase migrations, SQL views, RPC wrappers, table comments	supabase/migrations; packages/pipeline/sql/schema; packages/pipeline/scripts/database	/api/v1/data/assets/schema.supabase_forecast_tables_migrations; /api/v1/data/schemas; compatibility indirect via APIs	get_data_asset; list_data_schemas; get_data_schema	yes	docs/api/SCHEMA.md; app docs	client.dataAssets.get(); client.schemas.get()	not_in_inventory												hc.source_snapshot.v1	hc.dataset_asset.v1 | hc.artifact_manifest.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Version SQL, YAML, JSON Schema, migration, and compatibility snapshots by content hash.	assign stable schema IDs and semantic versions | record compatibility and deprecation state	generate language types, validators, OpenAPI components, and migration reports from canonical schemas	Not applicable.		/api/v1/data/schemas | /api/v1/data/artifacts/{artifact_id}	list_data_schemas | get_data_schema	DatasetAsset | ArtifactManifest	schema reference | compatibility policy | migration guide	client.schemas.list | client.schemas.get	json	Public schema reference, not data payload	Schema docs need cleanup and public/private boundary labels	Update schema docs to separate public contracts from internal tables
product.portfolio_preview_data	product_internal	demo portfolio	investment/portfolio scenario fixtures	app_or_test_fixture	hold	medium	internal_or_demo_only	Portfolio tracking preview/demo data and fund-reporting contract fixtures	apps/web/src/lib/portfolio-tracking/preview-data.ts; portfolio tests	/api/v1/data/assets/product.portfolio_preview_data	get_data_asset	yes	tests and local preview data	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1	Retain user-linked product state only under product purpose and retention policy.	normalize subject, portfolio, event, and timestamp semantics | keep identity fields outside public records	derive deidentified aggregate product metrics when justified	Use clearly fake fixtures for demos; never synthesize production user state into a public dataset.		/api/v1/internal/data/product-events	query_internal_product_events	ProductEvent	internal product schema | privacy policy | admin examples	client.admin.productEvents.query	json	Keep as demo/test data unless separately approved	Not a source/benchmark dataset and may be synthetic/demo-specific	Exclude from public-data release
ops.prompt_validation_corpus	ops_internal	internal QA	prompts; expected routes; validation reports; replay metadata	qa_internal	hold	medium	internal_only	Prompt libraries, chat test matrices, route-resolution corpora, response-review fixtures	apps/web/src/lib/prompt-*; apps/web/src/lib/__tests__; apps/web/scripts/chat-*	/api/v1/data/assets/ops.prompt_validation_corpus	get_data_asset	yes	prompt validation docs and tests	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain internal QA tooling	Can include product behavior and evaluation prompts, not public data	Add holdback row only if governance wants all QA corpora listed
ops.chat_threads_usage	ops_internal	internal user/product data	messages; threads; usage; routing telemetry	authenticated_app	hold	high	internal_only	Chat threads, chat usage, prompt replay, assistant session data	apps/web/src/app/api/chat*; apps/web/src/app/api/threads*; apps/web/src/app/api/debug/chat-usage	/api/v1/data/assets/ops.chat_threads_usage	get_data_asset	yes	app-only	client.dataAssets.get()	not_in_inventory												hc.source_snapshot.v1	hc.operational_record.v1 | hc.product_event.v1 | hc.provenance_manifest.v1 | hc.access_policy.v1 | hc.artifact_manifest.v1	Retain operational records under least-privilege, purpose-limited policies with explicit retention windows.	separate identities from events and measures | normalize timestamps, operation types, and redaction state	produce deidentified or aggregate operational metrics only after policy review	No public synthetic release by default; test fixtures must be unmistakably fake and disconnected from production subjects.		/api/v1/internal/data/operations	query_internal_operations	OperationalRecord | ProductEvent	internal data dictionary | privacy and retention policy | admin API reference	client.admin.operations.query	json	Remain non-public	User conversation and product telemetry data	Keep excluded from benchmark and public-data surfaces
