Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

chrishadley1983/football-predictor

https://github.com/chrishadley1983/football-predictor · scanned 2026-06-17 01:48 UTC (1 month, 1 week ago)

42 raw signals (0 security + 42 graph)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 1 month, 1 week ago · v2 · last Δ -4.4 (diff) · 42 actionable findings from 1 signal source. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all

All 987 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.

LabelLayerStatusPath
nextId software healthy tests/helpers/fake-supabase.ts:nextId
matches software healthy tests/helpers/fake-supabase.ts:matches
makeFakeAdmin software healthy tests/helpers/fake-supabase.ts:makeFakeAdmin
asAdmin software healthy tests/test-functions/force-complete.test.ts:asAdmin
req software healthy tests/test-functions/admin-gating.test.ts:req
buildTournament software healthy tests/performance/scale.test.ts:buildTournament
req software healthy tests/auth/register.test.ts:req
install software healthy tests/unit/achievements.test.ts:install
badgesFor software healthy tests/unit/achievements.test.ts:badgesFor
allBadgeTypes software healthy tests/unit/achievements.test.ts:allBadgeTypes
base software healthy tests/unit/achievements.test.ts:base
e1 software healthy tests/unit/achievements.test.ts:e1
firstCount software healthy tests/unit/achievements.test.ts:firstCount
secondCount software healthy tests/unit/achievements.test.ts:secondCount
ms software healthy tests/unit/results-sync.test.ts:ms
install software healthy tests/unit/scoring.test.ts:install
team software healthy tests/unit/golden-ticket.test.ts:team
req software healthy tests/routes/predictions-knockout.test.ts:req
seed software healthy tests/routes/predictions-knockout.test.ts:seed
req software healthy tests/routes/admin-entry-delete.test.ts:req
fullSeed software healthy tests/routes/admin-entry-delete.test.ts:fullSeed
req software healthy tests/routes/predictions-groups.test.ts:req
seed software healthy tests/routes/predictions-groups.test.ts:seed
req software healthy tests/routes/admin-payment-status.test.ts:req
middleware software healthy src/middleware.ts:middleware
RootLayout software healthy src/app/layout.tsx:RootLayout
HomePage software healthy src/app/page.tsx:HomePage
allTournaments software healthy src/app/page.tsx:allTournaments
LoginRedirect software healthy src/app/login/page.tsx:LoginRedirect
DELETE software healthy src/app/api/admin/entries/[id]/route.ts:DELETE
prizePool software healthy src/app/api/admin/entries/[id]/route.ts:prizePool
PATCH software healthy src/app/api/admin/entries/[id]/payment/route.ts:PATCH
oldStatus software healthy src/app/api/admin/entries/[id]/payment/route.ts:oldStatus
DELETE software healthy src/app/api/admin/entries/[id]/predictions/route.ts:DELETE
isoAt software healthy src/app/api/admin/seed/wc2026/route.ts:isoAt
POST software healthy src/app/api/admin/seed/wc2026/route.ts:POST
pushKnockout software healthy src/app/api/admin/seed/wc2026/route.ts:pushKnockout
POST software healthy src/app/api/admin/seed/wc2022/route.ts:POST
DELETE software healthy src/app/api/admin/tournaments/[slug]/route.ts:DELETE
POST software healthy src/app/api/admin/tournaments/[slug]/setup/route.ts:POST
POST software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
totalGoals software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
resetTestData software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
entryIds software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
groupIds software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
shuffle software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
seedEntries software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
seedKnockoutPredictions software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
email software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…
getTopLeaderboard software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts:…

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
vitest.config.ts software healthy vitest.config.ts
eslint.config.mjs software healthy eslint.config.mjs
package-lock.json software healthy package-lock.json
README.md software healthy README.md
.env.local.example software healthy .env.local.example
postcss.config.mjs software healthy postcss.config.mjs
package.json software healthy package.json
tsconfig.json software healthy tsconfig.json
setup.ts software healthy tests/setup.ts
README.md software healthy tests/README.md
fake-supabase.ts software healthy tests/helpers/fake-supabase.ts
harness-gate.test.ts software healthy tests/test-functions/harness-gate.test.ts
force-complete.test.ts software healthy tests/test-functions/force-complete.test.ts
admin-gating.test.ts software healthy tests/test-functions/admin-gating.test.ts
scale.test.ts software healthy tests/performance/scale.test.ts
register.test.ts software healthy tests/auth/register.test.ts
secure-compare.test.ts software healthy tests/auth/secure-compare.test.ts
auth.test.ts software healthy tests/auth/auth.test.ts
Badge.test.tsx software healthy tests/components/Badge.test.tsx
PlayerAvatar.test.tsx software healthy tests/components/PlayerAvatar.test.tsx
BadgeLegend.test.tsx software healthy tests/components/BadgeLegend.test.tsx
Button.test.tsx software healthy tests/components/Button.test.tsx
badge-info.test.ts software healthy tests/unit/badge-info.test.ts
achievements.test.ts software healthy tests/unit/achievements.test.ts
seed-helpers.test.ts software healthy tests/unit/seed-helpers.test.ts
results-sync.test.ts software healthy tests/unit/results-sync.test.ts
utils.test.ts software healthy tests/unit/utils.test.ts
scoring.test.ts software healthy tests/unit/scoring.test.ts
golden-ticket.test.ts software healthy tests/unit/golden-ticket.test.ts
server-only.ts software healthy tests/stubs/server-only.ts
predictions-knockout.test.ts software healthy tests/routes/predictions-knockout.test.ts
admin-entry-delete.test.ts software healthy tests/routes/admin-entry-delete.test.ts
predictions-groups.test.ts software healthy tests/routes/predictions-groups.test.ts
admin-payment-status.test.ts software healthy tests/routes/admin-payment-status.test.ts
middleware.ts software healthy src/middleware.ts
globals.css software healthy src/app/globals.css
layout.tsx software healthy src/app/layout.tsx
page.tsx software healthy src/app/page.tsx
page.tsx software healthy src/app/login/page.tsx
route.ts software healthy src/app/api/admin/entries/[id]/route.ts
route.ts software healthy src/app/api/admin/entries/[id]/payment/route.ts
route.ts software healthy src/app/api/admin/entries/[id]/predictions/route.ts
route.ts software healthy src/app/api/admin/seed/wc2026/route.ts
route.ts software healthy src/app/api/admin/seed/wc2022/route.ts
route.ts software healthy src/app/api/admin/tournaments/[slug]/route.ts
route.ts software healthy src/app/api/admin/tournaments/[slug]/setup/route.ts
route.ts software healthy src/app/api/admin/tournaments/[slug]/time-machine/route.ts
route.ts software healthy src/app/api/admin/tournaments/[slug]/force-complete/route.ts
route.ts software healthy src/app/api/admin/tournaments/[slug]/generate-punditry/rout…
route.ts software healthy src/app/api/admin/tournaments/[slug]/seed-results/route.ts

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
tests software healthy tests
helpers software healthy tests/helpers
test-functions software healthy tests/test-functions
performance software healthy tests/performance
auth software healthy tests/auth
components software healthy tests/components
unit software healthy tests/unit
stubs software healthy tests/stubs
routes software healthy tests/routes
src software healthy src
app software healthy src/app
login software healthy src/app/login
api software healthy src/app/api
admin software healthy src/app/api/admin
entries software healthy src/app/api/admin/entries
[id] software healthy src/app/api/admin/entries/[id]
payment software healthy src/app/api/admin/entries/[id]/payment
predictions software healthy src/app/api/admin/entries/[id]/predictions
seed software healthy src/app/api/admin/seed
wc2026 software healthy src/app/api/admin/seed/wc2026
wc2022 software healthy src/app/api/admin/seed/wc2022
tournaments software healthy src/app/api/admin/tournaments
[slug] software healthy src/app/api/admin/tournaments/[slug]
setup software healthy src/app/api/admin/tournaments/[slug]/setup
time-machine software healthy src/app/api/admin/tournaments/[slug]/time-machine
force-complete software healthy src/app/api/admin/tournaments/[slug]/force-complete
generate-punditry software healthy src/app/api/admin/tournaments/[slug]/generate-punditry
seed-results software healthy src/app/api/admin/tournaments/[slug]/seed-results
import-url software healthy src/app/api/admin/tournaments/[slug]/import-url
seed-entries software healthy src/app/api/admin/tournaments/[slug]/seed-entries
sync-results software healthy src/app/api/admin/tournaments/[slug]/sync-results
reset-test-data software healthy src/app/api/admin/tournaments/[slug]/reset-test-data
posts software healthy src/app/api/admin/tournaments/[slug]/posts
status software healthy src/app/api/admin/tournaments/[slug]/status
stats software healthy src/app/api/admin/tournaments/[slug]/stats
game-result software healthy src/app/api/admin/tournaments/[slug]/game-result
profile software healthy src/app/api/profile
auth software healthy src/app/api/auth
register software healthy src/app/api/auth/register
webhooks software healthy src/app/api/webhooks
chat-message software healthy src/app/api/webhooks/chat-message
tournaments software healthy src/app/api/tournaments
[slug] software healthy src/app/api/tournaments/[slug]
golden-ticket software healthy src/app/api/tournaments/[slug]/golden-ticket
enter software healthy src/app/api/tournaments/[slug]/enter
pundit software healthy src/app/api/tournaments/[slug]/pundit
results software healthy src/app/api/tournaments/[slug]/results
leaderboard software healthy src/app/api/tournaments/[slug]/leaderboard
posts software healthy src/app/api/tournaments/[slug]/posts
[postSlug] software healthy src/app/api/tournaments/[slug]/posts/[postSlug]

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
20260209160000_public_access.sql data healthy supabase/migrations/20260209160000_public_access.sql
20260209210000_fix_player_rls.sql data healthy supabase/migrations/20260209210000_fix_player_rls.sql
20260209260000_add_post_image_url.sql data healthy supabase/migrations/20260209260000_add_post_image_url.sql
20260209170000_chat_messages.sql data healthy supabase/migrations/20260209170000_chat_messages.sql
20260531000002_chat_audit_webhook_url_from_vault.sql data healthy supabase/migrations/20260531000002_chat_audit_webhook_url_f…
20260601130000_co_entrant_definer.sql data healthy supabase/migrations/20260601130000_co_entrant_definer.sql
20260209230000_fix_honours_unique.sql data healthy supabase/migrations/20260209230000_fix_honours_unique.sql
20260601140000_chat_insert_entrants.sql data healthy supabase/migrations/20260601140000_chat_insert_entrants.sql
20260228100000_chat_phase1.sql data healthy supabase/migrations/20260228100000_chat_phase1.sql
20260225230000_knockout_predictions_anon_access.sql data healthy supabase/migrations/20260225230000_knockout_predictions_ano…
20260421120000_chat_audit_webhook.sql data healthy supabase/migrations/20260421120000_chat_audit_webhook.sql
20260209200000_add_match_dates.sql data healthy supabase/migrations/20260209200000_add_match_dates.sql
20260226100000_pundit_snippets.sql data healthy supabase/migrations/20260226100000_pundit_snippets.sql
20260531000003_add_stadium_to_matches.sql data healthy supabase/migrations/20260531000003_add_stadium_to_matches.s…
20260225210000_predictions_anon_access.sql data healthy supabase/migrations/20260225210000_predictions_anon_access.…
20260225220000_player_achievements.sql data healthy supabase/migrations/20260225220000_player_achievements.sql
20260228200000_chat_phase2_3.sql data healthy supabase/migrations/20260228200000_chat_phase2_3.sql
20260209220000_restrict_entry_self_update.sql data healthy supabase/migrations/20260209220000_restrict_entry_self_upda…
20260601150000_tournament_testers.sql data healthy supabase/migrations/20260601150000_tournament_testers.sql
20260209240000_add_indexes.sql data healthy supabase/migrations/20260209240000_add_indexes.sql
20260601000000_player_email_preferences.sql data healthy supabase/migrations/20260601000000_player_email_preferences…
20260601122000_refresh_chat_reply_fk.sql data healthy supabase/migrations/20260601122000_refresh_chat_reply_fk.sql
20260209180000_honours_expansion.sql data healthy supabase/migrations/20260209180000_honours_expansion.sql
20260531000001_fix_chat_update_policy.sql data healthy supabase/migrations/20260531000001_fix_chat_update_policy.s…
20260227100000_golden_tickets.sql data healthy supabase/migrations/20260227100000_golden_tickets.sql
20260601120000_chat_entrant_visibility.sql data healthy supabase/migrations/20260601120000_chat_entrant_visibility.…
20260209150000_football_prediction_game.sql data healthy supabase/migrations/20260209150000_football_prediction_game…
20260209190000_player_avatars.sql data healthy supabase/migrations/20260209190000_player_avatars.sql
20260209250000_fix_view_security.sql data healthy supabase/migrations/20260209250000_fix_view_security.sql

