Skip to content

Fix release highlights apostrophe encoding guidance - #71272

Merged
pelikhan merged 1 commit into
mainfrom
pelikhan-cautious-potato
Oct 23, 2026
Merged

pelikhan merged 1 commit into
mainfrom
pelikhan-cautious-potato

Conversation

@pelikhan

Copy link
Copy Markdown
Collaborator

Summary

The v0.93.1 release highlights published Whatu0027s New because the agent closed and reopened shell quotes around a JSON Unicode escape. The release workflow also contradicted the runtime's CLI transport guidance by requiring direct MCP calls.

Align the publishing instructions with the configured safe-output transport, provide a correctly quoted inline JSON example, and explicitly explain the apostrophe-escaping pitfall. Regenerate the workflow lock and add a regression test that executes the documented example against a stub through Bash, then verifies the decoded JSON preserves apostrophes, newlines, and Unicode.

The published v0.93.1 heading was repaired separately; this PR prevents recurrence.

Validation

  • node --test scripts/release-workflows.test.cjs (15 tests passed)
  • make fmt-cjs && make lint-cjs
  • make recompile (346 workflows compiled)
  • make agent-report-progress

No workflow was dispatched.

Align release publishing instructions with the configured safe-output transport and cover the CLI example with a Bash-to-JSON regression test.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@pelikhan
pelikhan marked this pull request as ready for review October 23, 2026 00:30
Copilot AI max review requested due to automatic review settings October 23, 2026 00:30
@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

✅ PR Code Quality Reviewer completed the code quality review.

🔎 Code quality review by PR Code Quality Reviewer

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

✅ Ponytail Reviewer completed successfully!

Ponytail Reviewer

Outcome: reported_no_action

The agent completed and reported no action. A no-op output alone does not verify that all required work was completed or that publication was possible.

Agent messages are omitted from this comment. The category uses structured run status, not interpretation of agent prose.

Generated from Ponytail Reviewer · gpt56 · ~6 AIC · ⌖ ~6 AIC · ⊞ 14.8K · ◷

Generated by Ponytail Reviewer for #71272

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

🧠 Matt Pocock Skills Reviewer has completed the skills-based review. ✅

🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

✅ Design Decision Gate 🏗️ completed the design decision gate check. See the comment below for the result and any generated ADR draft.

Design Decision Gate 🏗️

Outcome: reported_no_action

The agent completed and reported no action. A no-op output alone does not verify that all required work was completed or that publication was possible.

Agent messages are omitted from this comment. The category uses structured run status, not interpretation of agent prose.

Generated from Design Decision Gate 🏗️ · opus55 · ~12 AIC · ⌖ ~33 AIC · ◇ ~16 AIC · ⊞ 1.9K · ◷

🏗️ ADR gate enforced by Design Decision Gate 🏗️

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

✅ Test Quality Sentinel completed test quality analysis.

Test Quality Sentinel

Outcome: reported_no_action

The agent completed and reported no action. A no-op output alone does not verify that all required work was completed or that publication was possible.

Agent messages are omitted from this comment. The category uses structured run status, not interpretation of agent prose.

Generated from Test Quality Sentinel · sonnet50 · ~14 AIC · ⌖ ~16 AIC · ◇ ~7 AIC · ⊞ 12.7K · ◷

🧪 Test quality analysis by Test Quality Sentinel

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: no blocking issues

The documentation now gives a correctly quoted safe-output CLI example, and the regression test verifies that Bash preserves the apostrophe, escaped newlines, and Unicode after JSON decoding. I did not identify an actionable defect in the changed lines. Static review only; no code or tests were executed in this review.

🔎 Code quality review by PR Code Quality Reviewer · copilot · gpt50 · ~3 AIC · ⌖ ~1 AIC · ⊞ 1.6K
Comment /review to run again

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skills-Based Review 🧠

Applied /diagnosing-bugs and /tdd — this is a solid, well-targeted bug fix. Approving.

📋 Key Themes & Highlights

Root cause addressed, not just symptom

The fix doesn't just correct the example text — it adds an explicit explanation of why the bug happens ("Closing and reopening shell quotes around the escape strips its backslash") directly in the agent-facing instructions. This is exactly the kind of causal instrumentation /diagnosing-bugs calls for: future agents reading the doc get the mental model, not just a corrected string.

Regression test executes real behavior, not string matching

scripts/release-workflows.test.cjs doesn't just assert the doc text looks right — it extracts the documented bash example via regex, executes it through a real Bash subprocess with a stubbed safeoutputs function, and asserts the resulting JSON parses correctly with apostrophes, newlines, and emoji preserved. I verified this independently: reproducing the described quote-reopening bug does in fact strip the backslash and produce the broken u0027 text, while the documented form parses correctly. The test is a genuine regression guard, not a tautology.

Verified in a clean checkout

I confirmed node --test scripts/release-workflows.test.cjs passes 15/15 against the actual committed tree (via a detached worktree at the PR's HEAD commit), and that the lock file diff is a pure regeneration of the hash corresponding to the release.md body change — no unrelated drift.

Minor, non-blocking observation

The new test also asserts release.md no longer contains legacy MCP-call phrasing. That's a reasonable belt-and-suspenders check, but it slightly couples the test to incidental wording rather than only to behavior. Not worth blocking on — just flagging for awareness if the doc prose is revised again later.

Positive highlights

  • ✅ Instructions now correctly reflect the actual safe-output CLI transport instead of a nonexistent MCP call syntax
  • ✅ Test exercises the documented example end-to-end through Bash + JSON.parse rather than asserting on prose
  • ✅ Lock file regeneration is scoped and traceable to the doc hash change

🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer · copilot · sonnet50 · ~61 AIC · ⌖ ~15 AIC · ⊞ 10.2K
Comment /matt to run again

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The focused changes preserve existing controls, match runtime guidance, and pass an isolated Bash/JSON round-trip check.

No open issues 🎉

What changed in this PR

Aligns release-highlight publishing instructions with the runtime’s safe-output transport and prevents shell quoting from corrupting apostrophes.

Changes:

  • Replace MCP-only requirements with transport-aware publishing guidance.
  • Provide a correctly quoted JSON example and explain the apostrophe-escaping pitfall.
  • Add a Bash/JSON regression test and refresh generated workflow hashes.
File Description
scripts/​release-workflows.test.cjs Verify the documented command preserves apostrophes, newlines, and Unicode.
.github/​workflows/​release.md Correct transport instructions and explain safe JSON quoting.
.github/​workflows/​release.lock.yml Update generated metadata and admission hashes for the revised instructions.

Review effort: Max

@pelikhan
pelikhan merged commit e85fe46 into main Oct 23, 2026
109 of 121 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants