ids.py python
12 lines 309 B
Raw
sha256:a78e7e5a8740e03315f325d19edeb3aa1b306b3337d04abbaa9a9e0f3bbeb7a1 docs: MuseHub-first before ISR #74 — staging solidify NEXT Human 1 day ago
1 """Step and template id validation (§K9.3)."""
2
3 from __future__ import annotations
4
5 import re
6
7 STEP_ID_PATTERN = re.compile(r"^[a-z][a-z0-9_-]{0,63}$")
8
9
10 def is_valid_step_id(value: str) -> bool:
11 """Return True when ``value`` matches the frozen id regex."""
12 return bool(STEP_ID_PATTERN.match(value))
File History 2 commits
sha256:a78e7e5a8740e03315f325d19edeb3aa1b306b3337d04abbaa9a9e0f3bbeb7a1 docs: MuseHub-first before ISR #74 — staging solidify NEXT Human 1 day ago
sha256:4671b7f787ddbe63ced31c895b688c77ab495653b65a730b423329f26b3c1439 feat: K1-P1 complete — agent provenance, build-verification… Sonnet 4.6 patch 53 days ago