LabelLayerStatusPath
/page.tsx frontend healthy src/app/page.tsx
/login frontend healthy src/app/login/page.tsx
/admin frontend healthy src/app/admin/page.tsx
/admin/tournaments/[slug]/entries frontend healthy src/app/admin/tournaments/[slug]/entries/page.tsx
/admin/tournaments/[slug]/setup frontend healthy src/app/admin/tournaments/[slug]/setup/page.tsx
/admin/tournaments/[slug]/manage frontend healthy src/app/admin/tournaments/[slug]/manage/page.tsx
/admin/tournaments/[slug]/testing frontend healthy src/app/admin/tournaments/[slug]/testing/page.tsx
/admin/tournaments/[slug]/results frontend healthy src/app/admin/tournaments/[slug]/results/page.tsx
/admin/tournaments/[slug]/posts frontend healthy src/app/admin/tournaments/[slug]/posts/page.tsx
/admin/tournaments/new frontend healthy src/app/admin/tournaments/new/page.tsx
/honours frontend healthy src/app/honours/page.tsx
/profile frontend healthy src/app/profile/page.tsx
/auth/login frontend healthy src/app/auth/login/page.tsx
/auth/register frontend healthy src/app/auth/register/page.tsx
/register frontend healthy src/app/register/page.tsx
/unsubscribe/[token] frontend healthy src/app/unsubscribe/[token]/page.tsx
/tournament/[slug] frontend healthy src/app/tournament/[slug]/page.tsx
/tournament/[slug]/chat frontend healthy src/app/tournament/[slug]/chat/page.tsx
/tournament/[slug]/predict/groups frontend healthy src/app/tournament/[slug]/predict/groups/page.tsx
/tournament/[slug]/predict/knockout frontend healthy src/app/tournament/[slug]/predict/knockout/page.tsx
/tournament/[slug]/enter frontend healthy src/app/tournament/[slug]/enter/page.tsx
/tournament/[slug]/results frontend healthy src/app/tournament/[slug]/results/page.tsx
/tournament/[slug]/leaderboard frontend healthy src/app/tournament/[slug]/leaderboard/page.tsx
/tournament/[slug]/rules frontend healthy src/app/tournament/[slug]/rules/page.tsx
/tournament/[slug]/posts frontend healthy src/app/tournament/[slug]/posts/page.tsx
/tournament/[slug]/posts/[post-slug] frontend healthy src/app/tournament/[slug]/posts/[post-slug]/page.tsx
/tournament/[slug]/predictions frontend healthy src/app/tournament/[slug]/predictions/page.tsx

