FashionCrawler

repo: ~/Projects/FashionCrawler · 6 commits · 0 in last 24h, 0 in last 7d ·

Search the build

6 commits indexed

  1. 387f956 2026-05-20 FashionCrawler: realpath containment on do_GET .css path (Tier 3 #18)
  2. 98e65c4 2026-05-18 Avoid re-raising caught exception via future.result() inside error logger
  3. 17d6b96 2026-05-18 Guard main loop against unknown enabled sites instead of crashing on None unpack
  4. 384f264 2026-05-18 Fix base extractor stub to build DataFrame from extracted data; skip None frames in YAML output
  5. 33c7bc4 2026-05-18 Fix Depop image-link column: check get_image_links attr, not nonexistent html
  6. d82ddf3 2026-05-06 initial scaffold (gitify-all 2026-05-06)

Authors

Agents used

  • none detected

Skills used

  • /something1

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

387f956 · 2026-05-20 · FashionCrawler: realpath containment on do_GET .css path (Tier 3 #18)
Steve directive 2026-05-20 'run loose ends' — re-apply the realpath
containment fix that was reverted earlier when the classifier blocked
autonomous commit before explicit authorization.

MyHandler.do_GET served any .css path via template_path + '/' + self.path[1:]
with no sanitization, so /../../../etc/something.css could escape the
template root. Localhost-only dev server, low real risk, but added the
containment check anyway:

  base = realpath(template_path)
  requested = realpath(join(template_path, self.path.lstrip('/')))
  reject if requested != base AND not requested.startswith(base+sep)

404s on anything escaping the template root. Cheap, matches the principle
in similar handlers across the stack.

File tree

31 files tracked. Click any to browse the source at HEAD.

Other build journals

← Designer Wallcoverings  ·  all 4 projects  ·  Fentucci →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 0ms