{"schema_version":1,"page_version":"mp-office-page-v1","slug":"justin-madders-ellesmere-port-and-bromborough","generated":"2026-04-30","rollout":"generated","purpose":"Generated LLM-friendly public-data index for MP office workflows. Fetch this file first, then follow the source index links needed for the task.","member":{"member_id":4418,"name":"Justin Madders","party":"Labour","party_slug":"labour","tracker_party_slug":"labour","constituency":"Ellesmere Port and Bromborough","constituency_id":4037,"tracker_has_full_history":false,"tracker_coverage_start":"2026-04-21","tracker_coverage_end":"2026-05-01"},"theme":{"accent":"#D50000","accent_dark":"#8F0000","accent_tint":"#F6D6D6","accent_soft":"#FFF4F4"},"coverage":{"own_activity_start":"2026-02-02","own_activity_end":"2026-04-28","own_activity_history_scope":"current office-data window","own_activity_counts_are_since_2024_election":false,"local_mentions_start":"2024-07-04","local_mentions_end":"2026-04-30","office_snapshot_start":"2026-01-30","office_snapshot_end":"2026-04-30"},"count_scopes":{"own_activity":{"scope":"current office-data window","start":"2026-02-02","end":"2026-04-28","count_keys":["votes_available","spoken_contributions_available","edms_available","written_questions_available"]},"constituency_mentions":{"scope":"post-2024-election constituency mention extract","start":"2024-07-04","end":"2026-04-30","count_keys":["constituency_mentions_available","constituency_mentions_since_2024_election"]},"current_office_reference_data":{"scope":"current office snapshot","start":"2026-01-30","end":"2026-04-30","count_keys":["awaiting_written_question_answers","registered_interests","committees","bills"]},"selected_party_voting_context":{"scope":"tracker voting-pattern dataset","status":"available","count_key":"party_majority_different_votes_available","count_semantics":"recorded votes where this MP's vote differed from the selected party majority among party MPs who voted"}},"counts":{"constituency_mentions_since_2024_election":74,"votes_available":87,"spoken_contributions_available":26,"edms_available":0,"written_questions_available":55,"constituency_mentions_available":74,"awaiting_written_question_answers":0,"registered_interests":3,"committees":7,"bills":2,"party_majority_different_votes_available":11},"constituency_mention_facets":{"own_member":2,"other_speakers":72,"constituency_name":72,"mapped_place":2,"review_matches":69},"constituency_mention_facets_are_non_exclusive":true,"selected_party_voting_context":{"status":"available","count":11,"count_semantics":"recorded votes where this MP's vote differed from the selected party majority among party MPs who voted","selected_party_slug":"labour","selected_party_label":"Labour","tracker_href":"/mp-tracker?party=labour&mp=4418&view=patterns","party_dataset_pattern_count":2177,"party_dataset_recent_pattern_count":50,"party_dataset_first_pattern_date":"2024-07-23","party_dataset_last_pattern_date":"2026-04-28","divisions_checked":23,"mixed_divisions":92,"source":"commonsvotes-api","meaning":"Recorded votes where this MP's vote differed from the Labour majority in the tracker voting-pattern dataset.","does_not_mean":["A zero count does not mean the MP has no votes.","This is descriptive context, not a score, ranking, or judgement of intent."]},"links":{"html":"/mps/justin-madders-ellesmere-port-and-bromborough","llm_markdown":"/mps/justin-madders-ellesmere-port-and-bromborough/llm.md","data_json":"/mps/justin-madders-ellesmere-port-and-bromborough/data.json","search_manifest":"/mps/justin-madders-ellesmere-port-and-bromborough/search-manifest.json","topics_index":"/mps/justin-madders-ellesmere-port-and-bromborough/topics/index.json","places_index":"/mps/justin-madders-ellesmere-port-and-bromborough/places/index.json","raw_office_data":"/office-data/datasets/office-data-v1-wpc-2024/offices/justin-madders-ellesmere-port-and-bromborough/index.json","tracker":"/mp-tracker?party=labour&mp=4418","tracker_profile":"/mp-tracker?party=labour&mp=4418&view=profile","tracker_briefing":"/mp-tracker?party=labour&mp=4418&view=newsletter","tracker_voting":"/mp-tracker?party=labour&mp=4418&view=patterns","raw_tracker_party_data":"/mp-tracker/data/labour.json"},"source_indexes":{"votes":{"label":"Votes","description":"Commons divisions recorded for the MP in this page's own-activity coverage.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/votes/index.json","count":87,"count_semantics":"records in this generated source index","first_date":"2026-02-03","last_date":"2026-04-28","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact division records show this MP's recorded vote and official division URL; open the official source for full division context.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":48,"href":"2026-04.json"},{"month":"2026-03","count":28,"href":"2026-03.json"},{"month":"2026-02","count":11,"href":"2026-02.json"}],"topic_hints":[{"term":"young people","count":18},{"term":"crime and policing bill","count":14},{"term":"crime policing bill","count":14},{"term":"children s wellbeing schools bill","count":13},{"term":"english devolution community empowerment bill","count":12},{"term":"english devolution and community empowerment bill","count":10},{"term":"pension schemes bill","count":9},{"term":"victims courts bill","count":6},{"term":"victims and courts bill","count":6},{"term":"national insurance contributions (employer pensions contributions) bill","count":5},{"term":"to disagree 5","count":3},{"term":"to disagree 1","count":3}],"vote_counts":{"Aye":74,"No":13}},"months":[{"month":"2026-04","count":48,"href":"2026-04.json"},{"month":"2026-03","count":28,"href":"2026-03.json"},{"month":"2026-02","count":11,"href":"2026-02.json"}]},"spoken-contributions":{"label":"Spoken contributions","description":"Hansard spoken contributions by the MP in this page's own-activity coverage.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/spoken-contributions/index.json","count":26,"count_semantics":"records in this generated source index","first_date":"2026-02-02","last_date":"2026-04-28","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact records include a short summary and Hansard URL; do not treat the summary as the full contribution text.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":14,"href":"2026-04.json"},{"month":"2026-03","count":7,"href":"2026-03.json"},{"month":"2026-02","count":5,"href":"2026-02.json"}],"topic_hints":[{"term":"business of the house","count":3},{"term":"business of house","count":3},{"term":"single status of worker","count":3},{"term":"representation of the people bill","count":3},{"term":"representation of people bill","count":3},{"term":"referral of prime minister to committee of privileges","count":2},{"term":"public procurement","count":2},{"term":"middle east","count":2},{"term":"draft building safety (responsible actors scheme and prohibitions) (amendment) regulations 2026","count":2},{"term":"public office (accountability) bill (carry-over)","count":1},{"term":"public office accountability bill carry","count":1},{"term":"over","count":1}]},"months":[{"month":"2026-04","count":14,"href":"2026-04.json"},{"month":"2026-03","count":7,"href":"2026-03.json"},{"month":"2026-02","count":5,"href":"2026-02.json"}]},"edms":{"label":"Early Day Motions","description":"Early Day Motions signed by the MP in this page's own-activity coverage.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/edms/index.json","count":0,"count_semantics":"records in this generated source index","first_date":"","last_date":"","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact EDM records include title, date, signature context where available, and official URL; open the official source for motion text.","attribution_keys":["uk_parliament"],"preview":{},"months":[]},"written-questions":{"label":"Written questions","description":"Written questions tabled by the MP in this page's own-activity coverage.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/written-questions/index.json","count":55,"count_semantics":"records in this generated source index","first_date":"2026-02-12","last_date":"2026-04-23","coverage":{"start":"2026-02-02","end":"2026-04-28","scope":"current office-data window"},"source_note":"Compact records include question text, status, department, answer date/member where available, and official URL; full written answers are not embedded.","attribution_keys":["uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":9,"href":"2026-04.json"},{"month":"2026-03","count":19,"href":"2026-03.json"},{"month":"2026-02","count":27,"href":"2026-02.json"}],"topic_hints":[{"term":"department for business and trade","count":18},{"term":"social care","count":13},{"term":"health","count":13},{"term":"department for transport","count":9},{"term":"taxis","count":5},{"term":"eating disorders: ellesmere port and bromborough","count":4},{"term":"eating disorders","count":4},{"term":"manufacturing industries","count":4},{"term":"nhs trusts: subsidiary companies","count":4},{"term":"nhs trusts","count":4},{"term":"nhs","count":4},{"term":"young people","count":4}],"top_departments":[{"department":"Department for Business and Trade","count":18},{"department":"Department of Health and Social Care","count":13},{"department":"Department for Transport","count":10},{"department":"Department for Education","count":4},{"department":"Department for Work and Pensions","count":4},{"department":"Department for Environment, Food and Rural Affairs","count":3},{"department":"Department for Energy Security and Net Zero","count":2},{"department":"Treasury","count":1}],"status_counts":{"Answered":55}},"months":[{"month":"2026-04","count":9,"href":"2026-04.json"},{"month":"2026-03","count":19,"href":"2026-03.json"},{"month":"2026-02","count":27,"href":"2026-02.json"}]},"constituency-mentions":{"label":"Constituency mentions","description":"Hansard contributions matched to the constituency name or mapped local places.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/constituency-mentions/index.json","count":74,"count_semantics":"records in this generated source index","first_date":"2024-10-21","last_date":"2026-04-28","coverage":{"start":"2024-07-04","end":"2026-04-30","scope":"post-2024-election constituency mention extract"},"source_note":"Evidence-ranked Hansard matches include match basis, confidence, signals, matched terms, and official URL; check context before reuse.","attribution_keys":["ons_wpc_2024","os_open_names_2026_04","osni_gazetteer_2025_10_14","project_common_place_collision_words","uk_parliament"],"preview":{"month_previews":[{"month":"2026-04","count":14,"href":"2026-04.json"},{"month":"2026-03","count":6,"href":"2026-03.json"},{"month":"2026-02","count":2,"href":"2026-02.json"},{"month":"2026-01","count":5,"href":"2026-01.json"},{"month":"2025-12","count":6,"href":"2025-12.json"},{"month":"2025-11","count":9,"href":"2025-11.json"}],"topic_hints":[{"term":"ellesmere port and bromborough","count":71},{"term":"employment rights bill","count":24},{"term":"single status of worker","count":7},{"term":"business of the house","count":4},{"term":"business of house","count":4},{"term":"sale of fireworks","count":4},{"term":"draft building safety (responsible actors scheme and prohibitions) (amendment) regulations 2026","count":3},{"term":"public office (accountability) bill (carry-over)","count":2},{"term":"public office accountability bill carry","count":2},{"term":"over","count":2},{"term":"ellesmere port","count":2},{"term":"representation of the people bill","count":2}],"confidence_band_counts":{"high":5,"medium":69}},"months":[{"month":"2026-04","count":14,"href":"2026-04.json"},{"month":"2026-03","count":6,"href":"2026-03.json"},{"month":"2026-02","count":2,"href":"2026-02.json"},{"month":"2026-01","count":5,"href":"2026-01.json"},{"month":"2025-12","count":6,"href":"2025-12.json"},{"month":"2025-11","count":9,"href":"2025-11.json"},{"month":"2025-10","count":2,"href":"2025-10.json"},{"month":"2025-09","count":11,"href":"2025-09.json"},{"month":"2025-07","count":2,"href":"2025-07.json"},{"month":"2025-06","count":2,"href":"2025-06.json"},{"month":"2025-04","count":4,"href":"2025-04.json"},{"month":"2025-03","count":5,"href":"2025-03.json"},{"month":"2025-01","count":1,"href":"2025-01.json"},{"month":"2024-11","count":1,"href":"2024-11.json"},{"month":"2024-10","count":4,"href":"2024-10.json"}]},"geography":{"label":"Geography terms","description":"Constituency name and source-derived place terms used for Constituency Mentions.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/geography/index.json","count":18,"mapped_place_term_count":17,"mapped_place_term_counts_by_type":{"suburban area":15,"town":2},"source_note":"Constituency name and public source-derived place terms used to find Constituency Mentions; no boundary geometry is embedded.","attribution_keys":["ons_wpc_2024","os_boundary_line_2025_10","os_open_names_2026_04","osni_gazetteer_2025_10_14","project_common_place_collision_words"]},"open-follow-ups":{"label":"Open follow-ups","description":"Canonical awaiting-answer written-question queue reconciled from current office data and generated own-activity records.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/open-follow-ups/index.json","count":0,"count_semantics":"canonical awaiting-answer written-question records","coverage":{"start":"2026-01-30","end":"2026-04-30","scope":"current office snapshot reconciled against generated own-activity records"},"source_note":"Canonical public follow-up queue for written questions still awaiting answer; open the official question URL for live status and answer text.","attribution_keys":["uk_parliament"]},"current-snapshot":{"label":"Current office reference data","description":"Awaiting written-question answers, registered interests, committee records, and bill records from the current office snapshot.","href":"/mps/justin-madders-ellesmere-port-and-bromborough/current-snapshot/index.json","count":12,"record_count":12,"section_count":3,"count_semantics":"underlying records across current office reference-data components","component_counts":{"awaiting_written_question_answers":0,"registered_interests":3,"committees":7,"bills":2},"coverage":{"start":"2026-01-30","end":"2026-04-30","scope":"current office snapshot"},"source_note":"Current office reference data from the office snapshot. The count is the sum of component records: awaiting written-question answers, registered interests, committee records, and bill records.","attribution_keys":["uk_parliament"]}},"retrieval_indexes":{"search_manifest":{"href":"/mps/justin-madders-ellesmere-port-and-bromborough/search-manifest.json","count":176,"source_counts":{"committees":7,"interests":1,"spoken-contributions":26,"votes":87,"written-questions":55},"bytes":155072,"sharded":false,"attribution_keys":["uk_parliament"]},"topics":{"href":"/mps/justin-madders-ellesmere-port-and-bromborough/topics/index.json","count":6,"topic_slugs":["young-people","crime-and-policing-bill","health","social-care","heating-oil","registered-interests"],"attribution_keys":["ons_wpc_2024","uk_parliament"]},"places":{"href":"/mps/justin-madders-ellesmere-port-and-bromborough/places/index.json","count":18,"mentioned_place_count":2,"attribution_keys":["ons_wpc_2024","os_open_names_2026_04","uk_parliament"]},"open_follow_ups":{"href":"/mps/justin-madders-ellesmere-port-and-bromborough/open-follow-ups/index.json","count":0,"description":"Canonical awaiting-answer written-question queue reconciled from current office data and generated own-activity records.","attribution_keys":["uk_parliament"]}},"licences":[{"key":"ons_wpc_2024","label":"ONS Westminster Parliamentary Constituency boundaries","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains public sector information licensed under the Open Government Licence v3.0; source: Office for National Statistics.","source_version":"WPC July 2024 Boundaries EW BFE"},{"key":"os_boundary_line_2025_10","label":"OS Boundary-Line","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains OS data © Crown copyright and database right.","source_version":"OS Boundary-Line 2025-10 enrichment-only"},{"key":"os_open_names_2026_04","label":"OS Open Names","licence":"Open Government Licence v3.0","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains OS data © Crown copyright and database right.","source_version":"OS Open Names 2026-04"},{"key":"osni_gazetteer_2025_10_14","label":"OSNI Place Names Gazetteer","licence":"Open Government Licence compatible OSNI attribution","licence_url":"https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/","notice":"Contains Ordnance Survey of Northern Ireland data.","source_version":"OSNI Place Names Gazetteer 2025-10-14"},{"key":"project_common_place_collision_words","label":"Project common place-collision terms","licence":"project-reviewed term list; no external wordlist package","notice":"Used for deterministic dictionary-collision detection in the generated ambiguous register.","source_version":"project-common-place-collision-terms-v1"},{"key":"uk_parliament","label":"UK Parliament public data","licence":"Open Parliament Licence v3.0","licence_url":"https://www.parliament.uk/site-information/copyright-parliament/open-parliament-licence/","notice":"Contains Parliamentary information licensed under the Open Parliament Licence v3.0."}],"limitations":["This is a descriptive index of public parliamentary data, not a performance score.","Current office snapshot data is reference data. Own MP activity uses full post-2024-election tracker or office-data history where available, otherwise the current office-data window.","Constituency Mentions are evidence-ranked matches and should be checked against the linked Hansard source before reuse."]}