LabelLayerStatusPath
chat_messages data healthy supabase/migrations/20260209170000_chat_messages.sql
chat_reactions data healthy supabase/migrations/20260228100000_chat_phase1.sql
chat_mentions data healthy supabase/migrations/20260228100000_chat_phase1.sql
group_matches data healthy supabase/migrations/20260209200000_add_match_dates.sql
pundit_snippets data healthy supabase/migrations/20260226100000_pundit_snippets.sql
player_achievements data healthy supabase/migrations/20260225220000_player_achievements.sql
chat_read_cursors data healthy supabase/migrations/20260228200000_chat_phase2_3.sql
tournament_testers data healthy supabase/migrations/20260601150000_tournament_testers.sql
golden_tickets data healthy supabase/migrations/20260227100000_golden_tickets.sql
tournaments data healthy supabase/migrations/20260209150000_football_prediction_game…
groups data healthy supabase/migrations/20260209150000_football_prediction_game…
teams data healthy supabase/migrations/20260209150000_football_prediction_game…
group_teams data healthy supabase/migrations/20260209150000_football_prediction_game…
knockout_matches data healthy supabase/migrations/20260209150000_football_prediction_game…
players data healthy supabase/migrations/20260209150000_football_prediction_game…
tournament_entries data healthy supabase/migrations/20260209150000_football_prediction_game…
group_predictions data healthy supabase/migrations/20260209150000_football_prediction_game…
group_results data healthy supabase/migrations/20260209150000_football_prediction_game…
knockout_predictions data healthy supabase/migrations/20260209150000_football_prediction_game…
tournament_stats data healthy supabase/migrations/20260209150000_football_prediction_game…
honours data healthy supabase/migrations/20260209150000_football_prediction_game…
posts data healthy supabase/migrations/20260209150000_football_prediction_game…
knockout_round_config data healthy supabase/migrations/20260209150000_football_prediction_game…

