freelance-project-34-market.../python/online
LLM 4c681b6018 [+] CVE backends async, CLI with output formats, status density, ecosystem tracking
1. convert all CVE backends to async (run_in_executor + urllib);
  2. base class provides _fetch_url, _post_json, _head_content_length async helpers;
  3. NVD rate-limit delays use asyncio.sleep;
  4. add --timeout to cve sync via asyncio.wait_for;
  5. add cve CLI as apps/cve/cli.py with cve_cli_t class, routed from cli/main.py;
  6. main.py uses pr34 parse_args stop_at for proper -h passthrough;
  7. add cli_types.py with pydantic models for sync/status/check results;
  8. add cli_render.py with txt/json/yaml output renderers;
  9. add --format txt|json|yaml flag on cve parser;
  10. status shows per-source: entries, last_sync (datetime), fetch_range, density;
  11. density computed from date_published (NVD), CVE ID year (arch_tracker);
  12. cve_db_t schema v2: add cve_osv_ecosystems table;
  13. osv_ecosystems_t fetches from GCS, fixes infinite loop (IsTruncated check);
  14. status shows ecosystem counts: total/supported/unsupported per package_map_t;
  15. sync stores ecosystems in sqlite, status reads from db only;
  16. all print() replaced with logger or stdout render;
  17. arch_tracker sync: clean fetch/parsed/ingested logging, no per-100 spam;
  18. upsert_entries returns cve_upsert_result_t with received/inserted counts;
  19. add cve_date_range_t, cve_upsert_result_t, output_format_t, date_source_t types;
2026-04-17 09:00:00 +00:00
..
fxreader/pr34 [+] CVE backends async, CLI with output formats, status density, ecosystem tracking 2026-04-17 09:00:00 +00:00