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.

djacobs/Pinwheel

https://github.com/djacobs/Pinwheel · scanned 2026-06-17 01:57 UTC (1 month, 1 week ago)

119 raw signals (0 security + 119 graph)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 1 month, 1 week ago · v2 · last Δ -10.3 (diff) · 99 actionable findings from 1 signal source. 20 repeated signals grouped for readability. 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 5132 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
in software healthy static/js/sse.js:in
createEventSource software healthy static/js/sse.js:createEventSource
registerSSE software healthy static/js/sse.js:registerSSE
ensureEventSourceOnElement software healthy static/js/sse.js:ensureEventSourceOnElement
ensureEventSource software healthy static/js/sse.js:ensureEventSource
returns software healthy static/js/sse.js:returns
maybeCloseSSESource software healthy static/js/sse.js:maybeCloseSSESource
swap software healthy static/js/sse.js:swap
hasEventSource software healthy static/js/sse.js:hasEventSource
d software healthy static/js/htmx.min.js:d
ae software healthy static/js/htmx.min.js:ae
we software healthy static/js/htmx.min.js:we
et software healthy static/js/htmx.min.js:et
it software healthy static/js/htmx.min.js:it
yt software healthy static/js/htmx.min.js:yt
Ot software healthy static/js/htmx.min.js:Ot
Ut software healthy static/js/htmx.min.js:Ut
Xn software healthy static/js/htmx.min.js:Xn
Vn software healthy static/js/htmx.min.js:Vn
make_interaction software healthy tests/test_codegen_admin.py:38
_make_settings software healthy tests/test_codegen_admin.py:52
_make_codegen_effect software healthy tests/test_codegen_admin.py:69
_make_game_state software healthy tests/test_codegen_admin.py:96
test_embed_has_correct_title_enabled software healthy tests/test_codegen_admin.py:140
test_embed_has_correct_title_disabled software healthy tests/test_codegen_admin.py:146
test_embed_shows_description software healthy tests/test_codegen_admin.py:151
test_embed_has_trust_level_field software healthy tests/test_codegen_admin.py:156
test_embed_has_execution_count software healthy tests/test_codegen_admin.py:162
test_embed_has_error_count software healthy tests/test_codegen_admin.py:168
test_embed_shows_code_preview software healthy tests/test_codegen_admin.py:174
test_embed_truncates_long_code software healthy tests/test_codegen_admin.py:181
test_embed_shows_disabled_reason software healthy tests/test_codegen_admin.py:188
test_embed_shows_last_error software healthy tests/test_codegen_admin.py:196
test_embed_shows_code_hash software healthy tests/test_codegen_admin.py:203
test_embed_footer software healthy tests/test_codegen_admin.py:209
test_embed_color software healthy tests/test_codegen_admin.py:214
test_codegen_effect_shows_metadata software healthy tests/test_codegen_admin.py:229
test_disabled_codegen_shows_disabled software healthy tests/test_codegen_admin.py:241
test_non_codegen_no_codegen_metadata software healthy tests/test_codegen_admin.py:248
test_mixed_effects_summary software healthy tests/test_codegen_admin.py:260
test_non_admin_rejected software healthy tests/test_codegen_admin.py:379
test_no_guild_rejected software healthy tests/test_codegen_admin.py:393
test_no_engine_rejected software healthy tests/test_codegen_admin.py:407
test_full_lifecycle software healthy tests/test_codegen_admin.py:429
test_lifecycle_with_disable software healthy tests/test_codegen_admin.py:497
test_lifecycle_effects_summary_reflects_state software healthy tests/test_codegen_admin.py:534
test_lifecycle_embed_reflects_state software healthy tests/test_codegen_admin.py:560
_make_attrs software healthy tests/test_strategy_integration.py:34
_make_hooper software healthy tests/test_strategy_integration.py:59
_make_team software healthy tests/test_strategy_integration.py:76

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

