From c4ef14383d94eff6817fab6a3d6cb719494c04a9 Mon Sep 17 00:00:00 2001 From: CodeGhost21 <164498022+CodeGhost21@users.noreply.github.com> Date: Sat, 18 Apr 2026 01:19:37 +0530 Subject: [PATCH] fix(ci): unblock release-packages workflow YAML parse (#639) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The `actions/github-script` block for the backlog-issue step used a JS template literal whose markdown body lines sat at column 1, outside the `script: |` literal block. YAML treated those lines as new mapping keys and rejected the whole file — every run of release-packages.yml failed at load time with zero jobs executed, so the brew tap, apt repo, npm publish, linux-arm64 CLI, and smoke tests never ran for recent releases. - Rewrite the issue body as a string array joined with `\n`, so every line lives inside the block scalar at the correct indentation. - Fix stray backslash-escapes around the final `core.info(...)` template literal that were JS-invalid even before YAML choked on the body. Validated locally with PyYAML; file now parses cleanly. --- .github/workflows/release-packages.yml | 56 +++++++++++++------------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/.github/workflows/release-packages.yml b/.github/workflows/release-packages.yml index ec99590fc..e4f97f5b8 100644 --- a/.github/workflows/release-packages.yml +++ b/.github/workflows/release-packages.yml @@ -293,36 +293,38 @@ jobs: }); } catch (_) { /* label may already exist */ } - const body = `## Summary - -Track remaining package manager channels. Each tier reflects expected maintenance commitment from the core team. - -## Tier 1 — Official (core team maintains) - -- [ ] **npx / pnpm dlx** — zero-install via the npm package already published; document the one-liner: \`npx openhuman@latest\` -- [ ] **Scoop (Windows)** — needs a Windows binary (un-comment the Windows matrix in \`release.yml\` first); add a \`tinyhumansai/scoop-openhuman\` bucket - -## Tier 2 — Community-supported (PRs welcome, core team reviews) - -- [ ] **AUR (Arch Linux)** — add \`PKGBUILD\` pointing at the GitHub release tarball; list in \`packages/\` -- [ ] **Nix / nixpkgs** — upstream a \`pkgs/tools/openhuman/default.nix\` derivation; document local flake overlay as interim - -## Tier 3 — Planned (no timeline) - -- [ ] **Snap / Snapcraft** — \`snapcraft.yaml\`, publish to Snap Store -- [ ] **Flatpak** — \`org.tinyhumans.Openhuman.yaml\`, publish to Flathub -- [ ] **WinGet** — manifest in \`microsoft/winget-pkgs\` once Windows binary is stable - -## Acceptance criteria - -- [ ] Each official channel has a CI smoke test (install + \`openhuman --version\`) -- [ ] Install commands appear in \`docs/install.md\` -- [ ] Checksums shipped for all artifacts -`; + const body = [ + '## Summary', + '', + 'Track remaining package manager channels. Each tier reflects expected maintenance commitment from the core team.', + '', + '## Tier 1 — Official (core team maintains)', + '', + '- [ ] **npx / pnpm dlx** — zero-install via the npm package already published; document the one-liner: `npx openhuman@latest`', + '- [ ] **Scoop (Windows)** — needs a Windows binary (un-comment the Windows matrix in `release.yml` first); add a `tinyhumansai/scoop-openhuman` bucket', + '', + '## Tier 2 — Community-supported (PRs welcome, core team reviews)', + '', + '- [ ] **AUR (Arch Linux)** — add `PKGBUILD` pointing at the GitHub release tarball; list in `packages/`', + '- [ ] **Nix / nixpkgs** — upstream a `pkgs/tools/openhuman/default.nix` derivation; document local flake overlay as interim', + '', + '## Tier 3 — Planned (no timeline)', + '', + '- [ ] **Snap / Snapcraft** — `snapcraft.yaml`, publish to Snap Store', + '- [ ] **Flatpak** — `org.tinyhumans.Openhuman.yaml`, publish to Flathub', + '- [ ] **WinGet** — manifest in `microsoft/winget-pkgs` once Windows binary is stable', + '', + '## Acceptance criteria', + '', + '- [ ] Each official channel has a CI smoke test (install + `openhuman --version`)', + '- [ ] Install commands appear in `docs/install.md`', + '- [ ] Checksums shipped for all artifacts', + '', + ].join('\n'); const issue = await github.rest.issues.create({ owner, repo, title, body, labels: [label], }); - core.info(\`Created backlog issue: \${issue.data.html_url}\`); + core.info(`Created backlog issue: ${issue.data.html_url}`);