81 lines
3.6 KiB
YAML
81 lines
3.6 KiB
YAML
# changelog.yaml
|
|
unreleased:
|
|
features: []
|
|
refactors: []
|
|
fixes: []
|
|
|
|
versions:
|
|
- version: "v0.2"
|
|
features:
|
|
- title: "UI Modernization"
|
|
details:
|
|
- "Migrated front-end to Tailwind CSS (compiled) with Flowbite JS components."
|
|
- "New navbar and layout system; better navigation and future expansion."
|
|
- "Docker-based CSS build for reproducible, lightweight builds."
|
|
- title: "Reusable CSS Components"
|
|
details:
|
|
- "Custom utilities: badge, badge-ok, badge-warn, badge-danger, chip, card, etc."
|
|
- "Reduces repetition and enforces consistent look."
|
|
- title: "Roadmap / Changelog (YAML-driven + in-app UI)"
|
|
details:
|
|
- "YAML-backed roadmap, in-app view at `/roadmap`."
|
|
- "Roadmap Filters: q, tag, min_priority, milestone; tag chips; Details modal that renders `details`."
|
|
- "YAML-backed Changelog, in-app view at `/changelog`."
|
|
- title: "Modal sizing & ergonomics"
|
|
details:
|
|
- "Wider modal at larger breakpoints; scrollable body for long content."
|
|
- title: "GeoIP Results Uplift"
|
|
details:
|
|
- "Cloudflare detection via GeoIP ASN; badge on results page."
|
|
- "Country/ASN notes shown beside collapsed IP next to GeoIP results."
|
|
- title: "Text Analysis Pipeline (Rules)"
|
|
details:
|
|
- "`analyse_text()` extracts visible text and evaluates `category: text` rules."
|
|
- "Captures matched phrases into deduped `content_snippet` (len capped via `settings.ui.snippet_preview_len`)."
|
|
- "Results exposed in JSON as `suspicious_text`; UI via `templates/partials/result_text.html`."
|
|
refactors:
|
|
- title: "Template Includes"
|
|
details:
|
|
- "Common UI (headers/footers/layout) extracted into Jinja includes."
|
|
- title: "Roadmap loader simplification"
|
|
details:
|
|
- "Removed cache; returns typed dataclasses and normalizes `details`."
|
|
- title: "Safer JSON in templates"
|
|
details:
|
|
- "Use `|tojson|forceescape` for embedding payloads in data attributes."
|
|
- title: "Rules Engine Regex handling"
|
|
details:
|
|
- "Honor per-rule regex flags; default IGNORECASE for `category: text` if no `i` flag."
|
|
- title: "Engine/Scanner logging"
|
|
details:
|
|
- "Dispatch-time visibility; gated by `settings.app.print_rule_dispatch`."
|
|
- title: "Code cleanup"
|
|
details:
|
|
- "Removed obsolete paths/utilities; removed duplicate `enrich_url` call."
|
|
fixes:
|
|
- title: "Table Rendering"
|
|
details:
|
|
- "Locked column widths; fixed snippet scaling to prevent reflow."
|
|
- title: "Rules Engine State"
|
|
details:
|
|
- "Fix pulling engine from app state; restores proper detections."
|
|
- title: "YAML parsing edge cases"
|
|
details:
|
|
- "Quote scalars containing `:`/`#`; use explicit `null` as needed."
|
|
- title: "/roadmap page stability"
|
|
details:
|
|
- "Return structured objects; fix `AttributeError: 'dict' object has no attribute 'roadmap'`."
|
|
- title: "Modal population"
|
|
details:
|
|
- "Pass `details` through route; DOM-ready + delegation populate reliably."
|
|
- title: "Text indicators not displayed"
|
|
details:
|
|
- "Add text analyzer; align result shape with `result_text` partial."
|
|
|
|
- version: "v0.1"
|
|
notes:
|
|
- "Initial Flask web UI for URL submission and analysis."
|
|
- "Domain & IP enrichment (WHOIS, GeoIP, ASN/ISP)."
|
|
- "First Suspicious Rules Engine for scripts/forms."
|
|
- "Basic Docker setup for sandboxed deployment."
|