https://github.com/socraticstatic/PenAndPaperThree
· scanned 2026-06-16 00:17 UTC (2 months, 2 weeks ago)
66 raw signals (0 security + 66 graph)
Last scanned 2 months, 2 weeks ago · v1 · 64 actionable findings from 1 signal source. 2 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 466 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 |
|---|---|---|---|
base |
software | healthy | canonical.js:base |
path |
software | healthy | canonical.js:path |
that |
software | healthy | search.js:that |
i18nReadyPromise |
software | healthy | search.js:i18nReadyPromise |
tt |
software | healthy | search.js:tt |
idbOpen |
software | healthy | search.js:idbOpen |
idbGet |
software | healthy | search.js:idbGet |
idbSet |
software | healthy | search.js:idbSet |
normalizeUrl |
software | healthy | search.js:normalizeUrl |
normalizeVisual |
software | healthy | search.js:normalizeVisual |
loadCatalog |
software | healthy | search.js:loadCatalog |
rows |
software | healthy | search.js:rows |
getCatalog |
software | healthy | search.js:getCatalog |
eyebrowText |
software | healthy | search.js:eyebrowText |
updateCatalogCountUI |
software | healthy | search.js:updateCatalogCountUI |
typeLabel |
software | healthy | search.js:typeLabel |
ensureDom |
software | healthy | search.js:ensureDom |
penGlyph |
software | healthy | search.js:penGlyph |
inkGlyph |
software | healthy | search.js:inkGlyph |
pairingGlyph |
software | healthy | search.js:pairingGlyph |
glyphHtml |
software | healthy | search.js:glyphHtml |
highlight |
software | healthy | search.js:highlight |
escapeHtml |
software | healthy | search.js:escapeHtml |
score |
software | healthy | search.js:score |
render |
software | healthy | search.js:render |
renderEmpty |
software | healthy | search.js:renderEmpty |
paintSelection |
software | healthy | search.js:paintSelection |
onKey |
software | healthy | search.js:onKey |
navigateTo |
software | healthy | search.js:navigateTo |
open |
software | healthy | search.js:open |
close |
software | healthy | search.js:close |
toggle |
software | healthy | search.js:toggle |
readRecent |
software | healthy | search.js:readRecent |
recordVisit |
software | healthy | search.js:recordVisit |
cmdK |
software | healthy | search.js:cmdK |
load |
software | healthy | image-slot.js:load |
save |
software | healthy | image-slot.js:save |
clampS |
software | healthy | image-slot.js:clampS |
getSlot |
software | healthy | image-slot.js:getSlot |
setSlot |
software | healthy | image-slot.js:setSlot |
toDataUrl |
software | healthy | image-slot.js:toDataUrl |
cx0 |
software | healthy | image-slot.js:cx0 |
cy0 |
software | healthy | image-slot.js:cy0 |
proj |
software | healthy | image-slot.js:proj |
up |
software | healthy | image-slot.js:up |
cx |
software | healthy | image-slot.js:cx |
cy |
software | healthy | image-slot.js:cy |
w |
software | healthy | image-slot.js:w |
h |
software | healthy | image-slot.js:h |
l |
software | healthy | image-slot.js:l |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
compare.html |
software | healthy | compare.html |
paper.html |
software | healthy | paper.html |
styles.css |
software | healthy | styles.css |
supabase.js |
software | healthy | supabase.js |
vercel.json |
software | healthy | vercel.json |
pen.html |
software | healthy | pen.html |
paper-catalog.html |
software | healthy | paper-catalog.html |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
canonical.js |
software | healthy | canonical.js |
search.js |
software | healthy | search.js |
image-slot.js |
software | healthy | image-slot.js |
index.html |
software | healthy | index.html |
collection.html |
software | healthy | collection.html |
footer.js |
software | healthy | footer.js |
config.js |
software | healthy | config.js |
pairing.html |
software | healthy | pairing.html |
ASSESSMENT.md |
software | healthy | ASSESSMENT.md |
i18n.js |
software | healthy | i18n.js |
the-humble-pen.html |
software | healthy | the-humble-pen.html |
papers.html |
software | healthy | papers.html |
tomoe-river.html |
software | healthy | tomoe-river.html |
ink-detail.html |
software | healthy | ink-detail.html |
catalogue.html |
software | healthy | catalogue.html |
ink.html |
software | healthy | ink.html |
DEPLOY.md |
software | healthy | DEPLOY.md |
ADVERSARIAL.md |
software | healthy | ADVERSARIAL.md |
about.html |
software | healthy | about.html |
pairings.html |
software | healthy | pairings.html |
pens.html |
software | healthy | pens.html |
favorites.js |
software | healthy | favorites.js |
USE_CASES.md |
software | healthy | USE_CASES.md |
pen-catalog.html |
software | healthy | pen-catalog.html |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
picker.html |
software | healthy | picker.html |
tray.js |
software | healthy | tray.js |
playwright.config.ts |
software | healthy | tests/playwright.config.ts |
ux-improvements.spec.ts |
software | healthy | tests/ux-improvements.spec.ts |
i18n.spec.ts |
software | healthy | tests/i18n.spec.ts |
_crawl_site.js |
software | healthy | tests/_crawl_site.js |
README.md |
software | healthy | tests/README.md |
refinement.spec.ts |
software | healthy | tests/refinement.spec.ts |
seed.ts |
software | healthy | tests/seed.ts |
package.json |
software | healthy | tests/package.json |
ux-polish.spec.ts |
software | healthy | tests/ux-polish.spec.ts |
ui-actions.spec.ts |
software | healthy | tests/ui-actions.spec.ts |
package-lock.json |
software | healthy | tests/package-lock.json |
beginner.spec.ts |
software | healthy | tests/beginner.spec.ts |
detail-pages.spec.ts |
software | healthy | tests/detail-pages.spec.ts |
power-user.spec.ts |
software | healthy | tests/power-user.spec.ts |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
generate_image_fix_migration.py |
data | healthy | scripts/generate_image_fix_migration.py |
20260611233000_japanese_editorial.sql |
data | healthy | supabase/migrations/20260611233000_japanese_editorial.sql |
20260613160000_normalized_find_pairings.sql |
data | healthy | supabase/migrations/20260613160000_normalized_find_pairings… |
20260519183942_init_rpc.sql |
data | healthy | supabase/migrations/20260519183942_init_rpc.sql |
20260527212128_seed_wave_2_five_specimens.sql |
data | healthy | supabase/migrations/20260527212128_seed_wave_2_five_specime… |
20260613173000_find_specimens_dedupe_reserve.sql |
data | healthy | supabase/migrations/20260613173000_find_specimens_dedupe_re… |
20260604000000_site_config.sql |
data | healthy | supabase/migrations/20260604000000_site_config.sql |
20260601143100_affinity_scores_trigger.sql |
data | healthy | supabase/migrations/20260601143100_affinity_scores_trigger.… |
20260519191021_add_pairings_ink_fk.sql |
data | healthy | supabase/migrations/20260519191021_add_pairings_ink_fk.sql |
20260613093000_aurora88_catalog_image.sql |
data | healthy | supabase/migrations/20260613093000_aurora88_catalog_image.s… |
20260521200001_restore_storage_editor_only_seed_batch.sql |
data | healthy | supabase/migrations/20260521200001_restore_storage_editor_o… |
20260611170000_search_catalogue_and_archive_counts.sql |
data | healthy | supabase/migrations/20260611170000_search_catalogue_and_arc… |
20260611150001_paper_data_research_pass.sql |
data | healthy | supabase/migrations/20260611150001_paper_data_research_pass… |
20260612130000_micahs_favorites.sql |
data | healthy | supabase/migrations/20260612130000_micahs_favorites.sql |
20260519210942_expert_pairing_facets.sql |
data | healthy | supabase/migrations/20260519210942_expert_pairing_facets.sql |
20260519133514_init_rls.sql |
data | healthy | supabase/migrations/20260519133514_init_rls.sql |
20260521200002_clear_paper_photos_hero.sql |
data | healthy | supabase/migrations/20260521200002_clear_paper_photos_hero.… |
20260611190001_refresh_catalog_pen_groups.sql |
data | healthy | supabase/migrations/20260611190001_refresh_catalog_pen_grou… |
20260520190001_restore_storage_editor_only.sql |
data | healthy | supabase/migrations/20260520190001_restore_storage_editor_o… |
20260604000001_refined_find_pairings.sql |
data | healthy | supabase/migrations/20260604000001_refined_find_pairings.sql |
20260611200000_hand_link_catalog.sql |
data | healthy | supabase/migrations/20260611200000_hand_link_catalog.sql |
20260520103358_fix_pen_facets_length_numeric.sql |
data | healthy | supabase/migrations/20260520103358_fix_pen_facets_length_nu… |
20260601131931_fix_catalog_pen_images.sql |
data | healthy | supabase/migrations/20260601131931_fix_catalog_pen_images.s… |
20260613170000_find_specimens.sql |
data | healthy | supabase/migrations/20260613170000_find_specimens.sql |
20260527220349_seed_wave_2_backfill_heritage_service_affini… |
data | healthy | supabase/migrations/20260527220349_seed_wave_2_backfill_her… |
20260521120000_pairing_facets_null_safe.sql |
data | healthy | supabase/migrations/20260521120000_pairing_facets_null_safe… |
20260522000000_wave1_drafts_reasons_measurements.sql |
data | healthy | supabase/migrations/20260522000000_wave1_drafts_reasons_mea… |
20260611150000_pairings_draft_by_default.sql |
data | healthy | supabase/migrations/20260611150000_pairings_draft_by_defaul… |
20260601143200_pairing_facets_draft_guard.sql |
data | healthy | supabase/migrations/20260601143200_pairing_facets_draft_gua… |
20260611120000_pairings_published_rls_and_scoring_check.sql |
data | healthy | supabase/migrations/20260611120000_pairings_published_rls_a… |
20260520190000_temp_storage_anon_seed.sql |
data | healthy | supabase/migrations/20260520190000_temp_storage_anon_seed.s… |
20260521200000_temp_storage_anon_seed_batch.sql |
data | healthy | supabase/migrations/20260521200000_temp_storage_anon_seed_b… |
20260521063000_temp_storage_anon_seed_3.sql |
data | healthy | supabase/migrations/20260521063000_temp_storage_anon_seed_3… |
20260520003821_pairing_engine.sql |
data | healthy | supabase/migrations/20260520003821_pairing_engine.sql |
20260611120001_compute_pairing_v3_dry_time.sql |
data | healthy | supabase/migrations/20260611120001_compute_pairing_v3_dry_t… |
20260611220000_editorial_qa_pass.sql |
data | healthy | supabase/migrations/20260611220000_editorial_qa_pass.sql |
20260522010000_temp_storage_anon_sailor_fix.sql |
data | healthy | supabase/migrations/20260522010000_temp_storage_anon_sailor… |
20260520012512_pairing_engine_tune_v2.sql |
data | healthy | supabase/migrations/20260520012512_pairing_engine_tune_v2.s… |
20260519122326_init_schema.sql |
data | healthy | supabase/migrations/20260519122326_init_schema.sql |
20260611230000_retire_engine_draft_stubs.sql |
data | healthy | supabase/migrations/20260611230000_retire_engine_draft_stub… |
20260519125455_fix_length_index_numeric.sql |
data | healthy | supabase/migrations/20260519125455_fix_length_index_numeric… |
20260611210000_editorial_pass_25_pairings.sql |
data | healthy | supabase/migrations/20260611210000_editorial_pass_25_pairin… |
20260613174000_drop_find_specimens_v1.sql |
data | healthy | supabase/migrations/20260613174000_drop_find_specimens_v1.s… |
20260521120001_apply_engine_across_catalog.sql |
data | healthy | supabase/migrations/20260521120001_apply_engine_across_cata… |
20260520180000_editor_whitelist_and_trigger.sql |
data | healthy | supabase/migrations/20260520180000_editor_whitelist_and_tri… |
20260521055900_temp_storage_anon_seed_2.sql |
data | healthy | supabase/migrations/20260521055900_temp_storage_anon_seed_2… |
20260521063001_restore_storage_editor_only_3.sql |
data | healthy | supabase/migrations/20260521063001_restore_storage_editor_o… |
20260522010001_restore_storage_editor_only_sailor_fix.sql |
data | healthy | supabase/migrations/20260522010001_restore_storage_editor_o… |
20260611200001_mnemosyne_sizing_consistency.sql |
data | healthy | supabase/migrations/20260611200001_mnemosyne_sizing_consist… |
20260612003000_visual_consistency.sql |
data | healthy | supabase/migrations/20260612003000_visual_consistency.sql |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
scripts |
software | healthy | tests/scripts |
api |
software | healthy | api |
docs |
software | healthy | docs |
superpowers |
software | healthy | docs/superpowers |
plans |
software | healthy | docs/superpowers/plans |
scripts |
software | healthy | scripts |
locales |
software | healthy | locales |
admin |
software | healthy | admin |
.claude |
software | healthy | .claude |
phases |
software | healthy | phases |
features |
software | healthy | phases/features |
supabase |
software | healthy | supabase |
migrations |
software | healthy | supabase/migrations |
| Label | Layer | Status | Path |
|---|---|---|---|
ImageSlot |
software | healthy | image-slot.js:ImageSlot |
carries |
software | healthy | tray.js:carries |
is |
software | healthy | tests/refinement.spec.ts:is |
after |
software | healthy | tests/ux-polish.spec.ts:after |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | tests/README.md |
124.0.0.0 |
network | healthy | scripts/fix_catalog_pen_images.py |
131.0.0.0 |
network | healthy | scripts/check_pen_images.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-u12jmlws |
software | healthy | /tmp/repobility-clone-u12jmlws |
| Label | Layer | Status | Path |
|---|---|---|---|
postgres |
data | healthy | CLAUDE.md |
| Label | Layer | Status | Path |
|---|---|---|---|
public |
data | healthy | phases/_schema.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
generic_api_key::tests/scripts/knockout-and-upload.mjs |
security | healthy | tests/scripts/knockout-and-upload.mjs |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::scripts/curate_top.py |
security | healthy | scripts/curate_top.py |
This page is publicly accessible at:
https://repobility.com/scan/8804a4fa-cc9f-46da-af8a-abe89d7ea5c2/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/8804a4fa-cc9f-46da-af8a-abe89d7ea5c2/
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.