docs: migrate DECISIONS.md to house-format ADRs, and retire the review folder (#131)

D001-D021 become ADR 0001-0021 in docs/decisions/, one decision per file.
D017's PESTER_VERSION amendment was a second decision in one entry and becomes
ADR 0022. ADR 0023 records the migration and reverses the lane2-change-plan
ruling that deliberately kept DECISIONS.md until the CI lane work landed.

DECISIONS.md is reduced to a stub with a D-to-ADR redirect table, so the four
released CHANGELOG entries and older issue bodies that cite it degrade to a
redirect rather than a dead reference.

docs/review/ and docs/lane2-change-plan.md are deleted (ADR 0024). Of 91
findings, 83 were resolved and six of the seven still open were already GitHub
issues; F021 was the exception and is now #130.

CLAUDE.md's Key Conventions list gains the two rules it was missing and becomes
the checklist, with the ADRs carrying rationale.
This commit is contained in:
goodolclint-claude[bot]
2026-09-02 14:49:07 +00:00
committed by GitHub
parent c3f051bba5
commit b90791e2bf
38 changed files with 1045 additions and 4517 deletions
@@ -217,7 +217,7 @@ namespace PSProxmoxVE.Core.Services
/// <param name="session">The authenticated PVE session.</param>
/// <param name="hostname">The hostname or IP of an existing cluster node.</param>
/// <param name="fingerprint">The TLS certificate fingerprint of the cluster node.</param>
/// <param name="password">The root password for the cluster node (plain string; cmdlet layer handles SecureString conversion per D002).</param>
/// <param name="password">The root password for the cluster node (plain string; cmdlet layer handles SecureString conversion per ADR 0002).</param>
/// <param name="links">Optional Corosync link addresses.</param>
/// <param name="nodeid">Optional node ID for this node.</param>
/// <param name="votes">Optional number of quorum votes.</param>
@@ -20,7 +20,7 @@ namespace PSProxmoxVE.Core.Utilities
/// qmpstatus=paused for a suspended VM.
/// Locked: the guest config carries a `lock:` property (backup, clone, migrate,
/// snapshot). This is not the /var/lock/qemu-server flock, which PVE does not expose
/// through status/current or any other endpoint — see DECISIONS.md D015 and D020.
/// through status/current or any other endpoint — see docs/decisions/ ADR 0015 and 0020.
/// </returns>
public static (bool StatusMatched, bool Locked) Evaluate(string json, string expectedStatus)
{