https://github.com/sehha555/portfolio-tracker
· scanned 2026-06-16 00:06 UTC (2 months, 2 weeks ago)
142 raw signals (0 security + 142 graph)
Last scanned 2 months, 2 weeks ago · v1 · 138 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 900 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 |
|---|---|---|---|
port_in_use |
software | healthy | run.py:26 |
find_listener_pids |
software | healthy | run.py:35 |
_taskkill |
software | healthy | run.py:56 |
_kill_orphan_workers |
software | healthy | run.py:78 |
_wait_port_free |
software | healthy | run.py:95 |
ensure_port_free |
software | healthy | run.py:104 |
ensure_db |
software | healthy | run.py:141 |
open_browser |
software | dead | run.py:151 |
main |
software | healthy | run.py:155 |
_make_db |
software | healthy | tests/test_twr.py:30 |
_insert_snap |
software | healthy | tests/test_twr.py:68 |
__init__ |
software | healthy | tests/test_twr.py:90 |
__enter__ |
software | healthy | tests/test_twr.py:95 |
__exit__ |
software | healthy | tests/test_twr.py:104 |
test_twr_no_cashflow |
software | healthy | tests/test_twr.py:120 |
test_twr_with_buy_cashflow |
software | healthy | tests/test_twr.py:150 |
test_twr_no_extreme_blowup |
software | healthy | tests/test_twr.py:175 |
test_twr_buy_cf_sign_correct |
software | healthy | tests/test_twr.py:197 |
test_twr_sell_cf_sign_correct |
software | healthy | tests/test_twr.py:225 |
test_twr_empty_returns_none |
software | healthy | tests/test_twr.py:247 |
test_twr_zero_aum_returns_none |
software | healthy | tests/test_twr.py:259 |
test_classify_market |
software | healthy | tests/test_symbol_integrity.py:43 |
_is_valid_tw_suffix |
software | healthy | tests/test_symbol_integrity.py:55 |
test_tw_symbol_must_have_suffix |
software | healthy | tests/test_symbol_integrity.py:77 |
test_tw_symbol_without_suffix_misclassified |
software | healthy | tests/test_symbol_integrity.py:84 |
test_broad_market |
software | healthy | tests/test_symbol_integrity.py:108 |
_make_test_db |
software | healthy | tests/test_symbol_integrity.py:117 |
test_no_orphan_asset_profiles |
software | healthy | tests/test_symbol_integrity.py:158 |
test_orphan_asset_profiles_detected |
software | healthy | tests/test_symbol_integrity.py:189 |
test_trades_with_correct_tw_suffix |
software | healthy | tests/test_symbol_integrity.py:213 |
test_tw_listed_suffix_rules |
software | healthy | tests/test_symbol_integrity.py:251 |
test_listed_vs_otc_suffix_difference |
software | healthy | tests/test_symbol_integrity.py:271 |
__init__ |
software | healthy | tests/test_exports.py:35 |
test_number_format_decimals2 |
software | healthy | tests/test_exports.py:41 |
test_number_format_decimals4 |
software | healthy | tests/test_exports.py:50 |
test_number_format_signed |
software | healthy | tests/test_exports.py:59 |
test_number_format_no_decimals_default |
software | healthy | tests/test_exports.py:68 |
test_cell_value_not_rounded_to_int |
software | healthy | tests/test_exports.py:83 |
test_realized_pnl_sign_preserved |
software | healthy | tests/test_exports.py:126 |
test_build_holdings_xlsx_readable |
software | healthy | tests/test_exports.py:152 |
execute |
software | healthy | tests/test_exports.py:188 |
__getitem__ |
software | healthy | tests/test_exports.py:191 |
__enter__ |
software | healthy | tests/test_exports.py:194 |
__exit__ |
software | healthy | tests/test_exports.py:195 |
_fake_tx |
software | healthy | tests/test_exports.py:200 |
main |
software | healthy | scripts/migrate_theme_type.py:20 |
resolve_tw_symbol |
software | healthy | scripts/import_from_xlsx.py:35 |
to_iso_date |
software | healthy | scripts/import_from_xlsx.py:45 |
reset_db |
software | healthy | scripts/import_from_xlsx.py:56 |
main |
software | healthy | scripts/import_from_xlsx.py:64 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
DESIGN.md |
software | healthy | DESIGN.md |
PRODUCT.md |
software | healthy | PRODUCT.md |
README.md |
software | healthy | README.md |
run.py |
software | healthy | run.py |
LICENSE |
software | healthy | LICENSE |
requirements.txt |
software | healthy | requirements.txt |
__init__.py |
software | healthy | tests/__init__.py |
test_twr.py |
software | healthy | tests/test_twr.py |
test_symbol_integrity.py |
software | healthy | tests/test_symbol_integrity.py |
test_exports.py |
software | healthy | tests/test_exports.py |
NORTH-STAR-themes-architecture.md |
software | healthy | docs/NORTH-STAR-themes-architecture.md |
cli.md |
software | healthy | docs/cli.md |
DESIGN.md |
software | healthy | docs/DESIGN.md |
architecture-overview.html |
software | healthy | docs/architecture-overview.html |
DESIGN-themes-view.md |
software | healthy | docs/DESIGN-themes-view.md |
7828-thesis-original-backup.md |
software | healthy | docs/7828-thesis-original-backup.md |
DESIGN-research-page-layout.md |
software | healthy | docs/DESIGN-research-page-layout.md |
DESIGN-catalyst-timeline.md |
software | healthy | docs/DESIGN-catalyst-timeline.md |
DESIGN-industry-map.md |
software | healthy | docs/DESIGN-industry-map.md |
PLAN-industry-map.md |
software | healthy | docs/PLAN-industry-map.md |
DESIGN-deployment-bar.md |
software | healthy | docs/DESIGN-deployment-bar.md |
themes-layout-mockup.html |
software | healthy | docs/themes-layout-mockup.html |
2026-05-05-產業地位圖對話skill-design.md |
software | healthy | docs/superpowers/specs/2026-05-05-產業地位圖對話skill-design.md |
2026-04-22-情報頁重新設計-design.md |
software | healthy | docs/superpowers/specs/2026-04-22-情報頁重新設計-design.md |
2026-04-29-phase3-profile-彙整-design.md |
software | healthy | docs/superpowers/specs/2026-04-29-phase3-profile-彙整-design.… |
extraction-v1.md |
software | healthy | docs/prompts/extraction-v1.md |
holdings-themes-graph-design-prompt.md |
software | healthy | docs/prompts/holdings-themes-graph-design-prompt.md |
7828-zzz-eval.md |
software | healthy | docs/prompts/eval/7828-zzz-eval.md |
etn-eval.md |
software | healthy | docs/prompts/eval/etn-eval.md |
7828-techpulse-eval.md |
software | healthy | docs/prompts/eval/7828-techpulse-eval.md |
axti-eval.md |
software | healthy | docs/prompts/eval/axti-eval.md |
mu-eval.md |
software | healthy | docs/prompts/eval/mu-eval.md |
SUMMARY.md |
software | healthy | docs/prompts/eval/SUMMARY.md |
seed_7828_catalysts.py |
software | healthy | scripts/seed_7828_catalysts.py |
migrate_theme_type.py |
software | healthy | scripts/migrate_theme_type.py |
import_from_xlsx.py |
software | healthy | scripts/import_from_xlsx.py |
import_coverage_themes.py |
software | healthy | scripts/import_coverage_themes.py |
fetch_peers_7828.py |
software | healthy | scripts/fetch_peers_7828.py |
shoot_screenshots.py |
software | healthy | scripts/shoot_screenshots.py |
backfill_sector.py |
software | healthy | scripts/backfill_sector.py |
audit_theme_suffix.py |
software | healthy | scripts/audit_theme_suffix.py |
seed_tracking_7828.py |
software | healthy | scripts/seed_tracking_7828.py |
check_tracking.py |
software | healthy | scripts/check_tracking.py |
pt.py |
software | healthy | scripts/pt.py |
build_snapshots.py |
software | healthy | scripts/build_snapshots.py |
write_research_lens.py |
software | healthy | scripts/write_research_lens.py |
write_extraction.py |
software | healthy | scripts/write_extraction.py |
seed_industry_7828.py |
software | healthy | scripts/seed_industry_7828.py |
financials.py |
software | healthy | app/financials.py |
promotion.py |
software | healthy | app/promotion.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
GET /healthz |
api | healthy | app/main.py |
GET / |
api | healthy | app/routes/pages.py |
GET /research |
api | healthy | app/routes/pages.py |
GET /research/themes/ |
api | healthy | app/routes/pages.py |
GET /research/themes/{theme_id} |
api | healthy | app/routes/pages.py |
GET /trades |
api | healthy | app/routes/pages.py |
GET /trades/{symbol} |
api | healthy | app/routes/pages.py |
GET /research/{symbol} |
api | healthy | app/routes/pages.py |
GET /calendar |
api | healthy | app/routes/pages.py |
GET /risk |
api | healthy | app/routes/pages.py |
GET /graph |
api | healthy | app/routes/pages.py |
GET /industries |
api | healthy | app/routes/pages.py |
GET /industry-map |
api | healthy | app/routes/pages.py |
GET /industry-map/{ic_code} |
api | healthy | app/routes/pages.py |
GET /podcasts |
api | healthy | app/routes/pages.py |
GET /podcasts/settings |
api | healthy | app/routes/pages.py |
GET /podcasts/{digest_id} |
api | healthy | app/routes/pages.py |
GET /settings |
api | healthy | app/routes/pages.py |
GET /api/accounts |
api | healthy | app/routes/api.py |
POST /api/accounts |
api | healthy | app/routes/api.py |
PUT /api/accounts/{account_id} |
api | healthy | app/routes/api.py |
DELETE /api/accounts/{account_id} |
api | healthy | app/routes/api.py |
GET /api/export/holdings.xlsx |
api | healthy | app/routes/api.py |
GET /api/fee-preview |
api | healthy | app/routes/api.py |
POST /api/trades |
api | healthy | app/routes/api.py |
GET /api/fx-rate |
api | healthy | app/routes/api.py |
POST /api/fx |
api | healthy | app/routes/api.py |
DELETE /api/trades/{trade_id} |
api | healthy | app/routes/api.py |
PATCH /api/trades/{trade_id} |
api | healthy | app/routes/api.py |
GET /api/symbol-lookup |
api | healthy | app/routes/api.py |
GET /api/prices |
api | healthy | app/routes/api.py |
GET /api/ohlc |
api | healthy | app/routes/api.py |
GET /api/symbols/{symbol}/trades |
api | healthy | app/routes/api.py |
GET /api/symbols/{symbol}/tracking |
api | healthy | app/routes/api.py |
GET /api/dashboard/snapshot |
api | healthy | app/routes/api.py |
GET /api/snapshots |
api | healthy | app/routes/api.py |
GET /api/health |
api | healthy | app/routes/api.py |
POST /api/snapshots/rebuild |
api | healthy | app/routes/api.py |
GET /api/settings/fees |
api | healthy | app/routes/api.py |
POST /api/settings/fees |
api | healthy | app/routes/api.py |
POST /api/trades/recalculate-fees |
api | healthy | app/routes/api.py |
GET /api/dca-plans |
api | healthy | app/routes/api.py |
POST /api/dca-plans |
api | healthy | app/routes/api.py |
PATCH /api/dca-plans/{plan_id} |
api | healthy | app/routes/api.py |
DELETE /api/dca-plans/{plan_id} |
api | healthy | app/routes/api.py |
POST /api/dca-plans/{plan_id}/import-existing |
api | healthy | app/routes/api.py |
GET /api/promotions |
api | healthy | app/routes/api.py |
POST /api/promotions/apply |
api | healthy | app/routes/api.py |
POST /api/import/preview |
api | healthy | app/routes/api.py |
POST /api/import/commit |
api | healthy | app/routes/api.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
settings |
data | healthy | app/db.py |
accounts |
data | healthy | app/db.py |
trades |
data | healthy | app/db.py |
asset_profiles |
data | healthy | app/db.py |
dca_plans |
data | healthy | app/db.py |
symbol_notes |
data | healthy | app/db.py |
info_items |
data | healthy | app/db.py |
related_symbols |
data | healthy | app/db.py |
symbol_events |
data | healthy | app/db.py |
themes |
data | healthy | app/db.py |
theme_members |
data | healthy | app/db.py |
theme_edges |
data | healthy | app/db.py |
theme_momentum_snapshots |
data | healthy | app/db.py |
company_events |
data | healthy | app/db.py |
daily_prices |
data | healthy | app/db.py |
podcast_digests |
data | healthy | app/db.py |
symbol_extractions |
data | healthy | app/db.py |
symbol_industry_profile |
data | healthy | app/db.py |
symbol_profile_changes |
data | healthy | app/db.py |
research_materials |
data | healthy | app/db.py |
industries |
data | healthy | app/db.py |
industry_subdivisions |
data | healthy | app/db.py |
theme_subdivisions |
data | healthy | app/db.py |
subdivision_supply_edges |
data | healthy | app/db.py |
theme_supply_edges |
data | healthy | app/db.py |
industry_flow_snapshots |
data | healthy | app/db.py |
subdivision_flow_snapshots |
data | healthy | app/db.py |
theme_flow_snapshots |
data | healthy | app/db.py |
industry_infer_flow_snapshots |
data | healthy | app/db.py |
theme_infer_flow_snapshots |
data | healthy | app/db.py |
industry_flow_overrides |
data | healthy | app/db.py |
subdivision_flow_overrides |
data | healthy | app/db.py |
theme_flow_overrides |
data | healthy | app/db.py |
symbol_financials |
data | healthy | app/db.py |
symbol_tracking_items |
data | healthy | app/db.py |
post_sell_prices |
data | healthy | app/db.py |
snapshots |
data | healthy | app/snapshots.py |
| Label | Layer | Status | Path |
|---|---|---|---|
_PatchedDB |
software | healthy | tests/test_twr.py:88 |
_FakeCell |
software | healthy | tests/test_exports.py:33 |
_FakeCursor |
software | healthy | tests/test_exports.py:187 |
_FakeRow |
software | healthy | tests/test_exports.py:190 |
HoldingState |
software | healthy | app/holding_state.py:53 |
TradeType |
software | healthy | app/models.py:12 |
TradeIn |
software | healthy | app/models.py:21 |
FxIn |
software | healthy | app/models.py:38 |
TradeUpdate |
software | healthy | app/models.py:49 |
DcaPlanIn |
software | healthy | app/models.py:63 |
DcaPlanUpdate |
software | healthy | app/models.py:74 |
name |
software | healthy | app/static/js/industries-radial.js:name |
ImportCommitIn |
software | healthy | app/routes/api.py:775 |
SymbolNoteIn |
software | healthy | app/routes/api.py:819 |
InfoItemIn |
software | healthy | app/routes/api.py:827 |
RelatedSymbolIn |
software | healthy | app/routes/api.py:836 |
TagsIn |
software | healthy | app/routes/api.py:842 |
SymbolStatusIn |
software | healthy | app/routes/api.py:865 |
FreeFormNoteIn |
software | healthy | app/routes/api.py:869 |
ResearchMaterialIn |
software | healthy | app/routes/api.py:874 |
ThemeIn |
software | healthy | app/routes/api.py:1106 |
ThemePatchIn |
software | healthy | app/routes/api.py:1112 |
ThemeMemberIn |
software | healthy | app/routes/api.py:1177 |
ThemeMemberPatchIn |
software | healthy | app/routes/api.py:1183 |
PodcastImportItem |
software | healthy | app/routes/api.py:1329 |
PodcastImportPayload |
software | healthy | app/routes/api.py:1335 |
PodcastSettingsPayload |
software | healthy | app/routes/api.py:1372 |
ChannelPayload |
software | healthy | app/routes/api.py:1420 |
PromptPayload |
software | healthy | app/routes/api.py:1457 |
ProfileCommitDecision |
software | healthy | app/routes/api.py:1526 |
ProfileCommitPayload |
software | healthy | app/routes/api.py:1531 |
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
docs |
software | healthy | docs |
superpowers |
software | healthy | docs/superpowers |
specs |
software | healthy | docs/superpowers/specs |
prompts |
software | healthy | docs/prompts |
eval |
software | healthy | docs/prompts/eval |
scripts |
software | healthy | scripts |
app |
software | healthy | app |
static |
software | healthy | app/static |
js |
software | healthy | app/static/js |
reviews |
software | healthy | app/static/reviews |
2026-06-11-design-language |
software | healthy | app/static/reviews/2026-06-11-design-language |
2026-06-11-design-batch2 |
software | healthy | app/static/reviews/2026-06-11-design-batch2 |
price_sources |
software | healthy | app/price_sources |
templates |
software | healthy | app/templates |
routes |
software | healthy | app/routes |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-hcmo_xgg |
software | healthy | /tmp/repobility-clone-hcmo_xgg |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8765 |
network | healthy | run.py |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | scripts/migrate_theme_type.py |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | app/podcast_import.py |
This page is publicly accessible at:
https://repobility.com/scan/d9cc924b-df82-490e-a134-087154eccf6c/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/d9cc924b-df82-490e-a134-087154eccf6c/
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.