LabelLayerStatusPath
TestCodegenReviewEmbed software healthy tests/test_codegen_admin.py:137
TestEffectsSummaryCodegen software healthy tests/test_codegen_admin.py:226
TestReviewCodegenCommand software healthy tests/test_codegen_admin.py:294
TestDisableEffectCommand software healthy tests/test_codegen_admin.py:343
TestRerunCouncilCommand software healthy tests/test_codegen_admin.py:375
TestCodegenEndToEndLifecycle software healthy tests/test_codegen_admin.py:426
TestDefensiveIntensityFoulRate software healthy tests/test_strategy_integration.py:104
TestDefensiveIntensityStaminaDrain software healthy tests/test_strategy_integration.py:177
TestPaceModifierStaminaDrain software healthy tests/test_strategy_integration.py:223
TestStrategySchemeSelection software healthy tests/test_strategy_integration.py:319
TestStrategyInGameResult software healthy tests/test_strategy_integration.py:412
TestFullGameStrategyIntegration software healthy tests/test_strategy_integration.py:448
TestStrategyDeterminism software healthy tests/test_strategy_integration.py:563
TestComputeRoundStartTimes software healthy tests/test_schedule_times.py:12
TestFormatGameTime software healthy tests/test_schedule_times.py:71
TestGroupIntoSlots software healthy tests/test_schedule_times.py:114
Entry software healthy tests/test_schedule_times.py:177
TestArchetypes software healthy tests/test_seeding.py:10
TestLeagueGeneration software healthy tests/test_seeding.py:35
TestYAMLRoundTrip software healthy tests/test_seeding.py:60
TestEmptyPages software healthy tests/test_pages.py:110
TestPopulatedPages software healthy tests/test_pages.py:133
TestArenaLive software healthy tests/test_pages.py:242
TestHooperPages software healthy tests/test_pages.py:289
TestGovernorPages software healthy tests/test_pages.py:317
TestTeamTrajectory software healthy tests/test_pages.py:474
TestAdminRoster software healthy tests/test_pages.py:817
TestAdminSeason software healthy tests/test_pages.py:871
TestAdminLandingPage software healthy tests/test_pages.py:935
TestGovernancePhaseContext software healthy tests/test_pages.py:1030
TestStandingsCallouts software healthy tests/test_pages.py:1086
TestReportsPhaseContext software healthy tests/test_pages.py:1193
TestBuildSeriesContext software healthy tests/test_pages.py:1213
TestBuildSeriesDescriptionFallback software healthy tests/test_pages.py:1337
TestArenaSeriesContextLive software healthy tests/test_pages.py:1363
TestGameDetailContext software healthy tests/test_pages.py:1491
TestGameDetailHistoricalContext software healthy tests/test_pages.py:1639
MockGame software healthy tests/test_pages.py:1808
TestRulesPageHistory software healthy tests/test_pages.py:1894
TestRulesPageGameplayDelta software healthy tests/test_pages.py:2120
TestRepositoryAvgGameScore software healthy tests/test_pages.py:2321
TestWhatChangedFallback software healthy tests/test_pages.py:2372
TestWhatChangedPartialEndpoint software healthy tests/test_pages.py:2441
TestWhatChangedHomePage software healthy tests/test_pages.py:2504
TestGameDetailAnnotations software healthy tests/test_pages.py:2536
TestHooperBioXSS software healthy tests/test_pages.py:2641
TestSplitStandings software healthy tests/test_pages.py:2807
TestTallyHooperTrade software healthy tests/test_tokens.py:39
TestExecuteHooperTrade software healthy tests/test_tokens.py:229
TestTradeTimingWithSimulation software healthy tests/test_tokens.py:298

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

