chore(aosguard): move the pin to specgen and umbra v0.175.0 #1320

Merged
coilyco-ops merged 4 commits from aos/1105-pin-specgen-0172 into main 2026-08-27 04:57:29 +00:00
Owner

Follows #1316, which pinned v0.173.0. Prerequisite for #1318 / #1105.

Why another bump

#1316 landed while two more umbra fixes were still in flight. Both are needed by #1105's issue create shadow, and the guardfile is incorrect at runtime without them even though it parses under v0.173.0:

  • umbra#326 (v0.174.0) - an action arg bound to an input the caller omitted no longer fails the whole call. Without it, issue create without --milestone dies with $milestone is not set (an optional input that was not supplied), because the shadow binds the leaf's optional fields.
  • umbra#328 (v0.175.0) - a scalar arg takes the type its body field declares. Without it --milestone 16 sends the JSON string "16" to an int64 field, which is the silently-ignored wrong type agentic-os#1047 is about.

v0.173.0 is enough to parse the guardfile, which is why #1316 was green. It is not enough to run it correctly.

Why both files move together

test_specgen_pin_is_owned_by_the_dependency_lock asserts the Dockerfile's ARG SPECGEN_VERSION equals the lock's cliGuard.

Scope

No behaviour change here. The guardfiles are untouched; #1318 carries the shadow. The lock was regenerated with just aosguard-lock using the released specgen 0.175.0 from the tap, not a local build.

Follows #1316, which pinned v0.173.0. Prerequisite for #1318 / #1105. ## Why another bump #1316 landed while two more umbra fixes were still in flight. Both are needed by #1105's `issue create` shadow, and the guardfile is **incorrect at runtime** without them even though it parses under v0.173.0: * **umbra#326** (v0.174.0) - an action arg bound to an input the caller omitted no longer fails the whole call. Without it, `issue create` without `--milestone` dies with `$milestone is not set (an optional input that was not supplied)`, because the shadow binds the leaf's optional fields. * **umbra#328** (v0.175.0) - a scalar arg takes the type its body field declares. Without it `--milestone 16` sends the JSON string `"16"` to an `int64` field, which is the silently-ignored wrong type `agentic-os#1047` is about. v0.173.0 is enough to *parse* the guardfile, which is why #1316 was green. It is not enough to run it correctly. ## Why both files move together `test_specgen_pin_is_owned_by_the_dependency_lock` asserts the Dockerfile's `ARG SPECGEN_VERSION` equals the lock's `cliGuard`. ## Scope No behaviour change here. The guardfiles are untouched; #1318 carries the shadow. The lock was regenerated with `just aosguard-lock` using the released specgen 0.175.0 from the tap, not a local build.
chore(aosguard): pin specgen and umbra to v0.172.0
All checks were successful
ci / aos-eval-tests (pull_request) Successful in 8s
ci / ward-doctor (pull_request) Successful in 9s
ci / aos-cli-tests (pull_request) Successful in 32s
ci / gate (pull_request) Successful in 1m0s
dev-base-pr / build (pull_request) Successful in 7m34s
8ffba425cf
Prerequisite for #1105, split out so it can land on its own.

#1105 needs `matches` on an action input, which umbra v0.172.0 ships
(umbra#322). The guardfile that uses it cannot build until the CI image carries
a specgen that can parse it: `scripts/ci/repo-test-gate.sh` only bootstraps the
pinned specgen when none is on PATH, and the `:release` image bakes one in at
`ARG SPECGEN_VERSION`. So the pin has to land and republish the image before the
guardfile change can go green.

Both halves of the pin move together because
`test_specgen_pin_is_owned_by_the_dependency_lock` asserts the Dockerfile ARG
equals the lock's `cliGuard`.

No behaviour change: the guardfiles are untouched, so this is the dependency
bump alone.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Agent-Role: platform
chore(aosguard): move the pin to specgen and umbra v0.173.0
All checks were successful
ci / ward-doctor (pull_request) Successful in 7s
ci / aos-eval-tests (pull_request) Successful in 7s
ci / aos-cli-tests (pull_request) Successful in 26s
ci / gate (pull_request) Successful in 48s
dev-base-pr / build (pull_request) Successful in 4m59s
502e367bce
umbra#324 landed after this branch was opened, making a `matches` constraint
carry alternative globs. #1105's guardfile needs that form, so the pin moves to
v0.173.0 rather than republishing the dev-base image twice.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Agent-Role: platform
chore(aosguard): move the pin to specgen and umbra v0.175.0
All checks were successful
ci / aos-eval-tests (pull_request) Successful in 9s
ci / ward-doctor (pull_request) Successful in 13s
ci / aos-cli-tests (pull_request) Successful in 37s
ci / gate (pull_request) Successful in 1m16s
dev-base-pr / build (pull_request) Successful in 2m49s
dea7d2f642
umbra#326 and #328 landed after the last bump: an omitted optional action arg is
now dropped rather than failing the call, and a scalar arg takes the type its
body field declares. #1105's shadow needs both to carry the leaf's optional
fields correctly, so the pin moves once more rather than republishing the
dev-base image a third time.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Agent-Role: platform
merge main into the specgen pin branch
All checks were successful
ci / ward-doctor (pull_request) Successful in 11s
ci / aos-eval-tests (pull_request) Successful in 13s
ci / aos-cli-tests (pull_request) Successful in 48s
dev-base-pr / build (pull_request) Successful in 1m13s
ci / gate (pull_request) Successful in 1m12s
a0f73521cc
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Agent-Role: platform

# Conflicts:
#	.specgen/guardfiles/specverb.lock
#	docker/dev-base/full/Dockerfile
coilyco-ops deleted branch aos/1105-pin-specgen-0172 2026-08-27 04:57:29 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/agentic-os!1320
No description provided.