LabelLayerStatusPath
RootLayout frontend healthy src/app/layout.tsx
LoginRedirect frontend healthy src/app/login/page.tsx
SeedButton frontend healthy src/app/admin/SeedButton.tsx
EntriesPage frontend healthy src/app/admin/tournaments/[slug]/entries/page.tsx
SetupPage frontend healthy src/app/admin/tournaments/[slug]/setup/page.tsx
ManageTournamentPage frontend healthy src/app/admin/tournaments/[slug]/manage/page.tsx
TestingPage frontend healthy src/app/admin/tournaments/[slug]/testing/page.tsx
ResultsPage frontend healthy src/app/admin/tournaments/[slug]/results/page.tsx
AdminPostsPage frontend healthy src/app/admin/tournaments/[slug]/posts/page.tsx
NewTournamentPage frontend healthy src/app/admin/tournaments/new/page.tsx
ProfilePage frontend healthy src/app/profile/page.tsx
LoginPage frontend healthy src/app/auth/login/page.tsx
RegisterPage frontend healthy src/app/auth/register/page.tsx
RegisterRedirect frontend healthy src/app/register/page.tsx
GroupPredictionPage frontend healthy src/app/tournament/[slug]/predict/groups/page.tsx
KnockoutPredictionPage frontend healthy src/app/tournament/[slug]/predict/knockout/page.tsx
EnterTournamentPage frontend healthy src/app/tournament/[slug]/enter/page.tsx

