https://github.com/vyper-japan/mailhub
· scanned 2026-06-16 00:53 UTC (2 months, 1 week ago)
58 raw signals (0 security + 58 graph)
Last scanned 2 months, 1 week ago · v1 · 56 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 1117 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 |
|---|---|---|---|
defaultPlaywrightOutputDir |
software | healthy | playwright.config.ts:defaultPlaywrightOutputDir |
search_message_ids |
software | healthy | scripts/label_invoices.py:61 |
get_message_metadata |
software | healthy | scripts/label_invoices.py:94 |
batch_modify_add |
software | healthy | scripts/label_invoices.py:130 |
main |
software | healthy | scripts/label_invoices.py:161 |
check |
software | healthy | scripts/security-scan.mjs:check |
scanClientFiles |
software | healthy | scripts/security-scan.mjs:scanClientFiles |
walkDir |
software | healthy | scripts/security-scan.mjs:walkDir |
scanDangerousHTML |
software | healthy | scripts/security-scan.mjs:scanDangerousHTML |
scanTokenLogging |
software | healthy | scripts/security-scan.mjs:scanTokenLogging |
check |
software | healthy | scripts/smoke.mjs:check |
extractInquiryNumber |
software | healthy | scripts/smoke.mjs:extractInquiryNumber |
routeReply |
software | healthy | scripts/smoke.mjs:routeReply |
get_all_message_ids |
software | healthy | scripts/fix_amazon_labels.py:54 |
get_message_metadata |
software | healthy | scripts/fix_amazon_labels.py:71 |
batch_modify |
software | healthy | scripts/fix_amazon_labels.py:102 |
fix_rule1_ads_to_payment |
software | healthy | scripts/fix_amazon_labels.py:130 |
fix_rule2_sc_sort |
software | healthy | scripts/fix_amazon_labels.py:158 |
fix_rule3_fba_sort |
software | healthy | scripts/fix_amazon_labels.py:214 |
main |
software | healthy | scripts/fix_amazon_labels.py:279 |
usage |
software | healthy | scripts/scan-ops-artifacts.mjs:usage |
normalizeTarget |
software | healthy | scripts/scan-ops-artifacts.mjs:normalizeTarget |
isSecretRefOnly |
software | healthy | scripts/scan-ops-artifacts.mjs:isSecretRefOnly |
isKeyNameOnly |
software | healthy | scripts/scan-ops-artifacts.mjs:isKeyNameOnly |
shouldScanFile |
software | healthy | scripts/scan-ops-artifacts.mjs:shouldScanFile |
collectFiles |
software | healthy | scripts/scan-ops-artifacts.mjs:collectFiles |
walk |
software | healthy | scripts/scan-ops-artifacts.mjs:walk |
maskSecretLine |
software | healthy | scripts/scan-ops-artifacts.mjs:maskSecretLine |
scanContent |
software | healthy | scripts/scan-ops-artifacts.mjs:scanContent |
scanFiles |
software | healthy | scripts/scan-ops-artifacts.mjs:scanFiles |
printPass |
software | healthy | scripts/scan-ops-artifacts.mjs:printPass |
printMissing |
software | healthy | scripts/scan-ops-artifacts.mjs:printMissing |
printFindings |
software | healthy | scripts/scan-ops-artifacts.mjs:printFindings |
scanOpsArtifactTargets |
software | healthy | scripts/scan-ops-artifacts.mjs:scanOpsArtifactTargets |
hasSecretValue |
software | healthy | scripts/scan-ops-artifacts.mjs:hasSecretValue |
main |
software | healthy | scripts/scan-ops-artifacts.mjs:main |
stripQuotes |
software | healthy | scripts/get-refresh-token.mjs:stripQuotes |
loadEnvLocalIfNeeded |
software | healthy | scripts/get-refresh-token.mjs:loadEnvLocalIfNeeded |
scopes |
software | healthy | scripts/get-refresh-token.mjs:scopes |
search_all_message_ids |
software | healthy | scripts/fix_fba_non_amazon.py:51 |
batch_modify |
software | healthy | scripts/fix_fba_non_amazon.py:80 |
fix_rule1_shippinno |
software | healthy | scripts/fix_fba_non_amazon.py:108 |
fix_rule2_miraku |
software | healthy | scripts/fix_fba_non_amazon.py:127 |
fix_rule3_insatsu |
software | healthy | scripts/fix_fba_non_amazon.py:146 |
main |
software | healthy | scripts/fix_fba_non_amazon.py:165 |
get_all_message_ids |
software | healthy | scripts/create_cancel_label.py:48 |
search_message_ids |
software | healthy | scripts/create_cancel_label.py:66 |
batch_modify |
software | healthy | scripts/create_cancel_label.py:84 |
step1_create_label |
software | healthy | scripts/create_cancel_label.py:112 |
step2_migrate_from_old_label |
software | healthy | scripts/create_cancel_label.py:128 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
_HANDOVER_GUIDE.md |
software | healthy | _HANDOVER_GUIDE.md |
auth.ts |
software | healthy | auth.ts |
email-projects-status.md |
software | healthy | email-projects-status.md |
playwright.config.ts |
software | healthy | playwright.config.ts |
MAIL_MIGRATION_STATUS.md |
software | healthy | MAIL_MIGRATION_STATUS.md |
PILOT_REPORT.md |
software | healthy | PILOT_REPORT.md |
_PROJECT_CHAT_LOG.md |
software | healthy | _PROJECT_CHAT_LOG.md |
_START_HERE.md |
software | healthy | _START_HERE.md |
postcss.config.mjs |
software | healthy | postcss.config.mjs |
README.md |
software | healthy | README.md |
tailwind.config.ts |
software | healthy | tailwind.config.ts |
OPS_RUNBOOK.md |
software | healthy | OPS_RUNBOOK.md |
CODE_HEALTH_REPORT.md |
software | healthy | CODE_HEALTH_REPORT.md |
package.json |
software | healthy | package.json |
LABELING_CODE_REVIEW.md |
software | healthy | LABELING_CODE_REVIEW.md |
QA_REPORT.md |
software | healthy | QA_REPORT.md |
next-env.d.ts |
software | healthy | next-env.d.ts |
package-lock.json |
software | healthy | package-lock.json |
.env.example |
software | healthy | .env.example |
.eslintrc.json |
software | healthy | .eslintrc.json |
tsconfig.json |
software | healthy | tsconfig.json |
IMPROVEMENT_PLAN.md |
software | healthy | IMPROVEMENT_PLAN.md |
vitest.config.ts |
software | healthy | vitest.config.ts |
vitest.setup.ts |
software | healthy | vitest.setup.ts |
messages.json |
software | healthy | fixtures/messages.json |
msg-003.json |
software | healthy | fixtures/details/msg-003.json |
msg-002.json |
software | healthy | fixtures/details/msg-002.json |
msg-031.json |
software | healthy | fixtures/details/msg-031.json |
msg-021.json |
software | healthy | fixtures/details/msg-021.json |
msg-102.json |
software | healthy | fixtures/details/msg-102.json |
msg-001.json |
software | healthy | fixtures/details/msg-001.json |
msg-101.json |
software | healthy | fixtures/details/msg-101.json |
STEP31_OPS_CHECKLIST.md |
software | healthy | docs/pilot/STEP31_OPS_CHECKLIST.md |
NAMING.md |
software | healthy | docs/pilot/NAMING.md |
STAGING_WRITE_QA_CHECKLIST.md |
software | healthy | docs/pilot/STAGING_WRITE_QA_CHECKLIST.md |
PROD_WRITE_QA_CHECKLIST.md |
software | healthy | docs/pilot/PROD_WRITE_QA_CHECKLIST.md |
STAGING_QA_CHECKLIST.md |
software | healthy | docs/pilot/STAGING_QA_CHECKLIST.md |
label_invoices.py |
software | healthy | scripts/label_invoices.py |
security-scan.mjs |
software | healthy | scripts/security-scan.mjs |
smoke.mjs |
software | healthy | scripts/smoke.mjs |
fix_amazon_labels.py |
software | healthy | scripts/fix_amazon_labels.py |
scan-ops-artifacts.mjs |
software | healthy | scripts/scan-ops-artifacts.mjs |
get-refresh-token.mjs |
software | healthy | scripts/get-refresh-token.mjs |
fix_fba_non_amazon.py |
software | healthy | scripts/fix_fba_non_amazon.py |
create_cancel_label.py |
software | healthy | scripts/create_cancel_label.py |
e2e-preclean.mjs |
software | healthy | scripts/e2e-preclean.mjs |
fix_label_misclassification.py |
software | healthy | scripts/fix_label_misclassification.py |
MX_CUTOVER_RUNBOOK.md |
software | healthy | mx-cutover/MX_CUTOVER_RUNBOOK.md |
globals.css |
software | healthy | app/globals.css |
page.tsx |
software | healthy | app/page.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
fixtures |
software | healthy | fixtures |
details |
software | healthy | fixtures/details |
docs |
software | healthy | docs |
pilot |
software | healthy | docs/pilot |
scripts |
software | healthy | scripts |
mx-cutover |
software | healthy | mx-cutover |
app |
software | healthy | app |
settings |
software | healthy | app/settings |
labels |
software | healthy | app/settings/labels |
auth |
software | healthy | app/auth |
signin |
software | healthy | app/auth/signin |
error |
software | healthy | app/auth/error |
api |
software | healthy | app/api |
auth |
software | healthy | app/api/auth |
[...nextauth] |
software | healthy | app/api/auth/[...nextauth] |
health |
software | healthy | app/api/health |
version |
software | healthy | app/api/version |
mailhub |
software | healthy | app/api/mailhub |
detail |
software | healthy | app/api/mailhub/detail |
thread |
software | healthy | app/api/mailhub/thread |
assignee-rules |
software | healthy | app/api/mailhub/assignee-rules |
[id] |
software | healthy | app/api/mailhub/assignee-rules/[id] |
apply |
software | healthy | app/api/mailhub/assignee-rules/apply |
rakuten |
software | healthy | app/api/mailhub/rakuten |
reply |
software | healthy | app/api/mailhub/rakuten/reply |
archive |
software | healthy | app/api/mailhub/archive |
config |
software | healthy | app/api/mailhub/config |
health |
software | healthy | app/api/mailhub/config/health |
import |
software | healthy | app/api/mailhub/config/import |
export |
software | healthy | app/api/mailhub/config/export |
ops |
software | healthy | app/api/mailhub/ops |
summary |
software | healthy | app/api/mailhub/ops/summary |
rules |
software | healthy | app/api/mailhub/rules |
explain |
software | healthy | app/api/mailhub/rules/explain |
suggestions |
software | healthy | app/api/mailhub/rules/suggestions |
preview |
software | healthy | app/api/mailhub/rules/suggestions/preview |
inspect |
software | healthy | app/api/mailhub/rules/inspect |
[id] |
software | healthy | app/api/mailhub/rules/[id] |
run-all |
software | healthy | app/api/mailhub/rules/run-all |
apply |
software | healthy | app/api/mailhub/rules/apply |
stats |
software | healthy | app/api/mailhub/rules/stats |
activity |
software | healthy | app/api/mailhub/activity |
export |
software | healthy | app/api/mailhub/activity/export |
test |
software | healthy | app/api/mailhub/test |
reset |
software | healthy | app/api/mailhub/test/reset |
sent |
software | healthy | app/api/mailhub/test/sent |
assign |
software | healthy | app/api/mailhub/assign |
list |
software | healthy | app/api/mailhub/list |
send |
software | healthy | app/api/mailhub/send |
snooze |
software | healthy | app/api/mailhub/snooze |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
Store |
software | healthy | app/api/mailhub/meta/route.ts:Store |
Store |
software | healthy | lib/viewsStore.ts:Store |
Store |
software | healthy | lib/replyTemplatesStore.ts:Store |
Store |
software | healthy | lib/rosterStore.ts:Store |
MemoryStore |
software | healthy | lib/activityStore.ts:MemoryStore |
FileStore |
software | healthy | lib/activityStore.ts:FileStore |
SheetsStore |
software | healthy | lib/activityStore.ts:SheetsStore |
Store |
software | healthy | lib/teamStore.ts:Store |
Store |
software | healthy | lib/labelRegistryStore.ts:Store |
SlackProvider |
software | healthy | lib/alerts.ts:SlackProvider |
LogProvider |
software | healthy | lib/alerts.ts:LogProvider |
NoneProvider |
software | healthy | lib/alerts.ts:NoneProvider |
MemoryConfigStore |
software | healthy | lib/configStore.ts:MemoryConfigStore |
FileConfigStore |
software | healthy | lib/configStore.ts:FileConfigStore |
SheetsConfigStore |
software | healthy | lib/configStore.ts:SheetsConfigStore |
Store |
software | healthy | lib/assigneeRulesStore.ts:Store |
Store |
software | healthy | lib/savedSearchesStore.ts:Store |
Store |
software | healthy | lib/labelRulesStore.ts:Store |
Store |
software | healthy | lib/messageNotesStore.ts:Store |
Store |
software | healthy | lib/assigneeRegistryStore.ts:Store |
JWT |
software | healthy | lib/__tests__/assigneeRegistryStore.test.ts:JWT |
JWT |
software | healthy | lib/__tests__/configStore.test.ts:JWT |
OAuth2 |
software | healthy | lib/__tests__/mailhub-send-as.test.ts:OAuth2 |
OAuth2 |
software | healthy | lib/__tests__/gmail-send-reply.test.ts:OAuth2 |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::lib/configStore.ts |
security | healthy | lib/configStore.ts |
auth::package.json |
security | healthy | package.json |
auth::lib/__tests__/configStore.test.ts |
security | healthy | lib/__tests__/configStore.test.ts |
auth::lib/activityStore.ts |
security | healthy | lib/activityStore.ts |
auth::README.md |
security | healthy | README.md |
auth::scripts/get-refresh-token.mjs |
security | healthy | scripts/get-refresh-token.mjs |
auth::auth.ts |
security | healthy | auth.ts |
auth::lib/__tests__/ops-artifact-secret-scan.test.ts |
security | healthy | lib/__tests__/ops-artifact-secret-scan.test.ts |
auth::lib/__tests__/assigneeRegistryStore.test.ts |
security | healthy | lib/__tests__/assigneeRegistryStore.test.ts |
auth::.env.example |
security | healthy | .env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
port:3001 |
network | healthy | scripts/e2e-preclean.mjs |
port:03 |
network | healthy | .github/workflows/mailhub-config-export.yml |
port:15 |
network | healthy | .github/workflows/mailhub-config-export.yml |
port:18 |
network | healthy | .github/workflows/mailhub-config-export.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
MAILHUB_CONFIG_EXPORT_SECRET |
cicd | healthy | — |
MAILHUB_STAGING_URL |
cicd | healthy | — |
MAILHUB_PROD_URL |
cicd | healthy | — |
MAILHUB_ALERTS_SECRET |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
RootLayout |
frontend | healthy | app/layout.tsx |
SignInPage |
frontend | healthy | app/auth/signin/page.tsx |
InboxShell |
frontend | healthy | app/inbox/InboxShell.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::qa-strict |
cicd | healthy | .github/workflows/qa-strict.yml |
gha::mailhub-config-export |
cicd | healthy | .github/workflows/mailhub-config-export.yml |
gha::mailhub-alerts |
cicd | healthy | .github/workflows/mailhub-alerts.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
qa |
cicd | healthy | .github/workflows/qa-strict.yml |
backup |
cicd | healthy | .github/workflows/mailhub-config-export.yml |
run-alerts |
cicd | healthy | .github/workflows/mailhub-alerts.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::gcp |
hardware | healthy | package-lock.json |
vps::aws |
hardware | healthy | fixtures/messages.json |
| Label | Layer | Status | Path |
|---|---|---|---|
private_key::lib/__tests__/activityStore.test.ts |
security | healthy | lib/__tests__/activityStore.test.ts |
private_key::lib/__tests__/activityStore.test.ts |
security | healthy | lib/__tests__/activityStore.test.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-jjxc50b0 |
software | healthy | /tmp/repobility-clone-jjxc50b0 |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | scripts/get-refresh-token.mjs |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | fixtures/messages.json |
This page is publicly accessible at:
https://repobility.com/scan/28252fcf-3f38-4784-8cc4-182fbb4d96ab/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/28252fcf-3f38-4784-8cc4-182fbb4d96ab/
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.