LabelLayerStatusPath
CLAUDE.md software healthy CLAUDE.md
AGENTS.md software healthy AGENTS.md
fly.toml software healthy fly.toml
README.md software healthy README.md
pyproject.toml software healthy pyproject.toml
Dockerfile software healthy Dockerfile
sse.js software healthy static/js/sse.js
htmx.min.js software healthy static/js/htmx.min.js
pinwheel.css software healthy static/css/pinwheel.css
test_codegen_admin.py software healthy tests/test_codegen_admin.py
test_strategy_integration.py software healthy tests/test_strategy_integration.py
test_schedule_times.py software healthy tests/test_schedule_times.py
test_seeding.py software healthy tests/test_seeding.py
test_pages.py software healthy tests/test_pages.py
test_tokens.py software healthy tests/test_tokens.py
test_pace.py software healthy tests/test_pace.py
test_scheduler_runner.py software healthy tests/test_scheduler_runner.py
test_governance.py software healthy tests/test_governance.py
test_season_lifecycle.py software healthy tests/test_season_lifecycle.py
test_season.py software healthy tests/test_season.py
conftest.py software healthy tests/conftest.py
test_presenter.py software healthy tests/test_presenter.py
test_auth.py software healthy tests/test_auth.py
test_admin_review.py software healthy tests/test_admin_review.py
test_amendment.py software healthy tests/test_amendment.py
test_memorial.py software healthy tests/test_memorial.py
test_onboarding.py software healthy tests/test_onboarding.py
test_follow.py software healthy tests/test_follow.py
test_action_registry.py software healthy tests/test_action_registry.py
test_simulation.py software healthy tests/test_simulation.py
__init__.py software healthy tests/__init__.py
test_discord.py software healthy tests/test_discord.py
test_codegen.py software healthy tests/test_codegen.py
test_commentary.py software healthy tests/test_commentary.py
test_drama.py software healthy tests/test_drama.py
test_classifier.py software healthy tests/test_classifier.py
test_rules_dashboard.py software healthy tests/test_rules_dashboard.py
test_charts.py software healthy tests/test_charts.py
test_codegen_lifecycle.py software healthy tests/test_codegen_lifecycle.py
test_trajectory.py software healthy tests/test_trajectory.py
test_game_definition_patch.py software healthy tests/test_game_definition_patch.py
test_messages_api.py software healthy tests/test_messages_api.py
test_insights.py software healthy tests/test_insights.py
test_models.py software healthy tests/test_models.py
test_game_loop.py software healthy tests/test_game_loop.py
test_admin_perf.py software healthy tests/test_admin_perf.py
test_bot_search.py software healthy tests/test_bot_search.py
test_sse_security.py software healthy tests/test_sse_security.py
test_pages_what_changed.py software healthy tests/test_pages_what_changed.py
test_playoffs.py software healthy tests/test_playoffs.py

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