LabelLayerStatusPath
password_literal::tests/auth/register.test.ts security healthy tests/auth/register.test.ts
password_literal::tests/auth/register.test.ts security healthy tests/auth/register.test.ts
password_literal::tests/auth/register.test.ts security healthy tests/auth/register.test.ts
password_literal::tests/auth/register.test.ts security healthy tests/auth/register.test.ts
password_literal::tests/auth/register.test.ts security healthy tests/auth/register.test.ts
generic_api_key::src/components/chat/GifPicker.tsx security healthy src/components/chat/GifPicker.tsx

LabelLayerStatusPath
vps::gcp hardware healthy tsconfig.json
vps::azure hardware healthy supabase/config.toml
vps::aws hardware healthy supabase/config.toml

LabelLayerStatusPath
QueryBuilder software healthy tests/helpers/fake-supabase.ts:QueryBuilder
FakeAdminClient software healthy tests/helpers/fake-supabase.ts:FakeAdminClient

LabelLayerStatusPath
120.0.0.0 network healthy src/app/api/admin/tournaments/[slug]/import-url/route.ts
137.0.0.0 network healthy analysis/wc2026-model/betting/common.py

LabelLayerStatusPath
chrishadley1983__football-predictor software healthy /data/fable5_failed_archive/chrishadley1983__football-predi…

LabelLayerStatusPath
postgres data healthy .env.local.example

LabelLayerStatusPath
auth::supabase/config.toml security healthy supabase/config.toml
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/084cf217-337e-4b6e-a321-713bd647ec16/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/084cf217-337e-4b6e-a321-713bd647ec16/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.