@kody-ade/kody-engine 0.3.70-beta.4 → 0.3.70-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin/kody.js CHANGED
@@ -3,7 +3,7 @@
3
3
  // package.json
4
4
  var package_default = {
5
5
  name: "@kody-ade/kody-engine",
6
- version: "0.3.70-beta.4",
6
+ version: "0.3.70-beta.6",
7
7
  description: "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative executable profiles.",
8
8
  license: "MIT",
9
9
  type: "module",
@@ -91,11 +91,23 @@ open_deploy_pr() {
91
91
  if [[ -n "$existing" ]]; then
92
92
  echo " reusing existing deploy PR: ${existing}" >&2
93
93
  pr_url="$existing"
94
+ # Refresh body via REST API instead of `gh pr edit` — gh's edit path
95
+ # uses GraphQL which requires read:org scope on KODY_TOKEN. REST PATCH
96
+ # works with plain `repo` scope.
97
+ local pr_num="${pr_url##*/}"
98
+ local owner="${KODY_CFG_GITHUB_OWNER:-}"
99
+ local repo="${KODY_CFG_GITHUB_REPO:-}"
100
+ if [[ -z "$owner" || -z "$repo" ]]; then
101
+ # Fall back to extracting from the URL if config missing.
102
+ local stripped="${pr_url#https://github.com/}"
103
+ owner="${stripped%%/*}"
104
+ repo=$(echo "$stripped" | cut -d/ -f2)
105
+ fi
94
106
  local edit_err
95
- if ! edit_err=$(printf '%s' "$body" | gh pr edit "$pr_url" --body-file - 2>&1); then
107
+ if ! edit_err=$(gh api --method PATCH "repos/${owner}/${repo}/pulls/${pr_num}" -f body="$body" 2>&1 >/dev/null); then
96
108
  echo "[deploy] WARN: failed to refresh deploy PR body for ${pr_url}: ${edit_err}" >&2
97
109
  else
98
- echo " refreshed deploy PR body" >&2
110
+ echo " refreshed deploy PR body via REST" >&2
99
111
  fi
100
112
  else
101
113
  if ! pr_url=$(printf '%s' "$body" | gh pr create --head "$default_branch" --base "$release_branch" --title "deploy: ${default_branch} → ${release_branch} (v${new_version})" --body-file -); then
@@ -107,12 +107,18 @@ generate_changelog() {
107
107
 
108
108
  format_changelog() {
109
109
  local new_version="$1"
110
- local date_str
110
+ local date_str raw
111
111
  date_str=$(date -u +%Y-%m-%d)
112
- python3 - "$new_version" "$date_str" <<'PY'
113
- import sys, re
114
- new_version, date_str = sys.argv[1], sys.argv[2]
115
- raw = sys.stdin.read()
112
+ # Capture stdin BEFORE invoking python — the python heredoc below
113
+ # redirects sys.stdin to the heredoc text itself, so we can't rely on
114
+ # `sys.stdin.read()` to see the piped `subject||sha` lines. Pass the
115
+ # raw log through an env var instead.
116
+ raw=$(cat)
117
+ RAW_CHANGELOG="$raw" NEW_VER="$new_version" DATE_STR="$date_str" python3 - <<'PY'
118
+ import os, re, sys
119
+ new_version = os.environ["NEW_VER"]
120
+ date_str = os.environ["DATE_STR"]
121
+ raw = os.environ.get("RAW_CHANGELOG", "")
116
122
  buckets = {k: [] for k in ("feat", "fix", "perf", "refactor", "docs", "chore", "other")}
117
123
  for line in raw.splitlines():
118
124
  line = line.strip()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kody-ade/kody-engine",
3
- "version": "0.3.70-beta.4",
3
+ "version": "0.3.70-beta.6",
4
4
  "description": "kody — autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative executable profiles.",
5
5
  "license": "MIT",
6
6
  "type": "module",