Commit History

chore: bump version to 0.35.0 -- Phase 34 complete
820c26f

abinazebinoy commited on

feat(phase-34): register forensics, self_learning, case_memory routers
70e41ad

abinazebinoy commited on

feat(phase-34): add api/routes/case_memory.py with 3 endpoints
538036c

abinazebinoy commited on

feat(phase-34): add api/routes/self_learning.py with 4 endpoints
5fdaa50

abinazebinoy commited on

feat(phase-34): add api/routes/forensics.py with 5 endpoints
48337b7

abinazebinoy commited on

feat(phase-34): wire BenfordsAnalyzer + GhostCompanyDetector + ShadowDirectorDetector into risk scorer
4ac80cb

abinazebinoy commited on

chore: bump version to 0.34.0 -- Phase 33 complete
1b77cde

abinazebinoy commited on

feat(phase-33): register timeline.router in api/main.py
5457f68

abinazebinoy commited on

feat(phase-33): add api/routes/timeline.py with 2 endpoints
4435778

abinazebinoy commited on

feat(phase-33): add 4 graph analytics endpoints to api/routes/graph.py
5ac9ba3

abinazebinoy commited on

chore: bump version to 0.33.0 -- Phase 32 complete
681bc37

abinazebinoy commited on

feat(phase-32): load AliasGraph at startup + register resolve.router
02e886f

abinazebinoy commited on

feat(phase-32): add AliasGraph import and singleton to api/main.py
d0cb2c0

abinazebinoy commited on

feat(phase-32): register resolve.router in api/main.py
e36916d

abinazebinoy commited on

feat(phase-32): add api/routes/resolve.py with 4 endpoints
d5dc03e

abinazebinoy commited on

fix(M-09): confirm dirname guard in save_json; bump version to 0.32.0
e492711

abinazebinoy commited on

fix(NEW-3): expand _FEED_LABELS from 6 to 14 node types
1a8094a

abinazebinoy commited on

fix(B-01): define _stats_lock -- NameError crashed GET /stats on every call
05ed738

abinazebinoy commited on

fix(BACKEND-2): add threading.Lock for _stats_cache -- prevents concurrent full-graph scans
112882a

abinazebinoy commited on

chore: bump version to 0.31.5 -- Sprint 7 complete (31 commits, 30+ bugs fixed)
fc19538

abinazebinoy commited on

fix(SEARCH-2,SEARCH-3): add datagov/crimereport filter buttons; add Arabic script U+0600-U+06FF to ALLOWED_CHARS for Urdu/Sindhi search
297cc9e

abinazebinoy commited on

fix(SEARCH-1): call setup_schema() in API lifespan startup -- fulltext index created on fresh deployment without waiting for daily scrape
aa36a1a

abinazebinoy commited on

fix(BACKEND-1): move rate limiter eviction AFTER current key pruning -- prevents losing rate-limit tracking on burst-after-idle patterns
9d85e1e

abinazebinoy commited on

fix(LOGIC-1): remove 2 duplicate pressrelease keys in LABEL_QUERIES; fix LIMIT $lim -> $limit to match query runner kwarg
b348d13

abinazebinoy commited on

fix(SEC-6): reject empty-string ADMIN_SECRET -- empty string was falsy and bypassed authentication check
4040e0f

abinazebinoy commited on

fix(CodeQL#16-17): use validated real_out path for FileResponse and media_type check in export.py
673a953

abinazebinoy commited on

fix(CodeQL#23): log exception type only in investigation.py -- full exception message may expose Neo4j URI
7a6c1ee

abinazebinoy commited on

fix(FEED-3): replace deprecated asyncio.get_event_loop() with get_running_loop() in WebSocket handler
c157cb6

abinazebinoy commited on

fix(SyntaxError): remove duplicate stats cache block in api/main.py -- global must precede all use of variable
b20b3a7

abinazebinoy commited on

fix(H-07): add 60s cache for /stats endpoint -- prevents full MATCH(n) scan on every homepage load
5ead1fe

abinazebinoy commited on

fix(M-08): add pressrelease alias in LABEL_QUERIES so frontend filter button works
9b088fe

abinazebinoy commited on

chore: bump version to 0.31.4 -- Sprint 5 complete (36 bugs fixed across 36 commits)
1e8b330

abinazebinoy commited on

fix(H-07): add 60s cache to /stats endpoint -- prevents full graph scan (MATCH (n)) on every homepage load
903be0d

abinazebinoy commited on

fix(M-08): add 'pressrelease' alias key in LABEL_QUERIES -- frontend filter button now correctly filters to PressRelease nodes
2d87a38

abinazebinoy commited on

fix(M-03,M-06,M-08): add mobile CSS overrides for inline grid layouts; add NONE risk level for score=0; clamp risk score to 0-100
b0e0450

abinazebinoy commited on

fix(CodeQL#23): log exception type only, not full message in investigation.py -- prevents Neo4j URI/credentials leaking into logs
370bb36

abinazebinoy commited on

fix(H-08): replace substring audit name match with relationship-based + word-boundary match -- eliminates false positives for common words like 'India', 'National'
48f3ef2

abinazebinoy commited on

fix(H-07,CodeQL#12-17): use file-anchored absolute paths for path traversal guards in dossier_generator and export -- relative realpath() was CWD-dependent
6de77e6

abinazebinoy commited on

fix(H-06): add lockless pre-check in get_driver() -- prevents lock contention serializing all requests under load
45f51d2

abinazebinoy commited on

fix(H-05): rate limiter eviction uses ts[0] (oldest) not ts[-1] (newest) -- prevents sliding window bypass attack
c7c0765

abinazebinoy commited on

fix(H-04): enforce ADMIN_SECRET even when DEBUG_MODE=true -- prevents production DB wipe via accidental debug flag
d39cad8

abinazebinoy commited on

fix(BUG-C3,C-03,M-13): wrap synchronous Neo4j session in run_in_executor inside async WebSocket; fix feed change-detection to compare full ID set not just first scraped_at
a73c56c

abinazebinoy commited on

fix(BUG-17): wire blockchain.audit_chain.store_daily_root() to dossier export -- README SHA-256 claim now accurate
06f5a34

abinazebinoy commited on

fix(NEW-A3 part1): replace em-dashes/smart-quotes in 56+ Python files -- CI requires pure ASCII source
8a0fba4

abinazebinoy commited on

fix(BUG-20): add 30s TTL cache for Neo4j connectivity check -- prevents connection storm on cold start
e427949

abinazebinoy commited on

fix(BUG-15): remove duplicate entity_type param from /search; keep only entity_type_param with alias='type'
e13cf2a

abinazebinoy commited on

fix(BUG-7,NEW-A7): conditionally register /debug/* routes only when DEBUG_MODE=true; bump version to 0.31.3
88ebdc6

abinazebinoy commited on

fix(BUG-6,NEW-A6): add X-Admin-Secret auth on /admin/seed and /admin/pipeline; add threading.Lock for pipeline race condition
e97313c

abinazebinoy commited on

fix(BUG-1): use str(depth_safe) literal in Cypher path pattern -- Neo4j rejects parameters in *min..max
391b602

abinazebinoy commited on

fix(encoding): strip non-ASCII from 4 remaining files
23cf286

abinazebinoy commited on