LabelLayerStatusPath
GET /health api healthy src/pinwheel/main.py
GET /review api healthy src/pinwheel/api/admin_review.py
GET /round/{season_id}/{round_number} api healthy src/pinwheel/api/reports.py
GET /private/{season_id}/{governor_id} api healthy src/pinwheel/api/reports.py
GET /latest/{season_id} api healthy src/pinwheel/api/reports.py
GET /standings api healthy src/pinwheel/api/standings.py
GET / api healthy src/pinwheel/api/teams.py
GET /{team_id} api healthy src/pinwheel/api/teams.py
GET /stream api healthy src/pinwheel/api/events.py
GET /proposals api healthy src/pinwheel/api/governance.py
GET /rules/current api healthy src/pinwheel/api/governance.py
GET /rules/history api healthy src/pinwheel/api/governance.py
POST / api healthy src/pinwheel/api/seasons.py
POST /advance api healthy src/pinwheel/api/pace.py
GET /status api healthy src/pinwheel/api/pace.py
GET /season api healthy src/pinwheel/api/admin_season.py
GET /workbench api healthy src/pinwheel/api/admin_workbench.py
POST /workbench/test-classifier api healthy src/pinwheel/api/admin_workbench.py
GET /perf api healthy src/pinwheel/api/admin_perf.py
GET /partials/what-changed api healthy src/pinwheel/api/pages.py
GET /play api healthy src/pinwheel/api/pages.py
GET /arena api healthy src/pinwheel/api/pages.py
GET /games/{game_id} api healthy src/pinwheel/api/pages.py
GET /teams/{team_id} api healthy src/pinwheel/api/pages.py
GET /hoopers/{hooper_id} api healthy src/pinwheel/api/pages.py
GET /hoopers/{hooper_id}/bio/edit api healthy src/pinwheel/api/pages.py
GET /hoopers/{hooper_id}/bio/view api healthy src/pinwheel/api/pages.py
POST /hoopers/{hooper_id}/bio api healthy src/pinwheel/api/pages.py
GET /governors/{player_id} api healthy src/pinwheel/api/pages.py
GET /governance api healthy src/pinwheel/api/pages.py
GET /rules api healthy src/pinwheel/api/pages.py
GET /reports api healthy src/pinwheel/api/pages.py
GET /post api healthy src/pinwheel/api/pages.py
GET /playoffs api healthy src/pinwheel/api/pages.py
GET /seasons/archive api healthy src/pinwheel/api/pages.py
GET /seasons/archive/{season_id} api healthy src/pinwheel/api/pages.py
GET /history api healthy src/pinwheel/api/pages.py
GET /seasons/{season_id}/memorial api healthy src/pinwheel/api/pages.py
GET /admin api healthy src/pinwheel/api/pages.py
GET /terms api healthy src/pinwheel/api/pages.py
GET /privacy api healthy src/pinwheel/api/pages.py
GET /playoffs/bracket api healthy src/pinwheel/api/games.py
GET /{game_id} api healthy src/pinwheel/api/games.py
GET /{game_id}/boxscore api healthy src/pinwheel/api/games.py
POST /api/teams/{team_id}/follow api healthy src/pinwheel/api/follow.py
DELETE /api/teams/{team_id}/follow api healthy src/pinwheel/api/follow.py
GET /roster api healthy src/pinwheel/api/admin_roster.py
GET /evals api healthy src/pinwheel/api/eval_dashboard.py
GET /costs api healthy src/pinwheel/api/admin_costs.py
GET /login api healthy src/pinwheel/auth/oauth.py

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

LabelLayerStatusPath
Base data healthy src/pinwheel/db/models.py
LeagueRow data healthy src/pinwheel/db/models.py
SeasonRow data healthy src/pinwheel/db/models.py
TeamRow data healthy src/pinwheel/db/models.py
HooperRow data healthy src/pinwheel/db/models.py
GameResultRow data healthy src/pinwheel/db/models.py
BoxScoreRow data healthy src/pinwheel/db/models.py
GovernanceEventRow data healthy src/pinwheel/db/models.py
ReportRow data healthy src/pinwheel/db/models.py
PlayerRow data healthy src/pinwheel/db/models.py
ScheduleRow data healthy src/pinwheel/db/models.py
BotStateRow data healthy src/pinwheel/db/models.py
SeasonArchiveRow data healthy src/pinwheel/db/models.py
AIUsageLogRow data healthy src/pinwheel/db/models.py
EvalResultRow data healthy src/pinwheel/db/models.py
leagues data healthy src/pinwheel/db/models.py
seasons data healthy src/pinwheel/db/models.py
teams data healthy src/pinwheel/db/models.py
hoopers data healthy src/pinwheel/db/models.py
game_results data healthy src/pinwheel/db/models.py
box_scores data healthy src/pinwheel/db/models.py
governance_events data healthy src/pinwheel/db/models.py
reports data healthy src/pinwheel/db/models.py
players data healthy src/pinwheel/db/models.py
schedule data healthy src/pinwheel/db/models.py
bot_state data healthy src/pinwheel/db/models.py
season_archives data healthy src/pinwheel/db/models.py
ai_usage_log data healthy src/pinwheel/db/models.py
eval_results data healthy src/pinwheel/db/models.py

