Skip to content

docs(policy): cross-reference the six booked KYAML adoption issues - #1026

Merged
hyperpolymath merged 1 commit into
mainfrom
docs/kyaml-adoption-issue-crossrefs
Sep 22, 2026
Merged

hyperpolymath merged 1 commit into
mainfrom
docs/kyaml-adoption-issue-crossrefs

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Follow-up to #1009, which landed 3-practice/YAML-POLICY.adoc.

§5 fixed a six-step dependency order and stated "Each step is a separate issue" — but carried no issue numbers, so a reader of the policy had no way to find them. This adds the mapping and records step 1's result.

What changed

Two additions, both inside 3-practice/YAML-POLICY.adoc:

  1. §5 gains the issue mapping (KYAML step 1/6 — probe whether GitHub Actions parses a KYAML workflow #1020 → KYAML step 6/6 — workflows, only if step 4 rules them in scope #1025) in dependency order.
  2. §8 gains a changelog row recording step 1's discharge.

No rule text is altered. Nothing is mandated that was not mandated before.

Step 1 is discharged — measured, not assumed

§3.3 precondition 1 warned this must be probed because "the parser will surely accept it" is exactly how workflows in this estate die at startup with jobs=0. It was probed, on hyperpolymath/pons-asinorum branch probe/kyaml-parse (ac2c614).

The specific failure mode tested: kubectl -o kyaml emits "on": "push" — it quotes the trigger key, because YAML 1.1 reads bare on as boolean true. Had GitHub looked up the normalised key true, a quoted "on" would be a different key ⇒ no trigger ⇒ jobs=0.

arm syntax run jobs step marker in log
control plain YAML 35794781121 1 PROBE_YAML_ARM_EXECUTED found
subject KYAML, kubectl dialect 35794781018 1 PROBE_KYAML_ARM_EXECUTED found

Both arms were in one commit and are semantically identical (verified by diffing both through yq -o=json -P 'sort_keys(..)', equal after normalising only the arm labels), so any difference would be attributable to syntax alone.

Confounds excluded by construction: pons has no actions.lock and neither arm carries a uses:, so the absent-from-lock startup death could not have produced the result. The plain-YAML control is what makes a non-zero meaningful — a bare jobs=0 would have been unattributable.

Why the log marker rather than the green square: conclusion=success alone proves nothing, since a green run can execute nothing at all. Each arm echoes a unique string, and both were grepped out of the run logs.

What this deliberately does not do

It does not advance the scope question, and the added text says so. §5 step 4 (#1023) requires an owner ruling and explicitly forbids inferring scope from the probe. The probe settles the parser dimension only — actionlint, gh actions-lock's extractor against flow-style mappings, the estate's yq-based gates and reviewability all remain open, and are booked in #1022 and #1025.

Note on how this was edited

The shared standards checkout is currently mid-flight on another actor's branch (secqual/resync-actions-lock-after-dependabot-bump, with staged changes), so this was written through the contents API rather than that worktree — no concurrent actor's work was touched or overridden.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WRvDivYwLSeVCJUrfjic3f

§5 fixed a six-step dependency order and said each step is a separate issue,
but carried no issue numbers, so a reader of the policy could not find them.

Step 1 is discharged: a two-arm same-commit probe on pons-asinorum proved
GitHub Actions parses a KYAML workflow — jobs=1 and an executed-step marker
on BOTH the KYAML arm and its plain-YAML control, with the absent-from-lock
confound excluded by construction (no actions.lock, no uses:). Closed as
standards#1020.

Steps 2-6 are booked as #1021-#1025 in dependency order.

The added text states explicitly that closing step 1 does NOT advance the
scope question: §5 step 4 remains an owner ruling and forbids inferring
scope from the probe.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WRvDivYwLSeVCJUrfjic3f
@coderabbitai

coderabbitai Bot commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

Next included review available in 11 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: b47356bf-740c-4382-88e2-885b46cd914b

📥 Commits

Reviewing files that changed from the base of the PR and between 0f13f51 and 84c1f83.

📒 Files selected for processing (1)
  • 3-practice/YAML-POLICY.adoc

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

Copy link
Copy Markdown

@hyperpolymath
hyperpolymath merged commit 392e84d into main Sep 22, 2026
45 checks passed
@hyperpolymath
hyperpolymath deleted the docs/kyaml-adoption-issue-crossrefs branch September 22, 2026 23:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant