artifact_hash.py python
26 lines 702 B
Raw
sha256:8461d44b77376fbf06fa7c3e085d309e3010fd8d5886d63c63e69ce118811ad4 docs: record AFF-b feature-tip SHAs after AFF-b-ISR commit. Human 3 days ago
1 """Parse ``ARTIFACT_SHA256`` from verify script stdout (§K9.5)."""
2
3 from __future__ import annotations
4
5 import re
6
7 _SHA_LINE = re.compile(r"^ARTIFACT_SHA256=([0-9a-fA-F]+)$")
8
9
10 def parse_artifact_sha256(stdout: bytes) -> str | None:
11 """Decode stdout, strip trailing newlines, parse last line for artifact hash."""
12 try:
13 text = stdout.decode("utf-8")
14 except UnicodeDecodeError:
15 return None
16 stripped = text.rstrip("\n\r")
17 if not stripped:
18 return None
19 if "\n" in stripped:
20 line = stripped.rsplit("\n", 1)[-1]
21 else:
22 line = stripped
23 match = _SHA_LINE.match(line)
24 if not match:
25 return None
26 return match.group(1).lower()
File History 1 commit
sha256:8461d44b77376fbf06fa7c3e085d309e3010fd8d5886d63c63e69ce118811ad4 docs: record AFF-b feature-tip SHAs after AFF-b-ISR commit. Human 3 days ago