Skip to content

ER Diagram

Generated by python scripts/generate_docs_artifacts.py from SQLModel tables.

erDiagram
  admin_memberships {
    string id
    string user_id
    string role
    string permissions
    string granted_by
    string granted_at
    string revoked_by
    string revoked_at
    string reason
    string bootstrap_source
    string created_at
    string updated_at
  }
  admin_tier_overrides {
    string id
    string user_id
    string tier
    string reason
    string expires_at
    string granted_by
    string granted_at
    string revoked_by
    string revoked_at
    string created_at
    string updated_at
  }
  agent_decisions {
    string agent_run_id
    string user_id
    string step_name
    string decision_type
    string step_input
    string step_output
    string reasoning
    string model_used
  }
  agent_runs {
    string portfolio_id
    string user_id
    string agent_name
    string trigger_event
    string status
    string error_message
    string started_at
    string completed_at
    string input_tokens
    string output_tokens
    string cost_usd
    string run_metadata
  }
  article_ticker_links {
    string article_id
    string security_id
    string symbol
    string published_at
    string relevance_score
    string sentiment
    string catalyst_score
    string event_type
    string source_confidence
    string extracted_symbols
    string link_metadata
  }
  audit_log {
    string id
    string user_id
    string portfolio_id
    string action
    string resource_type
    string resource_id
    string old_values
    string new_values
    string ip_address
    string user_agent
    string created_at
  }
  automation_pause_states {
    string user_id
    string scope_type
    string scope_key
    string portfolio_id
    string strategy
    string paused
    string cancel_pending_exits
    string flatten_positions
    string reason
    string updated_by
    string trace_id
  }
  automation_plans {
    string portfolio_id
    string trade_id
    string signal_id
    string user_id
    string source_type
    string source_id
    string ticker
    string strategy
    string action
    string status
    string execution_mode
    string idempotency_key
    string entry_intent
    string risk_approval
    string execution_plan
    string targets
    string stop_rules
    string broker_capabilities
    string automation_state
    string stats
    string trace_id
    string last_decision_at
    string error_message
  }
  broker_connections {
    string user_id
    string broker
    string encrypted_access_token
    string encrypted_refresh_token
    string account_id
    string account_number
    string is_paper
    string is_active
    string token_expires_at
  }
  calendar_events {
    string source
    string source_event_id
    string title
    string event_type
    string starts_at
    string ends_at
    string impact
    string symbols
    string country
    string actual
    string forecast
    string previous
    string raw_data
  }
  canonical_news_articles {
    string dedupe_key
    string url_hash
    string content_hash
    string title
    string content
    string url
    string source
    string publisher
    string author
    string published_at
    string first_seen_at
    string retained_until
    string quality_score
    string source_confidence
    string entitlement_mode
    string transport_type
    string storage_decision
    string embedding
    string raw_payload
  }
  composite_recipe_versions {
    string registry_version
    string registry_hash
    string manifest
    string active
  }
  consent_acceptances {
    string id
    string user_id
    string consent_type
    string version
    string source
    string accepted_at
  }
  consent_requirements {
    string id
    string consent_type
    string required_version
    string is_active
    string reason
    string updated_by
    string created_at
    string updated_at
  }
  corporate_actions {
    string security_id
    string symbol
    string action_type
    string effective_date
    string ex_date
    string announcement_date
    string record_date
    string payable_date
    string ratio
    string cash_amount
    string currency
    string old_symbol
    string new_symbol
    string description
    string source
    string source_event_id
    string raw_payload
  }
  daily_news_features {
    string security_id
    string symbol
    string as_of_date
    string feature_set_version
    string news_count
    string high_impact_count
    string average_sentiment
    string max_catalyst_score
    string top_article_ids
    string event_type_counts
    string freshness_status
    string source_mix
    string computed_at
  }
  dataset_capabilities {
    string provider_id
    string dataset_id
    string environment
    string use_mode
    string contract_version
    string status
    string reason
    string effective_from
    string effective_to
    string evidence_ref
    string source_policy_hash
    string capability_metadata
  }
  factor_methodology_versions {
    string methodology_version
    string composite_recipe_version
    string methodology_hash
    string manifest
    string active
  }
  factor_score_distributions {
    string as_of_date
    string feature_set_version
    string model_version
    string methodology_version
    string composite_recipe_version
    string universe_key
    string eligible_count
    string scored_count
    string partial_count
    string unavailable_count
    string distribution_status
    string metrics
    string warnings
    string pipeline_run_id
    string computed_at
  }
  fills {
    string trade_id
    string user_id
    string ticker
    string side
    string qty
    string price
    string commission
    string filled_at
    string broker_fill_id
  }
  journal_account_aliases {
    string user_id
    string portfolio_id
    string broker_connection_id
    string alias
    string account_number
    string source
    string detail_metadata
  }
  journal_analytics_snapshots {
    string user_id
    string portfolio_id
    string snapshot_type
    string cache_key
    string period_start
    string period_end
    string generated_at
    string payload
  }
  journal_behavioral_events {
    string user_id
    string trade_id
    string event_type
    string severity
    string detected_at
    string title
    string description
    string payload
  }
  journal_csv_mappings {
    string user_id
    string name
    string broker
    string mapping
    string last_used_at
  }
  journal_diary_entries {
    string user_id
    string portfolio_id
    string legacy_journal_entry_id
    string entry_date
    string title
    string body
    string mood
    string market_bias
    string tags
    string linked_trade_ids
    string raw_payload
  }
  journal_diary_templates {
    string user_id
    string name
    string description
    string prompt
    string entry_type
    string is_default
    string legacy_template_id
    string detail_metadata
  }
  journal_import_rows {
    string import_run_id
    string user_id
    string row_number
    string row_hash
    string status
    string trade_id
    string parsed_payload
    string error_message
  }
  journal_import_runs {
    string user_id
    string portfolio_id
    string source
    string status
    string filename
    string total_rows
    string accepted_rows
    string rejected_rows
    string started_at
    string completed_at
    string error_message
    string detail_metadata
  }
  journal_migration_map {
    string source_table
    string source_id
    string target_table
    string target_id
    string user_id
    string status
    string checksum
    string error_message
    string migrated_at
    string raw_payload
  }
  journal_playbook_items {
    string playbook_id
    string user_id
    string label
    string item_type
    string position
    string required
    string detail_metadata
  }
  journal_playbooks {
    string user_id
    string name
    string description
    string status
    string legacy_playbook_id
    string rules
    string detail_metadata
  }
  journal_trade_attachments {
    string trade_id
    string user_id
    string attachment_type
    string filename
    string content_type
    string storage_key
    string source_url
    string size_bytes
    string checksum_sha256
    string legacy_attachment_id
    string detail_metadata
  }
  journal_trade_comments {
    string trade_id
    string user_id
    string author_type
    string body
    string pinned
    string detail_metadata
  }
  journal_trade_details {
    string trade_id
    string user_id
    string portfolio_id
    string broker_connection_id
    string legacy_journal_trade_id
    string source
    string instrument_type
    string setup
    string thesis
    string entry_rationale
    string exit_rationale
    string mistake_tags
    string confidence
    string risk_reward
    string r_multiple
    string quality_grade
    string quality_score
    string broker_account_label
    string account_number
    string detail_metadata
    string raw_payload
  }
  journal_trade_playbook_reviews {
    string trade_id
    string playbook_id
    string user_id
    string score
    string checklist_results
    string notes
  }
  journal_trade_tags {
    string trade_id
    string user_id
    string tag
    string source
  }
  llm_provider_keys {
    string user_id
    string provider
    string encrypted_api_key
    string encryption_version
    string key_rotated_at
    string is_active
    string key_fingerprint
    string last_validated_at
    string last_validation_status
    string last_validation_message
  }
  metric_catalog_versions {
    string catalog_version
    string catalog_hash
    string manifest
    string active
  }
  ml_model_registry {
    string model_version
    string model_family
    string target_name
    string horizon_days
    string feature_set_version
    string factor_model_version
    string factor_methodology_version
    string factor_composite_recipe_version
    string training_start_date
    string training_end_date
    string trained_at
    string training_code_version
    string frozen_universe_hash
    string artifact_uri
    string artifact_sha256
    string hyperparameters
    string metrics
    string baseline_metrics
    string feature_importance
    string approval_state
    string rollback_predecessor_id
    string disabled_reason
  }
  ml_rank_predictions {
    string model_id
    string ticker
    string security_id
    string as_of_date
    string horizon_days
    string target_name
    string score
    string predicted_excess_return
    string confidence
    string rank
    string feature_snapshot_id
    string factor_score_id
    string source_lineage
    string status
  }
  ml_screener_predictions {
    string ticker
    string as_of_date
    string model_version
    string score
    string predicted_1mo_return_pct
    string confidence
    string rank
    string features
    string feature_importance
    string bars_loaded
    string latest_timestamp
    string source
  }
  news_items {
    string ticker
    string title
    string content
    string url
    string published_at
    string source
    string sentiment
    string embedding
  }
  notification_deliveries {
    string id
    string notification_id
    string user_id
    string channel
    string status
    string attempted_at
    string delivered_at
    string provider
    string provider_message_id
    string provider_response
    string error_payload
    string created_at
    string updated_at
  }
  portfolio_manager_reports {
    string portfolio_id
    string user_id
    string report_type
    string period_start
    string period_end
    string source_trade_count
    string metrics
    string recommendations
    string report_text
    string model_used
    string status
    string agent_run_id
    string error_message
  }
  portfolios {
    string user_id
    string name
    string broker_connection_id
    string is_paper_trading
    string base_currency
  }
  position_lifecycle_events {
    string trade_id
    string portfolio_id
    string user_id
    string ticker
    string event_type
    string trigger
    string status
    string idempotency_key
    string current_price
    string stop_price
    string target_price
    string trailing_stop_price
    string close_side
    string close_qty
    string exit_filled_qty
    string exit_filled_price
    string realized_pnl
    string close_order_id
    string close_client_order_id
    string stop_order_id
    string stop_client_order_id
    string close_requested_at
    string stop_adjusted_at
    string exit_filled_at
    string more_fields
  }
  positions {
    string portfolio_id
    string user_id
    string ticker
    string qty
    string avg_cost
    string market_value
    string unrealized_pnl
    string realized_pnl
    string strategy
    string stop_price
    string target_price
  }
  provider_dataset_policies {
    string provider_id
    string dataset_id
    string environment
    string use_mode
    string contract_version
    string promotion_state
    string quality_status
    string policy_version
    string effective_from
    string effective_to
    string evidence_ref
    string approved_by
    string approved_at
    string revoked_at
    string policy_hash
    string policy_metadata
    string last_canonical_publication_at
  }
  provider_ingestion_runs {
    string pipeline_run_id
    string provider
    string job_name
    string source_type
    string status
    string entitlement_mode
    string as_of_date
    string started_at
    string completed_at
    string freshness_at
    string requested_symbols
    string row_count
    string inserted_count
    string updated_count
    string skipped_count
    string failed_count
    string selected_count
    string processed_count
    string unchanged_count
    string retryable_count
    string stale_count
    string provider_response_category
    string watermark
    string source_date
    string more_fields
  }
  regime_signals {
    string timestamp
    string regime
    string confidence
    string transition_probs
    string features
  }
  research_aggregate_fundamental_snapshots {
    string aggregate_id
    string aggregate_type
    string metric_name
    string as_of
    string available_at
    string status
    string value_numeric
    string unit
    string method
    string numerator
    string denominator
    string eligible_count
    string excluded_count
    string included_weight
    string unavailable_reason
    string fact_dates
    string coverage
    string exclusions
    string source_observation_set_ids
    string calculation_version
    string snapshot_checksum
  }
  research_context_alignment_snapshots {
    string symbol
    string comparison_universe_id
    string as_of
    string available_at
    string label
    string status
    string confidence
    string active_context_level
    string reasons
    string source_observation_set_ids
    string input_snapshot_ids
    string calculation_version
    string snapshot_checksum
  }
  research_correlation_snapshots {
    string universe_id
    string universe_type
    string as_of
    string date_start
    string date_end
    string window_sessions
    string observation_count
    string min_observations
    string status
    string precision
    string matrix
    string methodology
    string source_snapshot_ids
    string source_observation_set_ids
    string snapshot_checksum
  }
  research_economic_release_vintages {
    string series_id
    string release_id
    string release_at
    string available_at
    string retrieved_at
    string vintage_date
    string expected_only
    string payload_hash
    string raw_payload
  }
  research_economic_series {
    string series_id
    string label
    string dimension
    string feature_family
    string source
    string release_name
    string units
    string frequency
    string transform
    string orientation
    string required
    string rights
    string registry_metadata
  }
  research_entity_breadth_snapshots {
    string entity_id
    string entity_type
    string comparison_universe_id
    string as_of
    string available_at
    string availability_status
    string confidence
    string taxonomy_version
    string universe_version
    string calculation_version
    string policy_version
    string source_rights_state
    string source_rights_hash
    string price_adjustment_policy
    string volume_scope
    string component_scores
    string trajectories
    string leadership_density
    string opportunity_sets
    string coverage
    string exclusions
    string source_observation_set_ids
    string snapshot_checksum
    string is_current
  }
  research_entity_rank_snapshots {
    string entity_id
    string entity_type
    string comparison_universe_id
    string as_of
    string available_at
    string availability_status
    string confidence
    string taxonomy_version
    string universe_version
    string calculation_version
    string policy_version
    string source_rights_state
    string source_rights_hash
    string cap_weighted_price_strength
    string equal_weighted_price_strength
    string blended_price_strength
    string rank_value
    string percentile
    string lifecycle_state
    string candidate_lifecycle_state
    string trajectories
    string fundamental_confirmation
    string coverage
    string exclusions
    string more_fields
  }
  research_equity_basket_return_snapshots {
    string basket_id
    string basket_type
    string taxonomy_version
    string as_of
    string available_at
    string period_label
    string weighting_method
    string return_value
    string member_count
    string included_count
    string excluded_count
    string included_weight
    string excluded_weight
    string concentration_top_weight
    string coverage_state
    string unavailable_reason
    string source_observation_set_ids
    string exclusions
    string methodology
    string calculation_version
    string snapshot_checksum
  }
  research_index_constituent_snapshots {
    string exposure_id
    string as_of
    string available_at
    string retrieved_at
    string membership_class
    string rights_status
    string provider_id
    string dataset_id
    string source_snapshot_id
    string snapshot_checksum
    string constituents
    string coverage
    string methodology
  }
  research_index_definitions {
    string exposure_id
    string symbol
    string label
    string display_order
    string membership_class
    string rights_status
    string customer_facing_row
    string proxy_fund
    string benchmark_label
    string effective_from
    string effective_to
    string methodology
    string supported_periods
    string limitations
    string source_policy_hash
  }
  research_industry_lifecycle_snapshots {
    string industry_id
    string comparison_universe_id
    string as_of
    string available_at
    string label
    string status
    string confidence
    string reasons
    string source_observation_set_ids
    string input_snapshot_ids
    string calculation_version
    string snapshot_checksum
  }
  research_macro_dimension_snapshots {
    string dimension
    string as_of
    string score
    string state
    string method_version
    string source_features
  }
  research_macro_feature_snapshots {
    string series_id
    string as_of
    string feature_name
    string feature_value
    string method_version
    string observation_set_id
  }
  research_macro_implication_decisions {
    string implication_row_id
    string implication_as_of
    string implication_id
    string owner_user_id
    string actor_user_id
    string action
    string from_state
    string to_state
    string expected_version
    string result_version
    string reason
    string evidence_ids
    string policy_versions
    string reviewed_proposal
    string lineage
  }
  research_macro_implication_outcomes {
    string as_of
    string approval_audit_id
    string implication_row_id
    string implication_as_of
    string owner_user_id
    string account_id
    string portfolio_id
    string position_id
    string candidate_id
    string outcome_kind
    string outcome_status
    string summary
    string evidence_ids
    string policy_versions
    string lineage
  }
  research_macro_implications {
    string synthesis_id
    string implication_id
    string owner_user_id
    string portfolio_id
    string version
    string as_of
    string scope
    string title
    string body
    string citations
    string requires_user_approval
    string approval_state
    string supersedes_id
    string superseded_by_id
    string is_current
    string lineage
  }
  research_macro_observations {
    string series_id
    string observation_date
    string realtime_start
    string realtime_end
    string available_at
    string retrieved_at
    string raw_value
    string numeric_value
    string transformed_value
    string units
    string seasonal_adjustment
    string rights_status
    string payload_hash
    string provider_id
    string dataset_id
    string pipeline_run_id
  }
  research_macro_syntheses {
    string as_of
    string owner_user_id
    string packet_id
    string packet_checksum
    string regime_snapshot_id
    string regime_state
    string deterministic_policy_version
    string evidence_schema_version
    string provider
    string model
    string prompt_version
    string schema_version
    string status
    string validation_status
    string validation_errors
    string attempt_count
    string provider_call_count
    string input_tokens
    string output_tokens
    string estimated_cost
    string latency_ms
    string trace_id
    string output_payload
    string citations
    string more_fields
  }
  research_observation_members {
    string observation_set_id
    string member_order
    string provider_id
    string dataset_id
    string source_record_id
    string source_table
    string source_payload_hash
    string retrieved_at
    string available_at
    string raw_value_ref
    string normalization_version
    string member_metadata
  }
  research_observation_sets {
    string dataset_id
    string entity_id
    string as_of
    string effective_at
    string available_at
    string retrieved_at
    string provider_ids
    string pipeline_run_ids
    string policy_id
    string calculation_version
    string adjustment_type
    string revision_number
    string quality_flags
    string conflict_metadata
  }
  research_option_contracts {
    string provider_id
    string dataset_id
    string underlying_symbol
    string occ_symbol
    string option_root
    string expiration_date
    string strike_price
    string option_type
    string contract_multiplier
    string deliverable
    string corporate_action_adjusted
    string rights_status
    string contract_version
    string effective_from
    string effective_to
    string source_payload_hash
    string contract_metadata
  }
  research_options_analytics_snapshots {
    string underlying_symbol
    string quote_session_date
    string quote_timezone
    string as_of
    string available_at
    string retrieved_at
    string rights_status
    string quality_state
    string quality_flags
    string contract_count
    string call_count
    string put_count
    string put_call_volume_ratio
    string put_call_open_interest_ratio
    string open_interest_change_abs
    string open_interest_change_pct
    string strike_concentration_hhi
    string expiry_concentration_hhi
    string top_strike_open_interest_share
    string iv_level
    string iv_term_slope
    string iv_skew
    string unusual_volume_ratio
    string modeled_gamma_exposure
    string more_fields
  }
  research_options_eod_snapshots {
    string contract_id
    string provider_id
    string dataset_id
    string underlying_symbol
    string occ_symbol
    string option_root
    string expiration_date
    string strike_price
    string option_type
    string contract_multiplier
    string deliverable
    string corporate_action_adjusted
    string quote_session_date
    string quote_timezone
    string as_of
    string available_at
    string retrieved_at
    string bid_price
    string ask_price
    string last_price
    string volume
    string open_interest
    string prior_open_interest
    string provider_implied_volatility
    string more_fields
  }
  research_paired_regime_permissions {
    string strategy_id
    string as_of
    string available_at
    string macro_regime_snapshot_id
    string equity_regime_snapshot_id
    string macro_regime_type
    string equity_regime_type
    string macro_policy_version
    string equity_policy_version
    string strategy_policy_version
    string permission
    string status
    string risk_multiplier
    string macro_confidence
    string equity_confidence
    string paired_confidence
    string divergence
    string reason_codes
    string required_dimensions
    string missing_dimensions
    string source_observation_set_ids
    string source_rights_state
    string source_rights_hash
    string calculation_version
    string more_fields
  }
  research_provider_classification_evidence {
    string security_id
    string symbol
    string provider_id
    string provider_security_id
    string source_version
    string observed_at
    string retrieved_at
    string source_sector_label
    string source_industry_group_label
    string source_industry_label
    string payload_hash
    string raw_payload_ref
    string evidence_metadata
  }
  research_regime_dimension_snapshots {
    string regime_type
    string dimension
    string as_of
    string policy_version
    string feature_version
    string score
    string value
    string band
    string state
    string confidence
    string data_quality_status
    string missing_inputs
    string source_feature_ids
    string source_snapshot_ids
    string family_scores
    string family_weights
    string snapshot_checksum
  }
  research_regime_feature_snapshots {
    string feature_id
    string regime_type
    string dimension
    string feature_family
    string as_of
    string available_at
    string retrieved_at
    string source_snapshot_id
    string feature_version
    string transform
    string orientation
    string normalized_value
    string weight
    string required
    string provider_ids
    string dataset_ids
    string source_vintages
    string feature_metadata
    string calculation_version
    string snapshot_checksum
  }
  research_regime_snapshots {
    string regime_type
    string as_of
    string policy_version
    string candidate_state
    string regime_state
    string label
    string confidence
    string uncertainty
    string data_quality_status
    string risk_multiplier
    string composite_score
    string dimension_scores
    string dimension_states
    string dimension_weights
    string trigger_dimensions
    string missing_dimensions
    string source_dimension_snapshot_ids
    string calculation_checksum
    string calculation_time
    string previous_snapshot_id
  }
  research_regime_strategy_permissions {
    string strategy
    string macro_regime_snapshot_id
    string equity_regime_snapshot_id
    string as_of
    string regime_snapshot_id
    string regime_state
    string regime_policy_version
    string strategy_policy_version
    string status
    string permission
    string risk_multiplier
    string reason_codes
    string required_dimensions
    string missing_dimensions
    string stale_dimensions
    string account_constraints
    string approved_user_settings
    string decision_checksum
  }
  research_regime_transitions {
    string regime_type
    string as_of
    string policy_version
    string previous_regime
    string new_regime
    string candidate_regime
    string transition_status
    string shock_override
    string persistence_required
    string persistence_count
    string trigger_dimensions
    string evidence_packet
    string prior_snapshot_id
    string new_snapshot_id
    string transition_checksum
  }
  research_sec_coverage_snapshots {
    string as_of
    string universe_id
    string issuer_count
    string coverage_buckets
    string watermarks
  }
  research_sec_documents {
    string accession_number
    string document_url
    string document_type
    string content_type
    string byte_size
    string content_sha256
    string raw_body_ref
    string retrieved_at
    string immutable
  }
  research_sec_fact_observations {
    string cik
    string symbol
    string accession_number
    string normalized_concept
    string sec_namespace
    string sec_concept
    string unit
    string fiscal_year
    string fiscal_period
    string period_start
    string period_end
    string value_numeric
    string raw_value
    string form_type
    string accepted_at
    string first_seen_at
    string revision_number
    string supersedes_fact_id
    string source_checksum
    string parse_status
    string absence_reason
    string fact_metadata
  }
  research_sec_filings {
    string cik
    string symbol
    string accession_number
    string form_type
    string filed_at
    string accepted_at
    string first_seen_at
    string period_end
    string is_amendment
    string amends_accession_number
    string filing_url
    string source_checksum
    string parse_status
    string parse_error_code
    string filing_metadata
  }
  research_sec_ingestion_checkpoints {
    string job_name
    string issuer_cik
    string accession_cursor
    string watermark
    string status
    string attempt_count
    string checkpoint_payload
  }
  research_sec_issuers {
    string cik
    string security_id
    string symbol
    string entity_name
    string taxonomy_version
    string issuer_metadata
  }
  research_sec_quarantine {
    string job_name
    string cik
    string symbol
    string accession_number
    string reason_code
    string error_class
    string attempt_count
    string retryable
    string source_payload
    string resolved_at
    string resolved_by
  }
  research_secondary_exposure_tags {
    string security_id
    string symbol
    string taxonomy_version
    string node_id
    string tag_status
    string effective_from
    string effective_to
    string source
    string reason
    string evidence_ref
  }
  research_security_context_snapshots {
    string security_id
    string symbol
    string research_universe_id
    string as_of
    string available_at
    string availability_status
    string confidence
    string taxonomy_version
    string universe_version
    string context_model_version
    string calculation_version
    string policy_version
    string source_rights_state
    string source_rights_hash
    string price_adjustment_policy
    string technical_facts
    string cohort_percentiles
    string context_labels
    string self_influence
    string coverage
    string exclusions
    string source_observation_set_ids
    string source_metadata
    string snapshot_checksum
    string more_fields
  }
  research_security_sue_snapshots {
    string security_id
    string symbol
    string fiscal_period_end
    string as_of
    string available_at
    string status
    string confidence
    string sue_value
    string unexpected_earnings
    string standard_deviation
    string quarter_count
    string calculation_version
    string policy_version
    string source_rights_state
    string source_rights_hash
    string source_observation_set_ids
    string lineage
    string coverage
    string exclusions
    string snapshot_checksum
    string is_current
  }
  research_security_taxonomy_mappings {
    string security_id
    string symbol
    string taxonomy_version
    string dimension
    string node_id
    string mapping_type
    string mapping_status
    string effective_from
    string effective_to
    string source
    string source_version
    string observed_at
    string confidence_class
    string reviewer_id
    string reason
    string evidence_ref
    string supersedes_mapping_id
    string audit_metadata
  }
  research_strategy_setup_snapshots {
    string security_id
    string symbol
    string strategy_id
    string setup_type
    string as_of
    string available_at
    string availability_status
    string setup_state
    string confidence
    string setup_policy_version
    string calculation_version
    string source_rights_state
    string source_rights_hash
    string trigger_definition
    string invalidation_definition
    string stop_method
    string input_snapshot_ids
    string source_observation_set_ids
    string coverage
    string exclusions
    string snapshot_checksum
    string is_current
  }
  research_taxonomy_mapping_candidates {
    string security_id
    string symbol
    string taxonomy_version
    string candidate_node_id
    string candidate_sector_id
    string candidate_group_id
    string candidate_industry_id
    string candidate_state
    string reason_code
    string confidence_class
    string evidence_ids
    string replay_key
  }
  research_taxonomy_nodes {
    string taxonomy_version
    string node_id
    string parent_node_id
    string node_type
    string label
    string display_order
    string manifest_checksum
    string source_attribution
    string node_metadata
  }
  research_taxonomy_override_audit {
    string actor_user_id
    string action
    string symbol
    string taxonomy_version
    string target_node_id
    string effective_from
    string effective_to
    string reason
    string evidence_ref
    string request_version
    string result_mapping_id
    string audit_payload
  }
  research_taxonomy_quarantine {
    string security_id
    string symbol
    string taxonomy_version
    string reason_code
    string status
    string candidate_node_ids
    string evidence_refs
    string replay_key
    string resolved_by
    string resolved_at
    string resolution_mapping_id
  }
  risk_settings {
    string portfolio_id
    string user_id
    string max_position_size_pct
    string max_drawdown_pct
    string daily_loss_limit_pct
    string sector_concentration_pct
    string max_open_positions
  }
  saved_screener_definitions {
    string user_id
    string name
    string description
    string base_universe_id
    string rules
    string rule_hash
    string score_model_version
    string feature_set_version
    string replay_as_of_date
    string schedule
    string active
    string definition_metadata
  }
  security_composite_scores {
    string security_id
    string symbol
    string as_of_date
    string universe_id
    string universe_key
    string factor_model_version
    string factor_methodology_version
    string source_composite_recipe_version
    string registry_version
    string recipe_key
    string recipe_version
    string score_status
    string score
    string grade
    string rank
    string percentile
    string coverage
    string confidence
    string strongest_dimensions
    string weakest_dimensions
    string contributions
    string source_factor_input_hash
    string input_hash
    string source_lineage
    string more_fields
  }
  security_factor_scores {
    string security_id
    string feature_snapshot_id
    string symbol
    string as_of_date
    string universe_id
    string universe_key
    string model_version
    string methodology_version
    string composite_recipe_version
    string feature_set_version
    string pipeline_run_id
    string freshness_status
    string score_status
    string composite_score
    string composite_rank
    string composite_percentile
    string coverage
    string confidence
    string factor_scores
    string source_features
    string cohort_identity
    string source_lineage
    string warnings
    string score_metadata
    string more_fields
  }
  security_feature_snapshots {
    string security_id
    string symbol
    string as_of_date
    string feature_set_version
    string input_hash
    string model_version
    string pipeline_run_id
    string freshness_status
    string point_in_time_cutoff
    string snapshot_status
    string coverage
    string confidence
    string input_lineage
    string warnings
    string code_version
    string feature_definition_hash
    string technical_features
    string liquidity_features
    string fundamental_features
    string news_features
    string regime_features
    string ml_features
    string features
    string source
    string more_fields
  }
  security_master {
    string symbol
    string display_symbol
    string name
    string security_type
    string asset_class
    string exchange
    string primary_exchange
    string country
    string currency
    string cik
    string figi
    string composite_figi
    string share_class_figi
    string cusip
    string isin
    string provider_ids
    string source
    string raw_payload
    string active
    string tradable
    string marginable
    string shortable
    string fractionable
    string is_otc
    string more_fields
  }
  security_score_transitions {
    string security_id
    string symbol
    string as_of_date
    string score_kind
    string score_key
    string universe_key
    string prior_as_of_date
    string prior_input_hash
    string current_input_hash
    string prior_score
    string current_score
    string score_delta
    string prior_percentile
    string current_percentile
    string prior_rating
    string current_rating
    string rating_changed
    string comparable
    string comparison_basis
    string primary_cause
    string causes
    string attribution_status
    string evidence
    string prior_versions
    string more_fields
  }
  signals {
    string portfolio_id
    string user_id
    string strategy
    string ticker
    string action
    string confidence_score
    string rationale
    string signal_metadata
    string expires_at
    string is_executed
  }
  smart_watchlist_rules {
    string watchlist_id
    string user_id
    string field_name
    string operator
    string value
    string logic
    string position
  }
  smart_watchlist_runs {
    string watchlist_id
    string user_id
    string status
    string previous_tickers
    string current_tickers
    string added_tickers
    string removed_tickers
    string rule_snapshot
    string matched_count
    string error_message
    string source
    string base_universe_id
    string base_snapshot_id
    string base_snapshot_as_of_date
    string pipeline_run_id
    string rule_hash
    string freshness_status
    string trace_id
    string scorecard_lineage
    string started_at
    string completed_at
  }
  strategy_configs {
    string portfolio_id
    string user_id
    string strategy
    string is_active
    string allocation_pct
    string params
  }
  subscriptions {
    string user_id
    string tier
    string dodo_customer_id
    string dodo_subscription_id
    string status
    string current_period_start
    string current_period_end
    string cancelled_at
  }
  trades {
    string portfolio_id
    string user_id
    string signal_id
    string ticker
    string side
    string qty
    string limit_price
    string filled_price
    string order_id
    string client_order_id
    string journal_trade_id
    string journal_status
    string journal_last_error
    string journal_last_attempt_at
    string status
    string strategy
    string regime_snapshot
    string agent_outputs
    string thesis
    string notes
  }
  trading_lab_results {
    string user_id
    string portfolio_id
    string ticker
    string period
    string strategy
    string engine
    string rules
    string metrics
    string equity_curve
    string trades
    string scorecard_lineage
    string verdict
    string note
    string bars_loaded
    string source
    string first_timestamp
    string last_timestamp
    string status
    string error_message
  }
  universe_members {
    string snapshot_id
    string snapshot_as_of_date
    string universe_id
    string security_id
    string symbol
    string original_symbol
    string company_name
    string rank
    string weight
    string quantity
    string market_value
    string sector
    string status
    string source_payload
  }
  universe_snapshots {
    string universe_id
    string display_name
    string universe_type
    string source_type
    string source_name
    string source_url
    string rule_config
    string rule_hash
    string as_of_date
    string run_version
    string pipeline_run_id
    string status
    string freshness_status
    string member_count
    string added_count
    string removed_count
    string unchanged_count
    string raw_payload
  }
  user_notifications {
    string id
    string user_id
    string category
    string type
    string title
    string body
    string tone
    string priority
    string entity_type
    string entity_id
    string action_url
    string dedupe_key
    string metadata_
    string created_at
    string read_at
    string dismissed_at
    string expires_at
    string updated_at
  }
  user_profiles {
    string user_id
    string tier
    string full_name
    string avatar_url
    string preferences
    string created_at
    string updated_at
  }
  watchlists {
    string user_id
    string name
    string description
    string is_smart
    string base_universe_id
    string tickers
    string current_tickers
    string last_refreshed_at
  }
  agent_runs ||--o{ agent_decisions : references
  portfolios ||--o{ agent_runs : references
  portfolios ||--o{ automation_plans : references
  trades ||--o{ fills : references
  broker_connections ||--o{ journal_account_aliases : references
  portfolios ||--o{ journal_account_aliases : references
  portfolios ||--o{ journal_analytics_snapshots : references
  trades ||--o{ journal_behavioral_events : references
  portfolios ||--o{ journal_diary_entries : references
  journal_import_runs ||--o{ journal_import_rows : references
  trades ||--o{ journal_import_rows : references
  portfolios ||--o{ journal_import_runs : references
  journal_playbooks ||--o{ journal_playbook_items : references
  trades ||--o{ journal_trade_attachments : references
  trades ||--o{ journal_trade_comments : references
  broker_connections ||--o{ journal_trade_details : references
  portfolios ||--o{ journal_trade_details : references
  trades ||--o{ journal_trade_details : references
  journal_playbooks ||--o{ journal_trade_playbook_reviews : references
  trades ||--o{ journal_trade_playbook_reviews : references
  trades ||--o{ journal_trade_tags : references
  user_notifications ||--o{ notification_deliveries : references
  agent_runs ||--o{ portfolio_manager_reports : references
  portfolios ||--o{ portfolio_manager_reports : references
  broker_connections ||--o{ portfolios : references
  portfolios ||--o{ position_lifecycle_events : references
  trades ||--o{ position_lifecycle_events : references
  portfolios ||--o{ positions : references
  portfolios ||--o{ risk_settings : references
  portfolios ||--o{ signals : references
  watchlists ||--o{ smart_watchlist_rules : references
  watchlists ||--o{ smart_watchlist_runs : references
  portfolios ||--o{ strategy_configs : references
  portfolios ||--o{ trades : references
  signals ||--o{ trades : references
  portfolios ||--o{ trading_lab_results : references
Table Model Source
admin_memberships AdminMembership packages/db/trademate_db/models/admin.py
admin_tier_overrides AdminTierOverride packages/db/trademate_db/models/admin.py
agent_decisions AgentDecision packages/db/trademate_db/models/agent.py
agent_runs AgentRun packages/db/trademate_db/models/agent.py
article_ticker_links ArticleTickerLink packages/db/trademate_db/models/news.py
audit_log AuditLog packages/db/trademate_db/models/audit.py
automation_pause_states AutomationPauseState packages/db/trademate_db/models/automation.py
automation_plans AutomationPlan packages/db/trademate_db/models/automation.py
broker_connections BrokerConnection packages/db/trademate_db/models/broker.py
calendar_events CalendarEvent packages/db/trademate_db/models/event.py
canonical_news_articles CanonicalNewsArticle packages/db/trademate_db/models/news.py
composite_recipe_versions CompositeRecipeVersion packages/db/trademate_db/models/market_reference.py
consent_acceptances ConsentAcceptance packages/db/trademate_db/models/consent.py
consent_requirements ConsentRequirement packages/db/trademate_db/models/consent.py
corporate_actions CorporateAction packages/db/trademate_db/models/market_reference.py
daily_news_features DailyNewsFeature packages/db/trademate_db/models/news.py
dataset_capabilities DatasetCapability packages/db/trademate_db/models/research_common.py
factor_methodology_versions FactorMethodologyVersion packages/db/trademate_db/models/market_reference.py
factor_score_distributions FactorScoreDistribution packages/db/trademate_db/models/market_reference.py
fills Fill packages/db/trademate_db/models/trade.py
journal_account_aliases JournalAccountAlias packages/db/trademate_db/models/journal.py
journal_analytics_snapshots JournalAnalyticsSnapshot packages/db/trademate_db/models/journal.py
journal_behavioral_events JournalBehavioralEvent packages/db/trademate_db/models/journal.py
journal_csv_mappings JournalCsvMapping packages/db/trademate_db/models/journal.py
journal_diary_entries JournalDiaryEntry packages/db/trademate_db/models/journal.py
journal_diary_templates JournalDiaryTemplate packages/db/trademate_db/models/journal.py
journal_import_rows JournalImportRow packages/db/trademate_db/models/journal.py
journal_import_runs JournalImportRun packages/db/trademate_db/models/journal.py
journal_migration_map JournalMigrationMap packages/db/trademate_db/models/journal.py
journal_playbook_items JournalPlaybookItem packages/db/trademate_db/models/journal.py
journal_playbooks JournalPlaybook packages/db/trademate_db/models/journal.py
journal_trade_attachments JournalTradeAttachment packages/db/trademate_db/models/journal.py
journal_trade_comments JournalTradeComment packages/db/trademate_db/models/journal.py
journal_trade_details JournalTradeDetail packages/db/trademate_db/models/journal.py
journal_trade_playbook_reviews JournalTradePlaybookReview packages/db/trademate_db/models/journal.py
journal_trade_tags JournalTradeTag packages/db/trademate_db/models/journal.py
llm_provider_keys LLMProviderKey packages/db/trademate_db/models/broker.py
metric_catalog_versions MetricCatalogVersion packages/db/trademate_db/models/market_reference.py
ml_model_registry MLModelRegistry packages/db/trademate_db/models/ml_ranking.py
ml_rank_predictions MLRankPrediction packages/db/trademate_db/models/ml_ranking.py
ml_screener_predictions MLScreenerPrediction packages/db/trademate_db/models/ml_screener.py
news_items NewsItem packages/db/trademate_db/models/news.py
notification_deliveries NotificationDelivery packages/db/trademate_db/models/notification.py
portfolio_manager_reports PortfolioManagerReport packages/db/trademate_db/models/portfolio_report.py
portfolios Portfolio packages/db/trademate_db/models/portfolio.py
position_lifecycle_events PositionLifecycleEvent packages/db/trademate_db/models/lifecycle.py
positions Position packages/db/trademate_db/models/position.py
provider_dataset_policies ProviderDatasetPolicy packages/db/trademate_db/models/research_common.py
provider_ingestion_runs ProviderIngestionRun packages/db/trademate_db/models/market_reference.py
regime_signals MarketRegimeSignal packages/db/trademate_db/models/regime.py
research_aggregate_fundamental_snapshots ResearchAggregateFundamentalSnapshot packages/db/trademate_db/models/research_equity.py
research_context_alignment_snapshots ResearchContextAlignmentSnapshot packages/db/trademate_db/models/research_equity.py
research_correlation_snapshots ResearchCorrelationSnapshot packages/db/trademate_db/models/research_equity.py
research_economic_release_vintages EconomicReleaseVintage packages/db/trademate_db/models/research_economics.py
research_economic_series EconomicSeries packages/db/trademate_db/models/research_economics.py
research_entity_breadth_snapshots ResearchEntityBreadthSnapshot packages/db/trademate_db/models/research_equity.py
research_entity_rank_snapshots ResearchEntityRankSnapshot packages/db/trademate_db/models/research_equity.py
research_equity_basket_return_snapshots ResearchEquityBasketReturnSnapshot packages/db/trademate_db/models/research_equity.py
research_index_constituent_snapshots ResearchIndexConstituentSnapshot packages/db/trademate_db/models/research_equity.py
research_index_definitions ResearchIndexDefinition packages/db/trademate_db/models/research_equity.py
research_industry_lifecycle_snapshots ResearchIndustryLifecycleSnapshot packages/db/trademate_db/models/research_equity.py
research_macro_dimension_snapshots MacroDimensionSnapshot packages/db/trademate_db/models/research_economics.py
research_macro_feature_snapshots MacroFeatureSnapshot packages/db/trademate_db/models/research_economics.py
research_macro_implication_decisions ResearchMacroImplicationDecision packages/db/trademate_db/models/research_implications.py
research_macro_implication_outcomes ResearchMacroImplicationOutcome packages/db/trademate_db/models/research_implications.py
research_macro_implications ResearchMacroImplication packages/db/trademate_db/models/research_implications.py
research_macro_observations EconomicObservation packages/db/trademate_db/models/research_economics.py
research_macro_syntheses ResearchMacroSynthesis packages/db/trademate_db/models/research_implications.py
research_observation_members ResearchObservationMember packages/db/trademate_db/models/research_common.py
research_observation_sets ResearchObservationSet packages/db/trademate_db/models/research_common.py
research_option_contracts ResearchOptionContract packages/db/trademate_db/models/research_options.py
research_options_analytics_snapshots ResearchOptionsAnalyticsSnapshot packages/db/trademate_db/models/research_options.py
research_options_eod_snapshots ResearchOptionEodSnapshot packages/db/trademate_db/models/research_options.py
research_paired_regime_permissions ResearchPairedRegimePermission packages/db/trademate_db/models/research_macro.py
research_provider_classification_evidence ResearchProviderClassificationEvidence packages/db/trademate_db/models/research_taxonomy.py
research_regime_dimension_snapshots ResearchRegimeDimensionSnapshot packages/db/trademate_db/models/research_macro.py
research_regime_feature_snapshots ResearchRegimeFeatureSnapshot packages/db/trademate_db/models/research_macro.py
research_regime_snapshots ResearchRegimeSnapshot packages/db/trademate_db/models/research_macro.py
research_regime_strategy_permissions ResearchRegimeStrategyPermission packages/db/trademate_db/models/research_macro.py
research_regime_transitions ResearchRegimeTransition packages/db/trademate_db/models/research_macro.py
research_sec_coverage_snapshots ResearchSecCoverageSnapshot packages/db/trademate_db/models/research_sec.py
research_sec_documents ResearchSecDocument packages/db/trademate_db/models/research_sec.py
research_sec_fact_observations ResearchSecFactObservation packages/db/trademate_db/models/research_sec.py
research_sec_filings ResearchSecFiling packages/db/trademate_db/models/research_sec.py
research_sec_ingestion_checkpoints ResearchSecIngestionCheckpoint packages/db/trademate_db/models/research_sec.py
research_sec_issuers ResearchSecIssuer packages/db/trademate_db/models/research_sec.py
research_sec_quarantine ResearchSecQuarantine packages/db/trademate_db/models/research_sec.py
research_secondary_exposure_tags ResearchSecondaryExposureTag packages/db/trademate_db/models/research_taxonomy.py
research_security_context_snapshots ResearchSecurityContextSnapshot packages/db/trademate_db/models/research_equity.py
research_security_sue_snapshots ResearchSecuritySUESnapshot packages/db/trademate_db/models/research_equity.py
research_security_taxonomy_mappings ResearchSecurityTaxonomyMapping packages/db/trademate_db/models/research_taxonomy.py
research_strategy_setup_snapshots ResearchStrategySetupSnapshot packages/db/trademate_db/models/research_equity.py
research_taxonomy_mapping_candidates ResearchTaxonomyMappingCandidate packages/db/trademate_db/models/research_taxonomy.py
research_taxonomy_nodes ResearchTaxonomyNode packages/db/trademate_db/models/research_taxonomy.py
research_taxonomy_override_audit ResearchTaxonomyOverrideAudit packages/db/trademate_db/models/research_taxonomy.py
research_taxonomy_quarantine ResearchTaxonomyQuarantine packages/db/trademate_db/models/research_taxonomy.py
risk_settings RiskSettings packages/db/trademate_db/models/portfolio.py
saved_screener_definitions SavedScreenerDefinition packages/db/trademate_db/models/ml_screener.py
security_composite_scores SecurityCompositeScore packages/db/trademate_db/models/market_reference.py
security_factor_scores SecurityFactorScore packages/db/trademate_db/models/market_reference.py
security_feature_snapshots SecurityFeatureSnapshot packages/db/trademate_db/models/market_reference.py
security_master SecurityMaster packages/db/trademate_db/models/market_reference.py
security_score_transitions SecurityScoreTransition packages/db/trademate_db/models/market_reference.py
signals Signal packages/db/trademate_db/models/signal.py
smart_watchlist_rules SmartWatchlistRule packages/db/trademate_db/models/watchlist.py
smart_watchlist_runs SmartWatchlistRun packages/db/trademate_db/models/watchlist.py
strategy_configs StrategyConfig packages/db/trademate_db/models/strategy.py
subscriptions Subscription packages/db/trademate_db/models/subscription.py
trades Trade packages/db/trademate_db/models/trade.py
trading_lab_results TradingLabResult packages/db/trademate_db/models/trading_lab.py
universe_members UniverseMember packages/db/trademate_db/models/market_reference.py
universe_snapshots UniverseSnapshot packages/db/trademate_db/models/market_reference.py
user_notifications UserNotification packages/db/trademate_db/models/notification.py
user_profiles UserProfile packages/db/trademate_db/models/user.py
watchlists Watchlist packages/db/trademate_db/models/watchlist.py