fix: address PR #69 review feedback

- VmService.ExecuteGuestCommand: guard against null elements in -Args.
  The old JSON-serialization tolerated nulls (as "null"); the repeated-key
  path would NRE in EncodeFormValue. Throw a clear ArgumentException instead.
- findings.json: refresh the stale counters block (untouched since F085) to
  the actual ledger state — next_id 92, resolved 83 — and bump last_updated
  to 2026-05-22. last_scan_date stays 2026-03-26 (F086–F091 came from issue
  triage, not a formal review scan).
- VmServiceTests: add empty-array (single command entry) and null-element
  (throws) cases.

Note: F091 is the correct next ID — F086–F090 already exist from prior
merged PRs (#60/#61/#66/#67); only the counters were lagging.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Clint Branham
2026-05-22 14:38:54 -05:00
parent bc71ed4a12
commit 56dcf22cea
3 changed files with 40 additions and 4 deletions
+4 -4
View File
@@ -1,15 +1,15 @@
{
"_schema_version": "1.0",
"_description": "PSProxmoxVE stable findings ledger. IDs are permanent (F001, F002...). Resolved findings are never deleted — they are marked resolved with evidence. If a finding reappears, it is marked regressed and retains its original ID.",
"last_updated": "2026-03-26",
"last_updated": "2026-05-22",
"last_scan_date": "2026-03-26",
"counters": {
"next_id": 86,
"next_id": 92,
"total_open": 7,
"total_resolved": 77,
"total_resolved": 83,
"total_regressed": 0,
"open": 7,
"resolved": 77,
"resolved": 83,
"regressed": 0,
"wont_fix": 1
},