LabelLayerStatusPath
static software healthy static
js software healthy static/js
css software healthy static/css
tests software healthy tests
test_api software healthy tests/test_api
test_evals software healthy tests/test_evals
scripts software healthy scripts
demo software healthy demo
templates software healthy templates
components software healthy templates/components
pages software healthy templates/pages
partials software healthy templates/partials
src software healthy src
pinwheel software healthy src/pinwheel
evals software healthy src/pinwheel/evals
api software healthy src/pinwheel/api
auth software healthy src/pinwheel/auth
models software healthy src/pinwheel/models
db software healthy src/pinwheel/db
core software healthy src/pinwheel/core
discord software healthy src/pinwheel/discord
ai software healthy src/pinwheel/ai
docs software healthy docs
dev_log software healthy docs/dev_log
plans software healthy docs/plans
skills software healthy docs/skills
post-commit software healthy docs/skills/post-commit
product software healthy docs/product

LabelLayerStatusPath
auth::src/pinwheel/auth/deps.py security healthy src/pinwheel/auth/deps.py
auth::src/pinwheel/api/reports.py security healthy src/pinwheel/api/reports.py
auth::tests/test_ai_costs.py security healthy tests/test_ai_costs.py
auth::templates/pages/terms.html security healthy templates/pages/terms.html
auth::src/pinwheel/auth/oauth.py security healthy src/pinwheel/auth/oauth.py
auth::src/pinwheel/api/admin_roster.py security healthy src/pinwheel/api/admin_roster.py
auth::src/pinwheel/api/admin_perf.py security healthy src/pinwheel/api/admin_perf.py
auth::CLAUDE.md security healthy CLAUDE.md
auth::src/pinwheel/api/eval_dashboard.py security healthy src/pinwheel/api/eval_dashboard.py
auth::tests/test_evals/test_eval_dashboard.py security healthy tests/test_evals/test_eval_dashboard.py
auth::tests/test_auth.py security healthy tests/test_auth.py
auth::tests/test_pages.py security healthy tests/test_pages.py
auth::src/pinwheel/db/repository.py security healthy src/pinwheel/db/repository.py
auth::src/pinwheel/api/admin_costs.py security healthy src/pinwheel/api/admin_costs.py
auth::src/pinwheel/api/admin_review.py security healthy src/pinwheel/api/admin_review.py
auth::src/pinwheel/main.py security healthy src/pinwheel/main.py
auth::src/pinwheel/api/admin_workbench.py security healthy src/pinwheel/api/admin_workbench.py
auth::templates/pages/privacy.html security healthy templates/pages/privacy.html
auth::tests/test_admin_perf.py security healthy tests/test_admin_perf.py
auth::tests/test_evals/test_injection.py security healthy tests/test_evals/test_injection.py
auth::tests/test_admin_review.py security healthy tests/test_admin_review.py
auth::tests/test_admin_workbench.py security healthy tests/test_admin_workbench.py
auth::tests/test_admin_auth.py security healthy tests/test_admin_auth.py

LabelLayerStatusPath
sqlite data healthy CLAUDE.md
redis data healthy CLAUDE.md
postgresql data healthy src/pinwheel/config.py

LabelLayerStatusPath
port:8080 network healthy Dockerfile
port:8765 network healthy scripts/run_demo.sh

LabelLayerStatusPath
djacobs__Pinwheel software healthy /data/fable5_failed_archive/djacobs__Pinwheel

LabelLayerStatusPath
image::Dockerfile hardware healthy Dockerfile

LabelLayerStatusPath
vps::aws hardware healthy tests/test_reports.py
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/61d567b8-d082-4667-815a-72dd7f74b56f/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/61d567b8-d082-4667-815a-72dd7f74b56f/

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.