PR Checks / Frontend Typecheck + Tests (pull_request) Successful in 1m2s
PR Checks / Backend Smoke (pull_request) Successful in 7s
PR Checks / Build Backend (no push) (pull_request) Successful in 11s
PR Checks / Build Frontend (no push) (pull_request) Successful in 48s
PR Checks / Build Pipeline (no push) (pull_request) Successful in 10s
PR Checks / AI Code Review (Claude) (pull_request) Successful in 8s
Replace X-Frame-Options: SAMEORIGIN with a CSP frame-ancestors directive so analytics.schoolcompare.co.uk (Umami heatmap/recorder) can embed the site while all other origins stay blocked. X-Frame-Options cannot allow a specific sibling subdomain (ALLOW-FROM is deprecated/ignored by modern browsers), so frame-ancestors is the correct replacement. Also update the nginx snippet in DEPLOYMENT.md to match, so the reverse proxy doesn't re-inject a conflicting X-Frame-Options header. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
120 lines
5.2 KiB
YAML
120 lines
5.2 KiB
YAML
- generic [active] [ref=f7e1]:
|
||
- link "Skip to main content" [ref=f7e2] [cursor=pointer]:
|
||
- /url: "#main-content"
|
||
- banner [ref=f7e3]:
|
||
- link "SchoolCompare home" [ref=f7e5] [cursor=pointer]:
|
||
- /url: /
|
||
- img [ref=f7e7]
|
||
- generic [ref=f7e11]: SchoolCompare
|
||
- navigation "Main navigation" [ref=f7e12]:
|
||
- link "Search" [ref=f7e13] [cursor=pointer]:
|
||
- /url: /
|
||
- img [ref=f7e15]
|
||
- generic [ref=f7e18]: Search
|
||
- link "1 selected Compare" [ref=f7e19] [cursor=pointer]:
|
||
- /url: /compare
|
||
- generic [ref=f7e20]:
|
||
- img [ref=f7e21]
|
||
- generic "1 selected" [ref=f7e24]: "1"
|
||
- generic [ref=f7e25]: Compare
|
||
- link "Rankings" [ref=f7e26] [cursor=pointer]:
|
||
- /url: /rankings
|
||
- img [ref=f7e28]
|
||
- generic [ref=f7e29]: Rankings
|
||
- link "Admissions" [ref=f7e30] [cursor=pointer]:
|
||
- /url: /admissions
|
||
- img [ref=f7e32]
|
||
- generic [ref=f7e35]: Admissions
|
||
- main [ref=f7e36]:
|
||
- generic [ref=f7e37]:
|
||
- generic [ref=f7e39]:
|
||
- generic [ref=f7e40]:
|
||
- heading "Compare Schools" [level=1] [ref=f7e41]
|
||
- paragraph [ref=f7e42]: Comparing 1 school
|
||
- generic [ref=f7e43]:
|
||
- button "+ Add School" [ref=f7e44] [cursor=pointer]
|
||
- button "Share" [ref=f7e45] [cursor=pointer]:
|
||
- img [ref=f7e46]
|
||
- text: Share
|
||
- generic [ref=f7e49]:
|
||
- button "Primary (1)" [ref=f7e50] [cursor=pointer]
|
||
- button "Secondary (0)" [ref=f7e51] [cursor=pointer]
|
||
- generic [ref=f7e52]:
|
||
- generic [ref=f7e53]: "Select Metric:"
|
||
- combobox "Select Metric:" [ref=f7e54] [cursor=pointer]:
|
||
- option "Reading, Writing & Maths Combined %" [selected]
|
||
- option "Reading Expected %"
|
||
- option "Writing Expected %"
|
||
- option "Maths Expected %"
|
||
- option "GPS Expected %"
|
||
- option "Science Expected %"
|
||
- option "Reading, Writing & Maths Combined Higher %"
|
||
- option "Reading Higher %"
|
||
- option "Writing Higher %"
|
||
- option "Maths Higher %"
|
||
- option "GPS Higher %"
|
||
- option "Reading Progress"
|
||
- option "Writing Progress"
|
||
- option "Maths Progress"
|
||
- option "Reading Average Score"
|
||
- option "Maths Average Score"
|
||
- option "GPS Average Score"
|
||
- option "Reading, Writing & Maths Expected % (Boys)"
|
||
- option "Reading, Writing & Maths Expected % (Girls)"
|
||
- option "Reading, Writing & Maths Higher % (Boys)"
|
||
- option "Reading, Writing & Maths Higher % (Girls)"
|
||
- option "Reading, Writing & Maths Expected % (Disadvantaged)"
|
||
- option "Reading, Writing & Maths Expected % (Non-Disadvantaged)"
|
||
- option "Disadvantaged Gap"
|
||
- option "% Disadvantaged Pupils"
|
||
- option "% EAL Pupils"
|
||
- option "% SEN Support"
|
||
- option "% Pupil Stability"
|
||
- option "Reading Test Absence %"
|
||
- option "GPS Test Absence %"
|
||
- option "Maths Test Absence %"
|
||
- option "Writing Absence %"
|
||
- option "Science Absence %"
|
||
- paragraph [ref=f7e55]: "% meeting expected standard in reading, writing and maths"
|
||
- generic [ref=f7e58]:
|
||
- button "Remove The Castle School" [ref=f7e59] [cursor=pointer]: ×
|
||
- heading "The Castle School" [level=2] [ref=f7e60]:
|
||
- link "The Castle School" [ref=f7e61] [cursor=pointer]:
|
||
- /url: /school/136916-the-castle-school
|
||
- generic [ref=f7e62]:
|
||
- generic [ref=f7e63]: Somerset
|
||
- generic [ref=f7e64]: Academy converter
|
||
- contentinfo [ref=f7e76]:
|
||
- generic [ref=f7e77]:
|
||
- generic [ref=f7e78]:
|
||
- generic [ref=f7e79]:
|
||
- heading "SchoolCompare" [level=3] [ref=f7e80]
|
||
- paragraph [ref=f7e81]: Compare primary and secondary schools across England.
|
||
- link "contact@schoolcompare.co.uk" [ref=f7e82] [cursor=pointer]:
|
||
- /url: mailto:contact@schoolcompare.co.uk
|
||
- generic [ref=f7e83]:
|
||
- heading "Product" [level=4] [ref=f7e84]
|
||
- list [ref=f7e85]:
|
||
- listitem [ref=f7e86]:
|
||
- link "Search schools" [ref=f7e87] [cursor=pointer]:
|
||
- /url: /
|
||
- listitem [ref=f7e88]:
|
||
- link "Rankings" [ref=f7e89] [cursor=pointer]:
|
||
- /url: /rankings
|
||
- listitem [ref=f7e90]:
|
||
- link "Compare shortlist" [ref=f7e91] [cursor=pointer]:
|
||
- /url: /compare
|
||
- listitem [ref=f7e92]:
|
||
- link "Admissions guide" [ref=f7e93] [cursor=pointer]:
|
||
- /url: /admissions
|
||
- generic [ref=f7e94]:
|
||
- heading "Resources" [level=4] [ref=f7e95]
|
||
- list [ref=f7e96]:
|
||
- listitem [ref=f7e97]:
|
||
- link "School Performance Tables" [ref=f7e98] [cursor=pointer]:
|
||
- /url: https://www.gov.uk/school-performance-tables
|
||
- listitem [ref=f7e99]:
|
||
- link "Ofsted reports" [ref=f7e100] [cursor=pointer]:
|
||
- /url: https://reports.ofsted.gov.uk/
|
||
- paragraph [ref=f7e102]: © 2026 SchoolCompare.co.uk
|
||
- alert [ref=f7e103] |