Skip to content

feat: improve graph visualization, crawl validation, and URL normalization#32

Merged
ChefControl merged 3 commits into
masterfrom
frontend-ui-ux
Feb 22, 2026
Merged

feat: improve graph visualization, crawl validation, and URL normalization#32
ChefControl merged 3 commits into
masterfrom
frontend-ui-ux

Conversation

@ChefControl
Copy link
Copy Markdown
Collaborator

@ChefControl ChefControl commented Feb 22, 2026

Summary

  • GraphView rewrite — Responsive SVG with zoom/pan controls, centered layout, and status-colored nodes replacing the previous basic implementation
  • Crawl validation — Depth validation (1-5 range), URL deduplication scoped by crawl_id to prevent cross-crawl collisions
  • Targeted crawling — New toggle in NewCrawl form for domain-scoped crawling (only follow links within the seed domain)
  • Stale job reclamation — Feeder atomically reclaims stuck IN-PROGRESS jobs that exceed a configurable timeout
  • URL normalization — New comprehensive url_normalize module with tests for consistent URL canonicalization
  • Docs — Added project vision doc, updated API reference with cancelled status filter and crawl depth validation

Test plan

  • cargo check --workspace && cargo clippy --workspace -- -D warnings && cargo test --workspace
  • cd frontend && npm ci && npm run lint && npm run type-check && npm run build
  • Verify graph visualization renders with zoom/pan on crawl detail page
  • Create a crawl with depth outside 1-5 range — should be rejected
  • Test targeted crawl toggle limits discovered URLs to seed domain
  • Kill a feeder pod mid-crawl, verify another pod reclaims the stale job

🤖 Generated with Claude Code

…n, and docs

- GraphView: rewrite with responsive SVG, zoom/pan, centered layout, status-colored nodes
- Crawl depth validation (1-5), URL dedup scoped by crawl_id
- Feeder: stale job reclamation for stuck IN-PROGRESS jobs
- NewCrawl: add targeted crawl toggle (domain-scoped crawling)
- URL normalization module with comprehensive tests
- Add project vision doc, update API reference docs
- Add CLAUDE.md project instructions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ChefControl ChefControl changed the title feat: add React frontend, REST API, and project documentation feat: improve graph visualization, crawl validation, and URL normalization Feb 22, 2026
ChefControl and others added 2 commits February 22, 2026 19:31
- Fix double status update on 4xx: check permanent failure before
  retry-vs-fail branch instead of overwriting PENDING after
- Normalize extracted URLs once into a HashMap, reuse for targeted
  filtering and dedup instead of normalizing twice
- Move `use psl::Psl` to top of url_normalize.rs
- Remove extra blank line in url_normalize tests
- Replace nested ternary with lookup object in GraphView
- Add .claude/ to .gitignore and untrack .claude/settings.json

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ChefControl ChefControl merged commit fa6c327 into master Feb 22, 2026
1 check passed
@ChefControl ChefControl deleted the frontend-ui-ux branch February 22, 2026 17:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant