You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
🔒 Security
Dashboard Auth Hardening: Removed the public dashboard-internal fallback key and localhost trust path from the backend auth layer.
Protected Admin Routes: Added API key protection to dashboard, profile, proxy, and job management endpoints that were previously exposed without auth.
Secret Storage Improvements:
API keys are now stored as hashes instead of plaintext.
Stored proxy and profile passwords are now encrypted at rest.
Dashboard and API responses now redact credential values instead of returning raw secrets.
Server-Side Dashboard Proxy: The dashboard now forwards /api/* requests through a Next.js server route so browser clients no longer send reusable internal keys.
🛠️ Reliability & Behavior
Cloudflare Handling: Website scraping now fails fast with explicit Cloudflare challenge metadata instead of returning challenge pages as successful output.
REST/SSE Output Parity: Aligned html-js behavior between the REST API and streaming endpoint to reduce timing drift on dynamic pages like Shopee.
DOM Stability Waiting: Added a DOM stability wait before HTML extraction and screenshot capture so selector matches do not return partially rendered documents.
Streaming Job Cancellation: Job cancellation now interrupts active scraping work instead of only updating job status in the UI.
PDF Capability Cleanup: Removed unsupported PDF scraping/export paths from the API contract and dashboard UI.
🖥️ Developer Experience
Fresh Install Fixes: Fixed a frontend startup failure caused by an invalid .npmrc encoding and resolved web/API port conflicts during local development.
Docker Fix: Corrected the web Dockerfile path mismatch so Compose builds now target the expected file.
Security Environment Variables: Added and documented required DASHBOARD_INTERNAL_API_KEY and CREDENTIAL_ENCRYPTION_KEY values for secure local and Docker deployments.
Browser Profile Stability: Fixed Firefox preference merging so timezone overrides no longer wipe other stealth-related preferences.
📚 Documentation & UI
Documentation Navigation: Updated dashboard and docs links to point to the introduction page and removed obsolete sidebar references.
Landing Page Messaging: Removed outdated PDF export claims so the marketing copy matches the current product surface.
Changelog Coverage: This release now links the supporting GitHub issues and commit history directly for easier auditability.