Compare commits
merge into: tudor/school_compare:feat/release-identity-and-reliability-gate
tudor/school_compare:main
tudor/school_compare:fix/nearby-drop-lede
tudor/school_compare:fix/school-page-selective-flag
tudor/school_compare:feat/header-facts-and-flags
tudor/school_compare:fix/la-average-cached-failure
tudor/school_compare:fix/search-row-facts
tudor/school_compare:fix/header-nursery-and-gender
tudor/school_compare:feat/phase-order-child-path
tudor/school_compare:fix/desktop-clear-keeps-search
tudor/school_compare:fix/modal-close-tap-target
tudor/school_compare:feat/single-state-school-group
tudor/school_compare:feat/school-type-groups-faith
tudor/school_compare:fix/filter-options-not-from-results
tudor/school_compare:feat/mobile-filter-sheet
tudor/school_compare:fix/e2e-after-half-mile-default
tudor/school_compare:fix/map-popup-view-button
tudor/school_compare:fix/default-radius-half-mile
tudor/school_compare:fix/toolbar-one-line
tudor/school_compare:fix/phase-filter-exact-match
tudor/school_compare:fix/phase-filter-global
tudor/school_compare:fix/map-pane-header
tudor/school_compare:feat/map-list-rows
tudor/school_compare:fix/phone-toolbar-width
tudor/school_compare:feat/results-map-view
tudor/school_compare:feat/results-toolbar
tudor/school_compare:feat/compare-limit-per-phase
tudor/school_compare:copy/remove-em-dashes
tudor/school_compare:fix/jump-sheet-under-bottom-bar
tudor/school_compare:fix/nearby-journey-waits-for-smooth-scroll
tudor/school_compare:fix/nearby-scroll-journey-clicks-offscreen-card
tudor/school_compare:fix/nearby-schools-order-by-distance
tudor/school_compare:feat/similar-schools-nearby
tudor/school_compare:fix/release-check-diagnostics
tudor/school_compare:feat/release-identity-and-reliability-gate
tudor/school_compare:docs/current-truth-and-legacy-inventory
tudor/school_compare:fix/og-image-route-group
tudor/school_compare:feat/school-page-place-links
tudor/school_compare:feat/about-blog-flags
tudor/school_compare:fix/payload-import-map
tudor/school_compare:fix/payload-initial-migration
tudor/school_compare:feat/about-and-blog
tudor/school_compare:fix/destinations-national-grain
tudor/school_compare:fix/airflow-fixed-admin-password
tudor/school_compare:feat/ks4-destinations
tudor/school_compare:fix/dark-mode-map-popup-contrast
tudor/school_compare:fix/distance-flag-off-absence-copy
tudor/school_compare:fix/navigation-source-soft-nav
tudor/school_compare:feat/place-school-attributes
tudor/school_compare:feat/place-analytics
tudor/school_compare:fix/mobile-hero-search
tudor/school_compare:fix/suggest-reopens-over-results
tudor/school_compare:fix/dark-map-fade
tudor/school_compare:fix/hero-dropdown-clipping
tudor/school_compare:feat/school-autosuggest
tudor/school_compare:fix/flags-runbook
tudor/school_compare:feat/feature-flags
tudor/school_compare:fix/place-phase-links
tudor/school_compare:feat/place-alphabetical-sort
tudor/school_compare:fix/e2e-canonical-and-robots
tudor/school_compare:feat/place-multiple-authorities
tudor/school_compare:fix/place-table-alignment
tudor/school_compare:fix/place-presentation-to-main
tudor/school_compare:fix/place-title-brand-doubling
tudor/school_compare:fix/place-page-presentation
tudor/school_compare:fix/place-phase-variants
tudor/school_compare:fix/locality-collision-skip
tudor/school_compare:feat/w2-location-layer
tudor/school_compare:feat/seo-metadata-c1
tudor/school_compare:fix/sitemap-any-year-data
tudor/school_compare:fix/staging-noindex
tudor/school_compare:feat/seo-crawl-hygiene-main
tudor/school_compare:feat/hero-artwork
tudor/school_compare:fix/homepage-truth-and-rhythm-main
tudor/school_compare:feat/brand-logo-artwork
tudor/school_compare:fix/homepage-truth-and-rhythm
tudor/school_compare:feat/schoolcompare-brand
tudor/school_compare:feat/detail-gias-fields-remove-unwired
tudor/school_compare:fix/special-schools-not-failing
tudor/school_compare:fix/detail-allthrough-admissions-phase
tudor/school_compare:fix/expert-signoff-shouldfixes
tudor/school_compare:fix/gias-blank-name-codes
tudor/school_compare:feat/compare-api-enrichment
tudor/school_compare:feat/gias-code-dictionaries
tudor/school_compare:feat/compare-chart-mobile-readability
tudor/school_compare:feat/pr-comment-agent
..
pull from: tudor/school_compare:fix/release-check-diagnostics
tudor/school_compare:fix/nearby-drop-lede
tudor/school_compare:main
tudor/school_compare:fix/school-page-selective-flag
tudor/school_compare:feat/header-facts-and-flags
tudor/school_compare:fix/la-average-cached-failure
tudor/school_compare:fix/search-row-facts
tudor/school_compare:fix/header-nursery-and-gender
tudor/school_compare:feat/phase-order-child-path
tudor/school_compare:fix/desktop-clear-keeps-search
tudor/school_compare:fix/modal-close-tap-target
tudor/school_compare:feat/single-state-school-group
tudor/school_compare:feat/school-type-groups-faith
tudor/school_compare:fix/filter-options-not-from-results
tudor/school_compare:feat/mobile-filter-sheet
tudor/school_compare:fix/e2e-after-half-mile-default
tudor/school_compare:fix/map-popup-view-button
tudor/school_compare:fix/default-radius-half-mile
tudor/school_compare:fix/toolbar-one-line
tudor/school_compare:fix/phase-filter-exact-match
tudor/school_compare:fix/phase-filter-global
tudor/school_compare:fix/map-pane-header
tudor/school_compare:feat/map-list-rows
tudor/school_compare:fix/phone-toolbar-width
tudor/school_compare:feat/results-map-view
tudor/school_compare:feat/results-toolbar
tudor/school_compare:feat/compare-limit-per-phase
tudor/school_compare:copy/remove-em-dashes
tudor/school_compare:fix/jump-sheet-under-bottom-bar
tudor/school_compare:fix/nearby-journey-waits-for-smooth-scroll
tudor/school_compare:fix/nearby-scroll-journey-clicks-offscreen-card
tudor/school_compare:fix/nearby-schools-order-by-distance
tudor/school_compare:feat/similar-schools-nearby
tudor/school_compare:fix/release-check-diagnostics
tudor/school_compare:feat/release-identity-and-reliability-gate
tudor/school_compare:docs/current-truth-and-legacy-inventory
tudor/school_compare:fix/og-image-route-group
tudor/school_compare:feat/school-page-place-links
tudor/school_compare:feat/about-blog-flags
tudor/school_compare:fix/payload-import-map
tudor/school_compare:fix/payload-initial-migration
tudor/school_compare:feat/about-and-blog
tudor/school_compare:fix/destinations-national-grain
tudor/school_compare:fix/airflow-fixed-admin-password
tudor/school_compare:feat/ks4-destinations
tudor/school_compare:fix/dark-mode-map-popup-contrast
tudor/school_compare:fix/distance-flag-off-absence-copy
tudor/school_compare:fix/navigation-source-soft-nav
tudor/school_compare:feat/place-school-attributes
tudor/school_compare:feat/place-analytics
tudor/school_compare:fix/mobile-hero-search
tudor/school_compare:fix/suggest-reopens-over-results
tudor/school_compare:fix/dark-map-fade
tudor/school_compare:fix/hero-dropdown-clipping
tudor/school_compare:feat/school-autosuggest
tudor/school_compare:fix/flags-runbook
tudor/school_compare:feat/feature-flags
tudor/school_compare:fix/place-phase-links
tudor/school_compare:feat/place-alphabetical-sort
tudor/school_compare:fix/e2e-canonical-and-robots
tudor/school_compare:feat/place-multiple-authorities
tudor/school_compare:fix/place-table-alignment
tudor/school_compare:fix/place-presentation-to-main
tudor/school_compare:fix/place-title-brand-doubling
tudor/school_compare:fix/place-page-presentation
tudor/school_compare:fix/place-phase-variants
tudor/school_compare:fix/locality-collision-skip
tudor/school_compare:feat/w2-location-layer
tudor/school_compare:feat/seo-metadata-c1
tudor/school_compare:fix/sitemap-any-year-data
tudor/school_compare:fix/staging-noindex
tudor/school_compare:feat/seo-crawl-hygiene-main
tudor/school_compare:feat/hero-artwork
tudor/school_compare:fix/homepage-truth-and-rhythm-main
tudor/school_compare:feat/brand-logo-artwork
tudor/school_compare:fix/homepage-truth-and-rhythm
tudor/school_compare:feat/schoolcompare-brand
tudor/school_compare:feat/detail-gias-fields-remove-unwired
tudor/school_compare:fix/special-schools-not-failing
tudor/school_compare:fix/detail-allthrough-admissions-phase
tudor/school_compare:fix/expert-signoff-shouldfixes
tudor/school_compare:fix/gias-blank-name-codes
tudor/school_compare:feat/compare-api-enrichment
tudor/school_compare:feat/gias-code-dictionaries
tudor/school_compare:feat/compare-chart-mobile-readability
tudor/school_compare:feat/pr-comment-agent
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
64ae71d7ab |
fix(ci): make a failed release check say what it actually saw
PR Checks / Frontend Typecheck + Tests (pull_request) Successful in 1m11s
PR Checks / Backend Smoke (pull_request) Successful in 9s
PR Checks / Build Backend (no push) (pull_request) Successful in 17s
PR Checks / Build Frontend (no push) (pull_request) Successful in 1m17s
PR Checks / Build Pipeline (no push) (pull_request) Successful in 11s
PR Checks / AI Code Review (Claude) (pull_request) Successful in 1m4s
The staging poller swallowed every failure identically, so a run that timed out told us only that the expected release never appeared — not whether the proxy refused us, the endpoint was down, or the containers were still serving an older build. The public staging proxy also answers 403 to urllib's default user agent while the release endpoint is healthy, which looked exactly like a deployment that never arrived. Identify the poller, and report each distinct observation once: HTTP status, connection failure type, invalid JSON, or the release identities actually reported. The timeout error carries the last observation and the identity it wanted. Responses and the base URL stay out of the logs — only validated sha/build_id fields are echoed back. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|
|
7ab084dd3a |
Merge pull request 'feat: verify what we actually deployed, and publish data all-or-nothing' (#148) from feat/release-identity-and-reliability-gate into main
Stage (build -> staging -> E2E gate) / prepare (push) Successful in 0s
Stage (build -> staging -> E2E gate) / Build Backend (FastAPI) (push) Successful in 21s
Stage (build -> staging -> E2E gate) / Build Frontend (Next.js) (push) Successful in 1m31s
Stage (build -> staging -> E2E gate) / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 1m27s
Stage (build -> staging -> E2E gate) / Deploy to Staging (push) Failing after 5m3s
Stage (build -> staging -> E2E gate) / E2E Journeys against Staging (push) Skipped
Reviewed-on: #148 |
||
|
|
dc156058fe |
Merge pull request 'docs: describe the system that exists, and remove the importer's remains' (#147) from docs/current-truth-and-legacy-inventory into main
Stage (build -> staging -> E2E gate) / Build Backend (FastAPI) (push) Successful in 22s
Stage (build -> staging -> E2E gate) / Build Frontend (Next.js) (push) Successful in 1m22s
Stage (build -> staging -> E2E gate) / Build Pipeline (Meltano + dbt + Airflow) (push) Successful in 12s
Stage (build -> staging -> E2E gate) / Deploy to Staging (push) Successful in 1s
Stage (build -> staging -> E2E gate) / E2E Journeys against Staging (push) Successful in 1m57s
Reviewed-on: #147 |