https://github.com/thariqhatrama/divre-monitoring
· scanned 2026-06-16 00:33 UTC (2 months, 2 weeks ago)
65 raw signals (0 security + 65 graph)
Last scanned 2 months, 2 weeks ago · v1 · 61 actionable findings from 1 signal source. 4 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 562 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 |
|---|---|---|---|
Home |
software | healthy | frontend/src/App.jsx:Home |
ProtectedLayout |
software | healthy | frontend/src/App.jsx:ProtectedLayout |
App |
software | healthy | frontend/src/App.jsx:App |
getMarginStatus |
software | healthy | frontend/src/utils/marginFlag.js:getMarginStatus |
getMarginStatusLabel |
software | healthy | frontend/src/utils/marginFlag.js:getMarginStatusLabel |
getMarginStatusClass |
software | healthy | frontend/src/utils/marginFlag.js:getMarginStatusClass |
calculateRabMargin |
software | healthy | frontend/src/utils/marginFlag.js:calculateRabMargin |
toNumber |
software | healthy | frontend/src/utils/currencyConvert.js:toNumber |
normalizeCurrency |
software | healthy | frontend/src/utils/currencyConvert.js:normalizeCurrency |
normalizeKurs |
software | healthy | frontend/src/utils/currencyConvert.js:normalizeKurs |
convertToIDR |
software | healthy | frontend/src/utils/currencyConvert.js:convertToIDR |
calculateLineTotalIdr |
software | healthy | frontend/src/utils/currencyConvert.js:calculateLineTotalIdr |
calculateNilaiIdr |
software | healthy | frontend/src/utils/currencyConvert.js:calculateNilaiIdr |
formatIDR |
software | healthy | frontend/src/utils/formatIDR.js:formatIDR |
formatPercent |
software | healthy | frontend/src/utils/formatIDR.js:formatPercent |
BreakdownChart |
software | healthy | frontend/src/components/BreakdownChart.jsx:BreakdownChart |
formatDelta |
software | healthy | frontend/src/components/ProyekTable.jsx:formatDelta |
getDeltaClass |
software | healthy | frontend/src/components/ProyekTable.jsx:getDeltaClass |
ProyekTable |
software | healthy | frontend/src/components/ProyekTable.jsx:ProyekTable |
MarginChart |
software | healthy | frontend/src/components/MarginChart.jsx:MarginChart |
ProtectedRoute |
software | healthy | frontend/src/components/ProtectedRoute.jsx:ProtectedRoute |
MarginBadge |
software | healthy | frontend/src/components/MarginBadge.jsx:MarginBadge |
MarginCard |
software | healthy | frontend/src/components/MarginCard.jsx:MarginCard |
isMenuActive |
software | healthy | frontend/src/components/layout/Sidebar.jsx:isMenuActive |
Sidebar |
software | healthy | frontend/src/components/layout/Sidebar.jsx:Sidebar |
getPageMeta |
software | healthy | frontend/src/components/layout/Header.jsx:getPageMeta |
formatRole |
software | healthy | frontend/src/components/layout/Header.jsx:formatRole |
Header |
software | healthy | frontend/src/components/layout/Header.jsx:Header |
AppLayout |
software | healthy | frontend/src/components/layout/AppLayout.jsx:AppLayout |
closeSidebar |
software | healthy | frontend/src/components/layout/AppLayout.jsx:closeSidebar |
PageHeader |
software | healthy | frontend/src/components/ui/PageHeader.jsx:PageHeader |
Card |
software | healthy | frontend/src/components/ui/Card.jsx:Card |
Badge |
software | healthy | frontend/src/components/ui/Badge.jsx:Badge |
Input |
software | healthy | frontend/src/components/ui/Input.jsx:Input |
optionToItem |
software | healthy | frontend/src/components/ui/Select.jsx:optionToItem |
Select |
software | healthy | frontend/src/components/ui/Select.jsx:Select |
handlePointerDown |
software | healthy | frontend/src/components/ui/Select.jsx:handlePointerDown |
selectOption |
software | healthy | frontend/src/components/ui/Select.jsx:selectOption |
handleKeyDown |
software | healthy | frontend/src/components/ui/Select.jsx:handleKeyDown |
LoadingState |
software | healthy | frontend/src/components/ui/LoadingState.jsx:LoadingState |
Modal |
software | healthy | frontend/src/components/ui/Modal.jsx:Modal |
handleKeyDown |
software | healthy | frontend/src/components/ui/Modal.jsx:handleKeyDown |
Button |
software | healthy | frontend/src/components/ui/Button.jsx:Button |
ConfirmModal |
software | healthy | frontend/src/components/ui/ConfirmModal.jsx:ConfirmModal |
EmptyState |
software | healthy | frontend/src/components/ui/EmptyState.jsx:EmptyState |
ProyekForm |
software | healthy | frontend/src/pages/ProyekForm.jsx:ProyekForm |
loadBranches |
software | healthy | frontend/src/pages/ProyekForm.jsx:loadBranches |
loadProject |
software | healthy | frontend/src/pages/ProyekForm.jsx:loadProject |
updateField |
software | healthy | frontend/src/pages/ProyekForm.jsx:updateField |
buildPayload |
software | healthy | frontend/src/pages/ProyekForm.jsx:buildPayload |
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 |
CLAUDE.md |
software | healthy | CLAUDE.md |
CHECKLIST_SETUP.md |
software | healthy | CHECKLIST_SETUP.md |
package-lock.json |
software | healthy | package-lock.json |
STATUS.md |
software | healthy | STATUS.md |
vite.config.js |
software | healthy | frontend/vite.config.js |
vercel.json |
software | healthy | frontend/vercel.json |
README.md |
software | healthy | frontend/README.md |
package.json |
software | healthy | frontend/package.json |
index.html |
software | healthy | frontend/index.html |
package-lock.json |
software | healthy | frontend/package-lock.json |
.env.example |
software | healthy | frontend/.env.example |
eslint.config.js |
software | healthy | frontend/eslint.config.js |
index.css |
software | healthy | frontend/src/index.css |
App.jsx |
software | healthy | frontend/src/App.jsx |
App.css |
software | healthy | frontend/src/App.css |
main.jsx |
software | healthy | frontend/src/main.jsx |
marginFlag.js |
software | healthy | frontend/src/utils/marginFlag.js |
currencyConvert.js |
software | healthy | frontend/src/utils/currencyConvert.js |
formatIDR.js |
software | healthy | frontend/src/utils/formatIDR.js |
BreakdownChart.jsx |
software | healthy | frontend/src/components/BreakdownChart.jsx |
ProyekTable.jsx |
software | healthy | frontend/src/components/ProyekTable.jsx |
MarginChart.jsx |
software | healthy | frontend/src/components/MarginChart.jsx |
ProtectedRoute.jsx |
software | healthy | frontend/src/components/ProtectedRoute.jsx |
MarginBadge.jsx |
software | healthy | frontend/src/components/MarginBadge.jsx |
MarginCard.jsx |
software | healthy | frontend/src/components/MarginCard.jsx |
Sidebar.jsx |
software | healthy | frontend/src/components/layout/Sidebar.jsx |
Header.jsx |
software | healthy | frontend/src/components/layout/Header.jsx |
AppLayout.jsx |
software | healthy | frontend/src/components/layout/AppLayout.jsx |
PageHeader.jsx |
software | healthy | frontend/src/components/ui/PageHeader.jsx |
Card.jsx |
software | healthy | frontend/src/components/ui/Card.jsx |
Badge.jsx |
software | healthy | frontend/src/components/ui/Badge.jsx |
Input.jsx |
software | healthy | frontend/src/components/ui/Input.jsx |
Select.jsx |
software | healthy | frontend/src/components/ui/Select.jsx |
LoadingState.jsx |
software | healthy | frontend/src/components/ui/LoadingState.jsx |
Modal.jsx |
software | healthy | frontend/src/components/ui/Modal.jsx |
Button.jsx |
software | healthy | frontend/src/components/ui/Button.jsx |
ConfirmModal.jsx |
software | healthy | frontend/src/components/ui/ConfirmModal.jsx |
index.js |
software | healthy | frontend/src/components/ui/index.js |
EmptyState.jsx |
software | healthy | frontend/src/components/ui/EmptyState.jsx |
ProyekForm.jsx |
software | healthy | frontend/src/pages/ProyekForm.jsx |
AuditLog.jsx |
software | healthy | frontend/src/pages/AuditLog.jsx |
RealisasiForm.jsx |
software | healthy | frontend/src/pages/RealisasiForm.jsx |
Dashboard.jsx |
software | healthy | frontend/src/pages/Dashboard.jsx |
ProyekList.jsx |
software | healthy | frontend/src/pages/ProyekList.jsx |
DashboardCabang.jsx |
software | healthy | frontend/src/pages/DashboardCabang.jsx |
RABForm.jsx |
software | healthy | frontend/src/pages/RABForm.jsx |
ProyekDetail.jsx |
software | healthy | frontend/src/pages/ProyekDetail.jsx |
UserGuide.jsx |
software | healthy | frontend/src/pages/UserGuide.jsx |
Login.jsx |
software | healthy | frontend/src/pages/Login.jsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
GET /api/master/coa |
api | healthy | frontend/src/services/api.js |
POST /api/master/coa |
api | healthy | frontend/src/services/api.js |
GET /api/master/cabang |
api | healthy | frontend/src/services/api.js |
POST /api/master/cabang |
api | healthy | frontend/src/services/api.js |
GET /api/master/user |
api | healthy | frontend/src/services/api.js |
POST /api/master/user |
api | healthy | frontend/src/services/api.js |
GET /api/kurs |
api | healthy | frontend/src/services/api.js |
PUT /api/kurs |
api | healthy | frontend/src/services/api.js |
GET /api/proyek |
api | healthy | frontend/src/services/api.js |
POST /api/proyek |
api | healthy | frontend/src/services/api.js |
GET /api/dashboard/summary |
api | healthy | frontend/src/services/api.js |
GET /api/dashboard/by-cabang |
api | healthy | frontend/src/services/api.js |
GET /api/audit-log |
api | healthy | frontend/src/services/api.js |
POST /api/auth/logout |
api | healthy | frontend/src/context/AuthContext.jsx |
POST /api/auth/login |
api | healthy | frontend/src/context/AuthContext.jsx |
GET /api/health |
api | healthy | backend/src/app.js |
GET / |
api | healthy | backend/src/app.js |
USE /api/auth |
api | healthy | backend/src/app.js |
USE /api/master |
api | healthy | backend/src/app.js |
USE /api/kurs |
api | healthy | backend/src/app.js |
USE /api/proyek |
api | healthy | backend/src/app.js |
USE /api |
api | healthy | backend/src/app.js |
USE /api/dashboard |
api | healthy | backend/src/app.js |
USE /api/audit-log |
api | healthy | backend/src/app.js |
POST / |
api | healthy | backend/src/routes/proyek.routes.js |
GET /:id |
api | healthy | backend/src/routes/proyek.routes.js |
PATCH /:id |
api | healthy | backend/src/routes/proyek.routes.js |
DELETE /:id |
api | healthy | backend/src/routes/proyek.routes.js |
GET /proyek/:id/rab |
api | healthy | backend/src/routes/rab.routes.js |
POST /proyek/:id/rab |
api | healthy | backend/src/routes/rab.routes.js |
PATCH /rab/:itemId |
api | healthy | backend/src/routes/rab.routes.js |
DELETE /rab/:itemId |
api | healthy | backend/src/routes/rab.routes.js |
GET /coa |
api | healthy | backend/src/routes/master.routes.js |
POST /coa |
api | healthy | backend/src/routes/master.routes.js |
PATCH /coa/:kodeSeg5 |
api | healthy | backend/src/routes/master.routes.js |
GET /cabang |
api | healthy | backend/src/routes/master.routes.js |
POST /cabang |
api | healthy | backend/src/routes/master.routes.js |
PATCH /cabang/:id |
api | healthy | backend/src/routes/master.routes.js |
GET /user |
api | healthy | backend/src/routes/master.routes.js |
POST /user |
api | healthy | backend/src/routes/master.routes.js |
PATCH /user/:id |
api | healthy | backend/src/routes/master.routes.js |
POST /login |
api | healthy | backend/src/routes/auth.routes.js |
POST /logout |
api | healthy | backend/src/routes/auth.routes.js |
GET /summary |
api | healthy | backend/src/routes/dashboard.routes.js |
GET /by-cabang |
api | healthy | backend/src/routes/dashboard.routes.js |
GET /proyek/:id/realisasi |
api | healthy | backend/src/routes/realisasi.routes.js |
POST /rab/:itemId/realisasi |
api | healthy | backend/src/routes/realisasi.routes.js |
PATCH /realisasi/:id |
api | healthy | backend/src/routes/realisasi.routes.js |
DELETE /realisasi/:id |
api | healthy | backend/src/routes/realisasi.routes.js |
PUT / |
api | healthy | backend/src/routes/kurs.routes.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
App |
frontend | healthy | frontend/src/App.jsx |
BreakdownChart |
frontend | healthy | frontend/src/components/BreakdownChart.jsx |
ProyekTable |
frontend | healthy | frontend/src/components/ProyekTable.jsx |
MarginChart |
frontend | healthy | frontend/src/components/MarginChart.jsx |
ProtectedRoute |
frontend | healthy | frontend/src/components/ProtectedRoute.jsx |
MarginBadge |
frontend | healthy | frontend/src/components/MarginBadge.jsx |
MarginCard |
frontend | healthy | frontend/src/components/MarginCard.jsx |
Sidebar |
frontend | healthy | frontend/src/components/layout/Sidebar.jsx |
Header |
frontend | healthy | frontend/src/components/layout/Header.jsx |
AppLayout |
frontend | healthy | frontend/src/components/layout/AppLayout.jsx |
PageHeader |
frontend | healthy | frontend/src/components/ui/PageHeader.jsx |
Card |
frontend | healthy | frontend/src/components/ui/Card.jsx |
Badge |
frontend | healthy | frontend/src/components/ui/Badge.jsx |
Input |
frontend | healthy | frontend/src/components/ui/Input.jsx |
Select |
frontend | healthy | frontend/src/components/ui/Select.jsx |
LoadingState |
frontend | healthy | frontend/src/components/ui/LoadingState.jsx |
Modal |
frontend | healthy | frontend/src/components/ui/Modal.jsx |
Button |
frontend | healthy | frontend/src/components/ui/Button.jsx |
ConfirmModal |
frontend | healthy | frontend/src/components/ui/ConfirmModal.jsx |
EmptyState |
frontend | healthy | frontend/src/components/ui/EmptyState.jsx |
ProyekForm |
frontend | healthy | frontend/src/pages/ProyekForm.jsx |
AuditLog |
frontend | healthy | frontend/src/pages/AuditLog.jsx |
RealisasiForm |
frontend | healthy | frontend/src/pages/RealisasiForm.jsx |
Dashboard |
frontend | healthy | frontend/src/pages/Dashboard.jsx |
ProyekList |
frontend | healthy | frontend/src/pages/ProyekList.jsx |
DashboardCabang |
frontend | healthy | frontend/src/pages/DashboardCabang.jsx |
RABForm |
frontend | healthy | frontend/src/pages/RABForm.jsx |
ProyekDetail |
frontend | healthy | frontend/src/pages/ProyekDetail.jsx |
UserGuide |
frontend | healthy | frontend/src/pages/UserGuide.jsx |
Login |
frontend | healthy | frontend/src/pages/Login.jsx |
MasterData |
frontend | healthy | frontend/src/pages/MasterData.jsx |
AuthContext |
frontend | healthy | frontend/src/context/AuthContext.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
/ProyekForm |
frontend | healthy | frontend/src/pages/ProyekForm.jsx |
/AuditLog |
frontend | healthy | frontend/src/pages/AuditLog.jsx |
/RealisasiForm |
frontend | healthy | frontend/src/pages/RealisasiForm.jsx |
/Dashboard |
frontend | healthy | frontend/src/pages/Dashboard.jsx |
/ProyekList |
frontend | healthy | frontend/src/pages/ProyekList.jsx |
/DashboardCabang |
frontend | healthy | frontend/src/pages/DashboardCabang.jsx |
/RABForm |
frontend | healthy | frontend/src/pages/RABForm.jsx |
/ProyekDetail |
frontend | healthy | frontend/src/pages/ProyekDetail.jsx |
/UserGuide |
frontend | healthy | frontend/src/pages/UserGuide.jsx |
/Login |
frontend | healthy | frontend/src/pages/Login.jsx |
/MasterData |
frontend | healthy | frontend/src/pages/MasterData.jsx |
/login |
frontend | healthy | frontend/src/App.jsx |
/ |
frontend | healthy | frontend/src/App.jsx |
/user-guide |
frontend | healthy | frontend/src/App.jsx |
/master-data |
frontend | healthy | frontend/src/App.jsx |
/master-data/:tab |
frontend | healthy | frontend/src/App.jsx |
/audit-log |
frontend | healthy | frontend/src/App.jsx |
/dashboard |
frontend | healthy | frontend/src/App.jsx |
/dashboard-cabang |
frontend | healthy | frontend/src/App.jsx |
/proyek |
frontend | healthy | frontend/src/App.jsx |
/proyek/new |
frontend | healthy | frontend/src/App.jsx |
/proyek/:id/edit |
frontend | healthy | frontend/src/App.jsx |
/proyek/:id/detail |
frontend | healthy | frontend/src/App.jsx |
/proyek/:id/rab |
frontend | healthy | frontend/src/App.jsx |
/proyek/:id/realisasi |
frontend | healthy | frontend/src/App.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
frontend |
software | healthy | frontend |
src |
software | healthy | frontend/src |
utils |
software | healthy | frontend/src/utils |
components |
software | healthy | frontend/src/components |
layout |
software | healthy | frontend/src/components/layout |
ui |
software | healthy | frontend/src/components/ui |
pages |
software | healthy | frontend/src/pages |
hooks |
software | healthy | frontend/src/hooks |
services |
software | healthy | frontend/src/services |
context |
software | healthy | frontend/src/context |
docs |
software | healthy | docs |
backend |
software | healthy | backend |
migrations |
software | healthy | backend/migrations |
src |
software | healthy | backend/src |
models |
software | healthy | backend/src/models |
middleware |
software | healthy | backend/src/middleware |
routes |
software | healthy | backend/src/routes |
controllers |
software | healthy | backend/src/controllers |
services |
software | healthy | backend/src/services |
db |
software | healthy | backend/src/db |
| Label | Layer | Status | Path |
|---|---|---|---|
branches |
data | healthy | backend/migrations/001_create_tables.sql |
users |
data | healthy | backend/migrations/001_create_tables.sql |
coa_accounts |
data | healthy | backend/migrations/001_create_tables.sql |
projects |
data | healthy | backend/migrations/001_create_tables.sql |
rab_items |
data | healthy | backend/migrations/001_create_tables.sql |
realisasi_items |
data | healthy | backend/migrations/001_create_tables.sql |
kurs_history |
data | healthy | backend/migrations/001_create_tables.sql |
audit_log |
data | healthy | backend/migrations/001_create_tables.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
006_reseed_branches_seg23_divre_timur.sql |
data | healthy | backend/migrations/006_reseed_branches_seg23_divre_timur.sql |
002_seed_coa.sql |
data | healthy | backend/migrations/002_seed_coa.sql |
001_create_tables.sql |
data | healthy | backend/migrations/001_create_tables.sql |
004_seed_dummy_projects.sql |
data | healthy | backend/migrations/004_seed_dummy_projects.sql |
007_delete_legacy_inactive_branches.sql |
data | healthy | backend/migrations/007_delete_legacy_inactive_branches.sql |
005_seed_dummy_rab_realisasi.sql |
data | healthy | backend/migrations/005_seed_dummy_rab_realisasi.sql |
003_seed_branches.sql |
data | healthy | backend/migrations/003_seed_branches.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::README.md |
security | healthy | README.md |
auth::CLAUDE.md |
security | healthy | CLAUDE.md |
auth::backend/src/controllers/auth.controller.js |
security | healthy | backend/src/controllers/auth.controller.js |
auth::backend/src/middleware/auth.middleware.js |
security | healthy | backend/src/middleware/auth.middleware.js |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-7u_gh4tz |
software | healthy | /tmp/repobility-clone-7u_gh4tz |
| Label | Layer | Status | Path |
|---|---|---|---|
postgresql |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
port:3001 |
network | healthy | README.md |
This page is publicly accessible at:
https://repobility.com/scan/87b8d9ad-c8a7-49a1-b171-c17e73191eb0/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/87b8d9ad-c8a7-49a1-b171-c17e73191eb0/
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.