https://github.com/srik-does/billology
· scanned 2026-06-16 00:20 UTC (2 months, 2 weeks ago)
55 raw signals (0 security + 55 graph)
Last scanned 2 months, 2 weeks ago · v1 · 47 actionable findings from 1 signal source. 8 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 684 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 |
|---|---|---|---|
SplashOverlay |
software | healthy | mobile/App.tsx:SplashOverlay |
ThemedApp |
software | healthy | mobile/App.tsx:ThemedApp |
App |
software | healthy | mobile/App.tsx:App |
setState |
software | healthy | mobile/src/auth.ts:setState |
useAuth |
software | healthy | mobile/src/auth.ts:useAuth |
getValidAccessToken |
software | healthy | mobile/src/auth.ts:getValidAccessToken |
getUserEmail |
software | healthy | mobile/src/auth.ts:getUserEmail |
tokensFromUrl |
software | healthy | mobile/src/auth.ts:tokensFromUrl |
signInWithGoogle |
software | healthy | mobile/src/auth.ts:signInWithGoogle |
signOut |
software | healthy | mobile/src/auth.ts:signOut |
useTheme |
software | healthy | mobile/src/theme.ts:useTheme |
shadowFor |
software | healthy | mobile/src/theme.ts:shadowFor |
getSettings |
software | healthy | mobile/src/store.ts:getSettings |
updateSettings |
software | healthy | mobile/src/store.ts:updateSettings |
useSettings |
software | healthy | mobile/src/store.ts:useSettings |
markBillSaved |
software | healthy | mobile/src/store.ts:markBillSaved |
useBillSavedCounter |
software | healthy | mobile/src/store.ts:useBillSavedCounter |
settingsHeaders |
software | healthy | mobile/src/store.ts:settingsHeaders |
t |
software | healthy | mobile/src/i18n.ts:t |
useT |
software | healthy | mobile/src/i18n.ts:useT |
ThemeToggle |
software | healthy | mobile/src/navigation/index.tsx:ThemeToggle |
HomeTabs |
software | healthy | mobile/src/navigation/index.tsx:HomeTabs |
ReviewRoute |
software | healthy | mobile/src/navigation/index.tsx:ReviewRoute |
BillDetailRoute |
software | healthy | mobile/src/navigation/index.tsx:BillDetailRoute |
RootNavigator |
software | healthy | mobile/src/navigation/index.tsx:RootNavigator |
authedHeaders |
software | healthy | mobile/src/api/client.ts:authedHeaders |
sleep |
software | healthy | mobile/src/api/client.ts:sleep |
fetchResilient |
software | healthy | mobile/src/api/client.ts:fetchResilient |
handle |
software | healthy | mobile/src/api/client.ts:handle |
apiGet |
software | healthy | mobile/src/api/client.ts:apiGet |
apiPostJson |
software | healthy | mobile/src/api/client.ts:apiPostJson |
apiPostForm |
software | healthy | mobile/src/api/client.ts:apiPostForm |
apiDelete |
software | healthy | mobile/src/api/client.ts:apiDelete |
ReceiptArt |
software | healthy | mobile/src/screens/CaptureScreen.tsx:ReceiptArt |
CaptureScreen |
software | healthy | mobile/src/screens/CaptureScreen.tsx:CaptureScreen |
submit |
software | healthy | mobile/src/screens/CaptureScreen.tsx:submit |
submitText |
software | healthy | mobile/src/screens/CaptureScreen.tsx:submitText |
submitFiles |
software | healthy | mobile/src/screens/CaptureScreen.tsx:submitFiles |
pickFromGallery |
software | healthy | mobile/src/screens/CaptureScreen.tsx:pickFromGallery |
pickPdf |
software | healthy | mobile/src/screens/CaptureScreen.tsx:pickPdf |
openCamera |
software | healthy | mobile/src/screens/CaptureScreen.tsx:openCamera |
snap |
software | healthy | mobile/src/screens/CaptureScreen.tsx:snap |
useShots |
software | healthy | mobile/src/screens/CaptureScreen.tsx:useShots |
tileLabel |
software | healthy | mobile/src/screens/CaptureScreen.tsx:tileLabel |
HistoryScreen |
software | healthy | mobile/src/screens/HistoryScreen.tsx:HistoryScreen |
refresh |
software | healthy | mobile/src/screens/HistoryScreen.tsx:refresh |
openBill |
software | healthy | mobile/src/screens/HistoryScreen.tsx:openBill |
confirmDeleteOne |
software | healthy | mobile/src/screens/HistoryScreen.tsx:confirmDeleteOne |
confirmClearAll |
software | healthy | mobile/src/screens/HistoryScreen.tsx:confirmClearAll |
filtered |
software | healthy | mobile/src/screens/HistoryScreen.tsx:filtered |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
cliff.toml |
software | healthy | cliff.toml |
till-now.md |
software | healthy | till-now.md |
render.yaml |
software | healthy | render.yaml |
.pre-commit-config.yaml |
software | healthy | .pre-commit-config.yaml |
COMPLIANCE.md |
software | healthy | COMPLIANCE.md |
pyproject.toml |
software | healthy | pyproject.toml |
LICENSE |
software | healthy | LICENSE |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
SECURITY.md |
software | healthy | SECURITY.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
.gitlab-ci.yml |
software | healthy | .gitlab-ci.yml |
babel.config.js |
software | healthy | mobile/babel.config.js |
eas.json |
software | healthy | mobile/eas.json |
package.json |
software | healthy | mobile/package.json |
package-lock.json |
software | healthy | mobile/package-lock.json |
app.json |
software | healthy | mobile/app.json |
.env.example |
software | healthy | mobile/.env.example |
.eslintrc.json |
software | healthy | mobile/.eslintrc.json |
tsconfig.json |
software | healthy | mobile/tsconfig.json |
App.tsx |
software | healthy | mobile/App.tsx |
auth.ts |
software | healthy | mobile/src/auth.ts |
theme.ts |
software | healthy | mobile/src/theme.ts |
store.ts |
software | healthy | mobile/src/store.ts |
i18n.ts |
software | healthy | mobile/src/i18n.ts |
index.tsx |
software | healthy | mobile/src/navigation/index.tsx |
client.ts |
software | healthy | mobile/src/api/client.ts |
CaptureScreen.tsx |
software | healthy | mobile/src/screens/CaptureScreen.tsx |
HistoryScreen.tsx |
software | healthy | mobile/src/screens/HistoryScreen.tsx |
QAChatScreen.tsx |
software | healthy | mobile/src/screens/QAChatScreen.tsx |
BillDetailScreen.tsx |
software | healthy | mobile/src/screens/BillDetailScreen.tsx |
ReviewScreen.tsx |
software | healthy | mobile/src/screens/ReviewScreen.tsx |
SettingsScreen.tsx |
software | healthy | mobile/src/screens/SettingsScreen.tsx |
HelpScreen.tsx |
software | healthy | mobile/src/screens/HelpScreen.tsx |
DashboardScreen.tsx |
software | healthy | mobile/src/screens/DashboardScreen.tsx |
SignInScreen.tsx |
software | healthy | mobile/src/screens/SignInScreen.tsx |
DiscrepancyList.tsx |
software | healthy | mobile/src/components/DiscrepancyList.tsx |
UI.tsx |
software | healthy | mobile/src/components/UI.tsx |
SKILL.md |
software | healthy | .claude/skills/speckit-checklist/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-constitution/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-specify/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-agent-context-update/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-clarify/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-tasks/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-analyze/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-plan/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-taskstoissues/SKILL.md |
SKILL.md |
software | healthy | .claude/skills/speckit-implement/SKILL.md |
conftest.py |
software | healthy | backend/conftest.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
ErrorBoundary |
software | healthy | mobile/App.tsx:ErrorBoundary |
ApiError |
software | healthy | mobile/src/api/client.ts:ApiError |
_FakeDB |
software | healthy | backend/tests/unit/test_dashboard_service.py:10 |
FakeLLM |
software | healthy | backend/tests/unit/test_vision_extraction.py:25 |
_FakeDB |
software | healthy | backend/tests/unit/test_qa_service.py:10 |
_FakeLLM |
software | healthy | backend/tests/unit/test_qa_service.py:113 |
_FakeLLM |
software | healthy | backend/tests/unit/test_explanation.py:25 |
_BoomLLM |
software | healthy | backend/tests/unit/test_explanation.py:54 |
_FakeDB |
software | healthy | backend/tests/unit/test_seed.py:35 |
_FakeDB |
software | healthy | backend/tests/unit/test_bill_writer.py:49 |
_FakeLLM |
software | healthy | backend/tests/unit/test_bill_writer.py:84 |
_DBOk |
software | healthy | backend/tests/unit/test_category_service.py:22 |
_DBBoom |
software | healthy | backend/tests/unit/test_category_service.py:27 |
LLM |
software | healthy | backend/tests/unit/test_category_service.py:54 |
Settings |
software | healthy | backend/src/config.py:20 |
Provenance |
software | healthy | backend/src/models/schemas.py:18 |
BillType |
software | healthy | backend/src/models/schemas.py:23 |
ArtifactKind |
software | healthy | backend/src/models/schemas.py:29 |
DiscrepancyKind |
software | healthy | backend/src/models/schemas.py:35 |
SourceRef |
software | healthy | backend/src/models/schemas.py:41 |
TracedValue |
software | healthy | backend/src/models/schemas.py:51 |
LineItem |
software | healthy | backend/src/models/schemas.py:65 |
TaxLine |
software | healthy | backend/src/models/schemas.py:74 |
DiscrepancyFlag |
software | healthy | backend/src/models/schemas.py:90 |
Explanation |
software | healthy | backend/src/models/schemas.py:103 |
Category |
software | healthy | backend/src/models/schemas.py:108 |
SourceArtifact |
software | healthy | backend/src/models/schemas.py:114 |
Bill |
software | healthy | backend/src/models/schemas.py:123 |
QARequest |
software | healthy | backend/src/api/qa.py:25 |
AuthError |
software | healthy | backend/src/services/auth.py:45 |
LLMService |
software | healthy | backend/src/services/llm_service.py:51 |
ChatLLMService |
software | healthy | backend/src/services/llm_service.py:115 |
GroqLLMService |
software | healthy | backend/src/services/llm_service.py:329 |
OllamaLLMService |
software | healthy | backend/src/services/llm_service.py:383 |
PersistenceError |
software | healthy | backend/src/services/persistence.py:16 |
INRParseError |
software | healthy | backend/src/services/parsers/inr.py:24 |
VisionExtractionError |
software | healthy | backend/src/services/extraction/vision.py:91 |
NotABillError |
software | healthy | backend/src/services/extraction/types.py:17 |
ExtractionLine |
software | healthy | backend/src/services/extraction/types.py:26 |
ExtractionResult |
software | healthy | backend/src/services/extraction/types.py:37 |
PdfTooLargeError |
software | healthy | backend/src/services/extraction/pdf.py:37 |
| Label | Layer | Status | Path |
|---|---|---|---|
mobile |
software | healthy | mobile |
src |
software | healthy | mobile/src |
navigation |
software | healthy | mobile/src/navigation |
api |
software | healthy | mobile/src/api |
screens |
software | healthy | mobile/src/screens |
components |
software | healthy | mobile/src/components |
.claude |
software | healthy | .claude |
skills |
software | healthy | .claude/skills |
speckit-checklist |
software | healthy | .claude/skills/speckit-checklist |
speckit-constitution |
software | healthy | .claude/skills/speckit-constitution |
speckit-specify |
software | healthy | .claude/skills/speckit-specify |
speckit-agent-context-update |
software | healthy | .claude/skills/speckit-agent-context-update |
speckit-clarify |
software | healthy | .claude/skills/speckit-clarify |
speckit-tasks |
software | healthy | .claude/skills/speckit-tasks |
speckit-analyze |
software | healthy | .claude/skills/speckit-analyze |
speckit-plan |
software | healthy | .claude/skills/speckit-plan |
speckit-taskstoissues |
software | healthy | .claude/skills/speckit-taskstoissues |
speckit-implement |
software | healthy | .claude/skills/speckit-implement |
backend |
software | healthy | backend |
tests |
software | healthy | backend/tests |
unit |
software | healthy | backend/tests/unit |
scripts |
software | healthy | backend/scripts |
src |
software | healthy | backend/src |
models |
software | healthy | backend/src/models |
api |
software | healthy | backend/src/api |
web |
software | healthy | backend/src/web |
services |
software | healthy | backend/src/services |
parsers |
software | healthy | backend/src/services/parsers |
extraction |
software | healthy | backend/src/services/extraction |
db |
software | healthy | backend/src/db |
migrations |
software | healthy | backend/src/db/migrations |
specs |
software | healthy | specs |
001-bill-pipeline |
software | healthy | specs/001-bill-pipeline |
checklists |
software | healthy | specs/001-bill-pipeline/checklists |
contracts |
software | healthy | specs/001-bill-pipeline/contracts |
| Label | Layer | Status | Path |
|---|---|---|---|
GET / |
api | healthy | backend/src/main.py |
GET /config |
api | healthy | backend/src/main.py |
GET /health |
api | healthy | backend/src/main.py |
POST /bills:process |
api | healthy | backend/src/api/bills.py |
POST /bills |
api | healthy | backend/src/api/bills.py |
GET /bills |
api | healthy | backend/src/api/bills.py |
DELETE /bills/{bill_id} |
api | healthy | backend/src/api/bills.py |
DELETE /bills |
api | healthy | backend/src/api/bills.py |
GET /bills/{bill_id} |
api | healthy | backend/src/api/bills.py |
GET /dashboard/by-category |
api | healthy | backend/src/api/dashboard.py |
GET /dashboard/monthly |
api | healthy | backend/src/api/dashboard.py |
POST /qa |
api | healthy | backend/src/api/qa.py |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::mobile/src/api/client.ts |
security | healthy | mobile/src/api/client.ts |
auth::backend/src/config.py |
security | healthy | backend/src/config.py |
auth::backend/src/services/auth.py |
security | healthy | backend/src/services/auth.py |
auth::mobile/src/auth.ts |
security | healthy | mobile/src/auth.ts |
auth::backend/src/main.py |
security | healthy | backend/src/main.py |
auth::backend/src/web/index.html |
security | healthy | backend/src/web/index.html |
auth::backend/tests/unit/test_auth.py |
security | healthy | backend/tests/unit/test_auth.py |
auth::.claude/skills/speckit-specify/SKILL.md |
security | healthy | .claude/skills/speckit-specify/SKILL.md |
auth::backend/src/services/request_context.py |
security | healthy | backend/src/services/request_context.py |
| Label | Layer | Status | Path |
|---|---|---|---|
categories |
data | healthy | backend/src/db/migrations/setup_all.sql |
bills |
data | healthy | backend/src/db/migrations/setup_all.sql |
line_items |
data | healthy | backend/src/db/migrations/setup_all.sql |
source_artifacts |
data | healthy | backend/src/db/migrations/setup_all.sql |
discrepancy_flags |
data | healthy | backend/src/db/migrations/setup_all.sql |
explanations |
data | healthy | backend/src/db/migrations/setup_all.sql |
tax_lines |
data | healthy | backend/src/db/migrations/setup_all.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
003_match_bills.sql |
data | healthy | backend/src/db/migrations/003_match_bills.sql |
006_auth_rls.sql |
data | healthy | backend/src/db/migrations/006_auth_rls.sql |
setup_all.sql |
data | healthy | backend/src/db/migrations/setup_all.sql |
002_seed_categories.sql |
data | healthy | backend/src/db/migrations/002_seed_categories.sql |
004_bill_tags.sql |
data | healthy | backend/src/db/migrations/004_bill_tags.sql |
005_tax_lines.sql |
data | healthy | backend/src/db/migrations/005_tax_lines.sql |
001_init.sql |
data | healthy | backend/src/db/migrations/001_init.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
postgres |
data | healthy | README.md |
redis |
data | healthy | .claude/skills/speckit-specify/SKILL.md |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-qlvarik7 |
software | healthy | /tmp/repobility-clone-qlvarik7 |
| Label | Layer | Status | Path |
|---|---|---|---|
192.168.106.220 |
network | healthy | mobile/.env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8000 |
network | healthy | backend/Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
image::backend/Dockerfile |
hardware | healthy | backend/Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
App |
frontend | healthy | mobile/App.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
gitlab-ci |
cicd | healthy | .gitlab-ci.yml |
This page is publicly accessible at:
https://repobility.com/scan/332a47d4-ae83-42c9-8923-5386026df51b/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/332a47d4-ae83-42c9-8923-5386026df51b/
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.