Files

4.0 KiB

Changelog

2026-02-26

  • Added scripts/build_2026_tracker_workbook.py to build 2026_Nessus_Remediation_Tracker.xlsx with:
    • Intro sheet copied from OLD_Tracker.xlsx
    • current generated Remediations and Template sheets
    • month sheets (January..December) cloned from Template
    • exclusion of CVETracker, testing, and historical month CVE data
  • Updated 2026 workbook generation to preserve Intro in-place from OLD_Tracker.xlsx (including original sheet outline/formatting fidelity).
  • Set freeze panes to A2 on Template and all month sheets in 2026_Nessus_Remediation_Tracker.xlsx.
  • Added WIKI.md quick usage guide with setup, workbook workflow, key formats, validation, and push/mirror steps.
  • Simplified Remediations status options to exception, exception - permanent, in-progress variants, and resolved.
  • Added Excepted until (date) to Remediations and Template, with overdue-date highlighting (red) when the date has passed.
  • Added First seen to Remediations and Unresolved for to Template (days since first seen when first seen is before today).
  • Fixed Template key lookup to match CVEs even when Remediations CVE cells include extra leading/trailing spaces.
  • Updated key-driven Template formulas to return blank for missing source values (including exception date) instead of displaying Excel zero-date artifacts.
  • Fixed malformed Template Unresolved for formula that caused Excel to remove formula records from sheet2.xml during file recovery.
  • Fixed Template key lookup regression for numeric Plugin ID keys by matching Plugin IDs with numeric-first fallback logic.
  • Added repository policy in AGENTS.md requiring blank output for missing key-driven auto-populated values.
  • Updated scripts/build_tracker_workbook.py default seed rows for the new column layout and status set.
  • Updated README.md workbook column definitions and behavior notes for exception dates and unresolved metrics.

2026-02-24

  • Switched workbook generation to openpyxl in scripts/build_tracker_workbook.py.
  • Kept Remediations and Template structure and matching logic (CVE first, then Plugin ID).
  • Added repository baseline directives in AGENTS.md for git workflow, changelog updates, and workbook validation.
  • Updated README.md with dependency and generation instructions.
  • Updated template formulas so rows stay blank when both CVE and Plugin ID are empty.
  • Updated template formulas so NEW ITEM appears only when an entered CVE/Plugin ID is unmatched.
  • Made Template Name cells hyperlink to the matched Remediations row.
  • Added Severity and Status dropdown validations on Remediations.
  • Added severity/status conditional formatting on both Remediations and Template.
  • Switched Template lookup flow to key-driven input (manual Key in column A).
  • Added key normalization for lookup (CVE:..., PID:..., or raw value).
  • Auto-populated both CVE and Plugin ID in Template when key match is found.
  • Updated auto-populated Template CVE display to show n/a when a matched remediation row has no CVE value.
  • Protected Template sheet so only Key, Hosts, and Owner cells are editable in data rows.
  • Updated template scan note formulas to preserve blanks from Remediations instead of displaying 0.
  • Seeded the generator with the current Remediations entries as default test data.
  • Enabled word wrap for Name/Description/notes columns in Remediations and Name/notes columns in Template.
  • Switched workbook write to atomic temp-file replacement to prevent partially written/corrupt .xlsx outputs.
  • Expanded status options to exception/in-progress variants and removed nofix.
  • Updated status conditional formatting rules to color any exception* as blue, any in progress* as yellow, and resolved as green.
  • Updated README.md dependency requirements and install instructions (apt + pip).
  • Updated AGENTS.md to require dependency documentation updates when module requirements change.