https://github.com/phpstan/phpstan
· scanned 2026-06-05 17:55 UTC (4 days, 21 hours ago)
· 10 languages
146 raw signals (34 security + 112 graph) 11/13 scanners ran 57th percentile · Php · small (2-20K LoC) System graph score 82 (lower by 10)
Last scanned 4 days, 21 hours ago · v2 · 67 actionable findings from 2 signal sources. 23 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
40.0 | 0.15 | 6.00 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
45.0 | 0.20 | 9.00 |
documentation_score |
71.0 | 0.15 | 10.65 |
practices_score |
89.0 | 0.15 | 13.35 |
code_quality |
80.0 | 0.10 | 8.00 |
| Overall | 1.00 | 72.0 |
All 1926 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.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
bootstrap.php |
software | healthy | bootstrap.php |
BACKERS.md |
software | healthy | BACKERS.md |
UPGRADING.md |
software | healthy | UPGRADING.md |
composer.json |
software | healthy | composer.json |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
.typos.toml |
software | healthy | .typos.toml |
vite.config.js |
software | warning | website/vite.config.js |
.eleventy.js |
software | healthy | website/.eleventy.js |
.eslintrc.js |
software | warning | website/.eslintrc.js |
CLAUDE.md |
software | healthy | website/CLAUDE.md |
tailwind.config.js |
software | warning | website/tailwind.config.js |
package.json |
software | healthy | website/package.json |
package-lock.json |
software | healthy | website/package-lock.json |
tsconfig.json |
software | healthy | website/tsconfig.json |
postcss.config.js |
software | warning | website/postcss.config.js |
build-wasm.sh |
software | healthy | website/scripts/build-wasm.sh |
composer.json |
software | healthy | website/scripts/stubs/composer.json |
build-stubs.php |
software | healthy | website/scripts/stubs/build-stubs.php |
generics.interfaceConflict.md |
software | healthy | website/errors/generics.interfaceConflict.md |
switch.type.md |
software | healthy | website/errors/switch.type.md |
generator.nonIterable.md |
software | healthy | website/errors/generator.nonIterable.md |
ignore.count.md |
software | healthy | website/errors/ignore.count.md |
label.unused.md |
software | healthy | website/errors/label.unused.md |
phpstan.dumpType.md |
software | healthy | website/errors/phpstan.dumpType.md |
generator.keyType.md |
software | healthy | website/errors/generator.keyType.md |
variable.dynamicName.md |
software | healthy | website/errors/variable.dynamicName.md |
method.internalTrait.md |
software | healthy | website/errors/method.internalTrait.md |
classConstant.internalEnum.md |
software | healthy | website/errors/classConstant.internalEnum.md |
generics.variance.md |
software | healthy | website/errors/generics.variance.md |
attribute.trait.md |
software | healthy | website/errors/attribute.trait.md |
phpstanApi.phpstanNamespace.md |
software | healthy | website/errors/phpstanApi.phpstanNamespace.md |
assign.readOnlyProperty.md |
software | healthy | website/errors/assign.readOnlyProperty.md |
property.uninitializedReadonly.md |
software | healthy | website/errors/property.uninitializedReadonly.md |
possiblyImpure.superglobal.md |
software | healthy | website/errors/possiblyImpure.superglobal.md |
possiblyImpure.propertyAssign.md |
software | healthy | website/errors/possiblyImpure.propertyAssign.md |
offsetAccess.notFound.md |
software | healthy | website/errors/offsetAccess.notFound.md |
methodTag.internalInterface.md |
software | healthy | website/errors/methodTag.internalInterface.md |
use.nameInUse.md |
software | healthy | website/errors/use.nameInUse.md |
function.nameCase.md |
software | healthy | website/errors/function.nameCase.md |
requireExtends.nonObject.md |
software | healthy | website/errors/requireExtends.nonObject.md |
generics.internalClassDefault.md |
software | healthy | website/errors/generics.internalClassDefault.md |
varTag.deprecatedInterface.md |
software | healthy | website/errors/varTag.deprecatedInterface.md |
attribute.target.md |
software | healthy | website/errors/attribute.target.md |
cast.double.md |
software | healthy | website/errors/cast.double.md |
typeAlias.invalidType.md |
software | healthy | website/errors/typeAlias.invalidType.md |
unset.readOnlyPropertyByPhpDoc.md |
software | healthy | website/errors/unset.readOnlyPropertyByPhpDoc.md |
property.onlyWritten.md |
software | healthy | website/errors/property.onlyWritten.md |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
website |
software | healthy | website |
scripts |
software | healthy | website/scripts |
stubs |
software | healthy | website/scripts/stubs |
errors |
software | healthy | website/errors |
functional-tests |
software | healthy | website/functional-tests |
visual-tests |
software | healthy | website/visual-tests |
infra |
software | healthy | website/infra |
functions |
software | healthy | website/infra/functions |
test |
software | healthy | website/infra/test |
lib |
software | healthy | website/infra/lib |
src |
software | healthy | website/src |
blog |
software | healthy | website/src/blog |
js |
software | healthy | website/src/js |
phpantom |
software | healthy | website/src/js/phpantom |
editor |
software | healthy | website/src/js/editor |
user-guide |
software | healthy | website/src/user-guide |
developing-extensions |
software | healthy | website/src/developing-extensions |
writing-php-code |
software | healthy | website/src/writing-php-code |
_posts |
software | healthy | website/src/_posts |
_data |
software | healthy | website/src/_data |
playground-runner |
software | healthy | playground-runner |
playground-api |
software | healthy | playground-api |
identifier-extractor |
software | healthy | identifier-extractor |
src |
software | healthy | identifier-extractor/src |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
e2e |
software | healthy | e2e |
restricted-php-ini |
software | healthy | e2e/restricted-php-ini |
app |
software | healthy | e2e/restricted-php-ini/app |
phpstan-issue-4953 |
software | healthy | e2e/phpstan-issue-4953 |
src |
software | healthy | e2e/phpstan-issue-4953/src |
php-metrics |
software | healthy | e2e/php-metrics |
bug8054 |
software | healthy | e2e/bug8054 |
application |
software | healthy | e2e/bug8054/application |
fare.de |
software | healthy | e2e/bug8054/application/fare.de |
public |
software | healthy | e2e/bug8054/public |
fare.de |
software | healthy | e2e/bug8054/public/fare.de |
autoloader-require |
software | healthy | e2e/autoloader-require |
tests |
software | healthy | e2e/autoloader-require/tests |
src |
software | healthy | e2e/autoloader-require/src |
alias-event |
software | healthy | e2e/alias-event |
integration |
software | healthy | e2e/integration |
union-type |
software | healthy | e2e/union-type |
php8 |
software | healthy | e2e/php8 |
polyfills |
software | healthy | e2e/polyfills |
autoload-better-reflection |
software | healthy | e2e/autoload-better-reflection |
baseline |
software | healthy | e2e/baseline |
src |
software | healthy | e2e/baseline/src |
bug9714 |
software | healthy | e2e/bug9714 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
getBuildBrowser |
software | healthy | website/.eleventy.js:getBuildBrowser |
closeBuildBrowser |
software | healthy | website/.eleventy.js:closeBuildBrowser |
renderMermaid |
software | healthy | website/.eleventy.js:renderMermaid |
renderSocialImage |
software | healthy | website/.eleventy.js:renderSocialImage |
setCode |
software | healthy | website/functional-tests/autocomplete.spec.ts:setCode |
popup |
software | healthy | website/functional-tests/autocomplete.spec.ts:popup |
labels |
software | healthy | website/functional-tests/autocomplete.spec.ts:labels |
hello |
software | healthy | website/functional-tests/autocomplete.spec.ts:hello |
greet |
software | healthy | website/functional-tests/autocomplete.spec.ts:greet |
make |
software | healthy | website/functional-tests/autocomplete.spec.ts:make |
run |
software | healthy | website/functional-tests/autocomplete.spec.ts:run |
execute |
software | healthy | website/functional-tests/autocomplete.spec.ts:execute |
setDarkMode |
software | healthy | website/visual-tests/visual.spec.ts:setDarkMode |
waitForPageReady |
software | healthy | website/visual-tests/visual.spec.ts:waitForPageReady |
sees |
software | healthy | website/infra/functions/phpstan-org-edge.js:sees |
formatQuerystring |
software | healthy | website/infra/functions/phpstan-org-edge.js:formatQuerystri… |
handler |
software | healthy | website/infra/functions/phpstan-org-edge.js:handler |
makeEvent |
software | healthy | website/infra/test/phpstan-org-edge.test.ts:makeEvent |
synthesize |
software | healthy | website/infra/test/website-stack.test.ts:synthesize |
rewrites |
software | healthy | website/infra/lib/website-stack.ts:rewrites |
anyWindow |
software | healthy | website/src/js/IgnoreErrorsWidgetModel.ts:anyWindow |
findTypeById |
software | healthy | website/src/js/MerchSaleViewModel.ts:findTypeById |
anyWindow |
software | healthy | website/src/js/MerchSaleViewModel.ts:anyWindow |
parseClasses |
software | healthy | website/src/js/PlaygroundViewModel.ts:parseClasses |
anyWindow |
software | healthy | website/src/js/PlaygroundViewModel.ts:anyWindow |
PHPStan |
software | healthy | website/src/js/PlaygroundViewModel.ts:PHPStan |
getDuration |
software | healthy | website/src/js/PlaygroundViewModel.ts:getDuration |
startDay |
software | healthy | website/src/js/PlaygroundViewModel.ts:startDay |
explode |
software | healthy | website/src/js/PlaygroundViewModel.ts:explode |
array_pop |
software | healthy | website/src/js/PlaygroundViewModel.ts:array_pop |
initScrollSpy |
software | healthy | website/src/js/config-reference.ts:initScrollSpy |
setActive |
software | healthy | website/src/js/config-reference.ts:setActive |
slugify |
software | healthy | website/src/js/utils.ts:slugify |
resizeToFitContent |
software | healthy | website/src/js/user-guide.ts:resizeToFitContent |
query |
software | healthy | website/src/js/MainMenuViewModel.ts:query |
createPhpantomTransport |
software | healthy | website/src/js/phpantom/transport.ts:createPhpantomTransport |
ensureReady |
software | healthy | website/src/js/phpantom/worker.ts:ensureReady |
callHandle |
software | healthy | website/src/js/phpantom/worker.ts:callHandle |
loadStubs |
software | healthy | website/src/js/phpantom/worker.ts:loadStubs |
urlIdExtensions |
software | healthy | website/src/js/editor/urlId.ts:urlIdExtensions |
modHeld |
software | healthy | website/src/js/editor/goToDefinition.ts:modHeld |
toLspPosition |
software | healthy | website/src/js/editor/goToDefinition.ts:toLspPosition |
fromLspPosition |
software | healthy | website/src/js/editor/goToDefinition.ts:fromLspPosition |
resolveInFileDefinition |
software | healthy | website/src/js/editor/goToDefinition.ts:resolveInFileDefini… |
toLspPosition |
software | healthy | website/src/js/editor/occurrences.ts:toLspPosition |
fromLspPosition |
software | healthy | website/src/js/editor/occurrences.ts:fromLspPosition |
request |
software | healthy | website/src/js/editor/occurrences.ts:request |
isLocalSymbol |
software | healthy | website/src/js/editor/occurrences.ts:isLocalSymbol |
ranges |
software | healthy | website/src/js/editor/occurrences.ts:ranges |
rangeFor |
software | healthy | website/src/js/editor/occurrences.ts:rangeFor |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
extract |
cicd | healthy | .github/workflows/extract-identifiers.yml |
merge |
cicd | healthy | .github/workflows/extract-identifiers.yml |
check-phar-checksum |
cicd | healthy | .github/workflows/integration-tests.yml |
integration-tests |
cicd | healthy | .github/workflows/integration-tests.yml |
integration-run-phpstan |
cicd | healthy | .github/workflows/integration-tests.yml |
integration-update-baseline |
cicd | healthy | .github/workflows/integration-tests.yml |
pmmp-tests |
cicd | healthy | .github/workflows/integration-tests.yml |
upload-phar |
cicd | healthy | .github/workflows/other-tests-run.yml |
other-tests |
cicd | healthy | .github/workflows/other-tests-run.yml |
upload-phar |
cicd | healthy | .github/workflows/integration-tests-run.yml |
integration-tests |
cicd | healthy | .github/workflows/integration-tests-run.yml |
upload-phar |
cicd | healthy | .github/workflows/extension-tests-run.yml |
extension-tests |
cicd | healthy | .github/workflows/extension-tests-run.yml |
sponsors |
cicd | healthy | .github/workflows/sponsors.yml |
website-links |
cicd | healthy | .github/workflows/website-links.yml |
typos |
cicd | healthy | .github/workflows/spelling.yml |
actionlint |
cicd | healthy | .github/workflows/lint-workflows.yml |
octoscan |
cicd | healthy | .github/workflows/lint-workflows.yml |
poutine |
cicd | healthy | .github/workflows/lint-workflows.yml |
zizmor |
cicd | healthy | .github/workflows/lint-workflows.yml |
build-identifier-extractor |
cicd | healthy | .github/workflows/build-identifier-extractor.yml |
fix |
cicd | healthy | .github/workflows/claude-update-error-docs-identifiers-chan… |
tweet |
cicd | healthy | .github/workflows/release-tweet.yml |
lock |
cicd | healthy | .github/workflows/lock-closed-issues.yml |
docker |
cicd | healthy | .github/workflows/docker-nightly.yml |
typescript-check |
cicd | healthy | .github/workflows/website.yml |
build-wasm |
cicd | healthy | .github/workflows/website.yml |
build |
cicd | healthy | .github/workflows/website.yml |
visual-regression |
cicd | healthy | .github/workflows/website.yml |
functional-tests |
cicd | healthy | .github/workflows/website.yml |
deploy |
cicd | healthy | .github/workflows/website.yml |
sentry-release |
cicd | healthy | .github/workflows/website.yml |
save-context |
cicd | healthy | .github/workflows/claude-react-on-review.yml |
test-projects |
cicd | healthy | .github/workflows/test-projects.yml |
tests |
cicd | healthy | .github/workflows/tests.yml |
update-config |
cicd | healthy | .github/workflows/algolia-crawler-config.yml |
deploy |
cicd | healthy | .github/workflows/release.yml |
check-phar-checksum |
cicd | healthy | .github/workflows/other-tests.yml |
other-tests |
cicd | healthy | .github/workflows/other-tests.yml |
fix |
cicd | healthy | .github/workflows/claude-easy-fix-on-milestone.yml |
test |
cicd | healthy | .github/workflows/website-infra.yml |
deploy |
cicd | healthy | .github/workflows/website-infra.yml |
check-phar-checksum |
cicd | healthy | .github/workflows/extension-tests.yml |
tests-extensions |
cicd | healthy | .github/workflows/extension-tests.yml |
dispatch |
cicd | healthy | .github/workflows/claude-react-on-review-dispatch.yml |
toot |
cicd | healthy | .github/workflows/release-toot.yml |
deploy |
cicd | healthy | .github/workflows/update-playground-runner.yml |
docker |
cicd | healthy | .github/workflows/docker-stable.yml |
build |
cicd | healthy | .github/workflows/update-playground-api.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::extract-identifiers |
cicd | healthy | .github/workflows/extract-identifiers.yml |
gha::integration-tests |
cicd | healthy | .github/workflows/integration-tests.yml |
gha::other-tests-run |
cicd | healthy | .github/workflows/other-tests-run.yml |
gha::integration-tests-run |
cicd | healthy | .github/workflows/integration-tests-run.yml |
gha::extension-tests-run |
cicd | healthy | .github/workflows/extension-tests-run.yml |
gha::sponsors |
cicd | healthy | .github/workflows/sponsors.yml |
gha::website-links |
cicd | healthy | .github/workflows/website-links.yml |
gha::spelling |
cicd | healthy | .github/workflows/spelling.yml |
gha::lint-workflows |
cicd | healthy | .github/workflows/lint-workflows.yml |
gha::build-identifier-extractor |
cicd | healthy | .github/workflows/build-identifier-extractor.yml |
gha::claude-update-error-docs-identifiers-change |
cicd | healthy | .github/workflows/claude-update-error-docs-identifiers-chan… |
gha::release-tweet |
cicd | healthy | .github/workflows/release-tweet.yml |
gha::lock-closed-issues |
cicd | healthy | .github/workflows/lock-closed-issues.yml |
gha::docker-nightly |
cicd | healthy | .github/workflows/docker-nightly.yml |
gha::website |
cicd | healthy | .github/workflows/website.yml |
gha::claude-react-on-review |
cicd | healthy | .github/workflows/claude-react-on-review.yml |
gha::test-projects |
cicd | healthy | .github/workflows/test-projects.yml |
gha::tests |
cicd | healthy | .github/workflows/tests.yml |
gha::algolia-crawler-config |
cicd | healthy | .github/workflows/algolia-crawler-config.yml |
gha::release |
cicd | healthy | .github/workflows/release.yml |
gha::other-tests |
cicd | healthy | .github/workflows/other-tests.yml |
gha::claude-easy-fix-on-milestone |
cicd | healthy | .github/workflows/claude-easy-fix-on-milestone.yml |
gha::website-infra |
cicd | healthy | .github/workflows/website-infra.yml |
gha::extension-tests |
cicd | healthy | .github/workflows/extension-tests.yml |
gha::claude-react-on-review-dispatch |
cicd | healthy | .github/workflows/claude-react-on-review-dispatch.yml |
gha::release-toot |
cicd | healthy | .github/workflows/release-toot.yml |
gha::update-playground-runner |
cicd | healthy | .github/workflows/update-playground-runner.yml |
gha::docker-stable |
cicd | healthy | .github/workflows/docker-stable.yml |
gha::update-playground-api |
cicd | healthy | .github/workflows/update-playground-api.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
GPG_PHPSTANBOT_PRIVATE_KEY |
cicd | healthy | — |
PHPSTAN_BOT_TOKEN |
cicd | healthy | — |
SENTRY_AUTH_TOKEN |
cicd | healthy | — |
ALGOLIA_CRAWLER_CRAWLER_API_KEY |
cicd | healthy | — |
TWITTER_ACCESS_TOKEN |
cicd | healthy | — |
PLAYGROUND_RUNNER_AWS_SECRET_ACCESS_KEY |
cicd | healthy | — |
TWITTER_ACCESS_TOKEN_SECRET |
cicd | healthy | — |
PLAYGROUND_RUNNER_AWS_ACCESS_KEY_ID |
cicd | healthy | — |
SENTRY_ORG |
cicd | healthy | — |
ALGOLIA_CRAWLER_USER_ID |
cicd | healthy | — |
TWITTER_CONSUMER_API_KEY |
cicd | healthy | — |
SENTRY_PROJECT |
cicd | healthy | — |
SLACK_SPONSORS_WEBHOOK |
cicd | healthy | — |
SPONSORS_PAT |
cicd | healthy | — |
GITHUB_TOKEN |
cicd | healthy | — |
MASTODON_ACCESS_TOKEN |
cicd | healthy | — |
GPG_PHPSTANBOT_KEY_PASSPHRASE |
cicd | healthy | — |
REPO_ACCESS_TOKEN |
cicd | healthy | — |
ALGOLIA_CRAWLER_API_KEY |
cicd | healthy | — |
ALGOLIA_CRAWLER_ID |
cicd | healthy | — |
TWITTER_CONSUMER_API_SECRET |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
inside |
software | healthy | website/functional-tests/autocomplete.spec.ts:inside |
untouched |
software | healthy | website/functional-tests/autocomplete.spec.ts:untouched |
WebsiteStack |
software | healthy | website/infra/lib/website-stack.ts:WebsiteStack |
GithubOidcStack |
software | healthy | website/infra/lib/github-oidc-stack.ts:GithubOidcStack |
Pages |
software | healthy | website/src/pages.11ty.js:Pages |
TShirtCartItem |
software | healthy | website/src/js/TShirtCartItem.ts:TShirtCartItem |
IgnoreErrorsWidgetModel |
software | healthy | website/src/js/IgnoreErrorsWidgetModel.ts:IgnoreErrorsWidge… |
MerchSaleViewModel |
software | healthy | website/src/js/MerchSaleViewModel.ts:MerchSaleViewModel |
PlaygroundTabViewModel |
software | healthy | website/src/js/PlaygroundTabViewModel.ts:PlaygroundTabViewM… |
PlaygroundViewModel |
software | healthy | website/src/js/PlaygroundViewModel.ts:PlaygroundViewModel |
MainMenuViewModel |
software | healthy | website/src/js/MainMenuViewModel.ts:MainMenuViewModel |
ErrorIdentifierSearchViewModel |
software | healthy | website/src/js/ErrorIdentifierSearchViewModel.ts:ErrorIdent… |
members |
software | healthy | website/src/js/editor/occurrences.ts:members |
| Label | Layer | Status | Path |
|---|---|---|---|
/ |
frontend | healthy | website/visual-tests/visual.spec.ts |
/try |
frontend | healthy | website/visual-tests/visual.spec.ts |
/blog |
frontend | healthy | website/visual-tests/visual.spec.ts |
/documentation |
frontend | healthy | website/visual-tests/visual.spec.ts |
/user-guide/getting-started |
frontend | healthy | website/visual-tests/visual.spec.ts |
/sponsor |
frontend | healthy | website/visual-tests/visual.spec.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
mysql |
data | healthy | .github/workflows/integration-tests.yml |
sqlite |
data | healthy | .github/workflows/integration-tests.yml |
mongodb |
data | healthy | .github/workflows/other-tests.yml |
redis |
data | healthy | e2e/symfony-event/config/packages/cache.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.0 |
network | healthy | e2e/symfony-event/.env |
10.0.0.0 |
network | healthy | e2e/symfony-event/.env |
172.16.0.0 |
network | healthy | e2e/symfony-event/.env |
192.168.0.0 |
network | healthy | e2e/symfony-event/.env |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::website/infra/test/website-stack.test.ts |
security | healthy | website/infra/test/website-stack.test.ts |
auth::website/infra/lib/github-oidc-stack.ts |
security | healthy | website/infra/lib/github-oidc-stack.ts |
auth::e2e/undiscoverable-symbols-1/composer.json |
security | healthy | e2e/undiscoverable-symbols-1/composer.json |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | website/infra/package.json |
vps::ec2 |
hardware | healthy | website/infra/cdk.json |
| Label | Layer | Status | Path |
|---|---|---|---|
.env in repo |
security | healthy | e2e/symfony-event/.env |
generic_api_key::website/src/js/MainMenuViewModel.ts |
security | healthy | website/src/js/MainMenuViewModel.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-bvo9p4ya |
software | healthy | /tmp/repobility-clone-bvo9p4ya |
| Label | Layer | Status | Path |
|---|---|---|---|
port:3306 |
network | healthy | .github/workflows/integration-tests.yml |
This page is publicly accessible at:
https://repobility.com/scan/924284a5-1e6c-401f-9514-6eb4afdc4125/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/924284a5-1e6c-401f-9514-6eb4afdc4125/
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.