Four Turkish court integrations - but three depend on an undocumented Python sidecar and a stray ELF binary came along for the ride

furkancevik-debug added routes for Yargitay, Danistay, Emsal, and Anayasa in a single commit. The Anayasa integration talks directly to the court's website; the other three proxy to a localhost Python service that isn't in the repo. There's also a 1.3 MB ELF binary committed to the frontend directory.

searchintegration

The commit adds four requireAuth-gated Express routers (~590 LOC) and wires them into backend/src/index.ts. Three of them - Yargitay, Danistay, and Emsal - forward request bodies to http://127.0.0.1:3002, a Python sidecar that does not appear anywhere in the repository. The Anayasa router posts form-encoded requests directly to normkararlarbilgibankasi.anayasa.gov.tr using spoofed browser headers and parses the HTML response. A single built-in workflow is added for Yargitay case search, with a Turkish-language prompt.

The routers pass through payloads without input validation, schema typing, rate limiting, or caching. Error paths log to console.error and return 502 with minimal detail. The Python API base URL is hardcoded as http://127.0.0.1:3002 in each file.

Two problems in the same commit worth flagging before any cherry-pick. frontend/let is a 1.3 MB Linux ELF binary committed with mode 100755 - almost certainly a stray file from the developer's machine (the commit author is root@vmi3046840.contaboserver.net, indicating server-side edits). Separately, backend/src/routes/projects.ts picks up unrelated debug instrumentation: try/catch wraps and console.error calls that log userId and userEmail. That's PII in production logs.

So what Skip this as a direct import. The Anayasa scraper is the only self-contained piece; the other three integrations are shells without their Python backend. If you're building Turkish court integrations from scratch, the Anayasa route gives a concrete example of form-POST scraping against that court's search API - but you'd want to rewrite it with proper input validation and an env-driven base URL. Remove the ELF binary before touching any of this.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

1 commit from furkancevik-debug/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
c2dfbe7f feat: Yargitay API integration and builtin workflows root 2026-05-07 ↗ GitHub
- Added Yargitay search route
- Added builtin-yargitay-search workflow
- Updated projects route

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-178.md from inside the repo you want the changes in.

⬇ Download capture-thread-178.md