@automagik/genie 3.260309.1 → 3.260310.1

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.
@@ -19,34 +19,37 @@ jobs:
19
19
  with:
20
20
  fetch-depth: 0
21
21
 
22
- - name: Read version from package.json
23
- id: pkg
24
- run: |
25
- VERSION=$(jq -r '.version' package.json)
26
- echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
27
- echo "Version from package.json: ${VERSION}"
28
-
29
- - name: Check if release already exists
30
- id: exists
22
+ - name: Resolve version
23
+ id: ver
31
24
  env:
32
25
  GH_TOKEN: ${{ github.token }}
33
26
  run: |
34
- TAG="v${{ steps.pkg.outputs.version }}"
27
+ BASE=$(jq -r '.version' package.json)
28
+ TAG="v${BASE}"
35
29
 
36
30
  if gh release view "${TAG}" > /dev/null 2>&1; then
37
- echo "Release ${TAG} already exists — skipping."
38
- echo "skip=true" >> "$GITHUB_OUTPUT"
31
+ echo "Release ${TAG} already exists — deriving hotfix version."
32
+ TODAY=$(date -u +%y%m%d)
33
+ EXISTING=$(gh release list --limit 100 --json tagName \
34
+ -q "[.[].tagName | select(startswith(\"v3.${TODAY}.\"))] | length")
35
+ BUILD=$((EXISTING + 1))
36
+ VERSION="3.${TODAY}.${BUILD}"
37
+ echo "Hotfix version: v${VERSION}"
38
+ echo "hotfix=true" >> "$GITHUB_OUTPUT"
39
39
  else
40
- echo "skip=false" >> "$GITHUB_OUTPUT"
40
+ VERSION="${BASE}"
41
+ echo "hotfix=false" >> "$GITHUB_OUTPUT"
41
42
  fi
42
43
 
44
+ echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
45
+ echo "tag=v${VERSION}" >> "$GITHUB_OUTPUT"
46
+
43
47
  - name: Find previous release tag
44
48
  id: prev
45
- if: steps.exists.outputs.skip != 'true'
46
49
  env:
47
50
  GH_TOKEN: ${{ github.token }}
48
51
  run: |
49
- TAG="v${{ steps.pkg.outputs.version }}"
52
+ TAG="${{ steps.ver.outputs.tag }}"
50
53
  PREV=$(gh release list --limit 50 --json tagName -q '.[].tagName' | grep -v "^${TAG}$" | head -1)
51
54
  # Verify the tag is reachable from HEAD (same history line)
52
55
  if [ -n "$PREV" ] && git merge-base --is-ancestor "$PREV" HEAD 2>/dev/null; then
@@ -60,7 +63,7 @@ jobs:
60
63
  - name: Generate changelog
61
64
  uses: orhun/git-cliff-action@v4
62
65
  id: cliff
63
- if: steps.exists.outputs.skip != 'true' && steps.prev.outputs.tag != ''
66
+ if: steps.prev.outputs.tag != ''
64
67
  with:
65
68
  config: cliff.toml
66
69
  args: ${{ format('{0}..HEAD', steps.prev.outputs.tag) }}
@@ -68,12 +71,11 @@ jobs:
68
71
  GITHUB_REPO: ${{ github.repository }}
69
72
 
70
73
  - name: Create release
71
- if: steps.exists.outputs.skip != 'true'
72
74
  env:
73
75
  GH_TOKEN: ${{ github.token }}
74
76
  RELEASE_NOTES: ${{ steps.cliff.outputs.content }}
75
77
  run: |
76
- TAG="v${{ steps.pkg.outputs.version }}"
78
+ TAG="${{ steps.ver.outputs.tag }}"
77
79
  if [ -z "$RELEASE_NOTES" ]; then
78
80
  RELEASE_NOTES="Initial release of genie v3 CLI."
79
81
  fi
@@ -84,21 +86,25 @@ jobs:
84
86
  --notes-file /tmp/release-notes.md
85
87
 
86
88
  - name: Setup Bun
87
- if: steps.exists.outputs.skip != 'true'
88
89
  uses: oven-sh/setup-bun@v2
89
90
  with:
90
91
  bun-version: latest
91
92
 
92
93
  - name: Install dependencies
93
- if: steps.exists.outputs.skip != 'true'
94
94
  run: bun install --frozen-lockfile
95
95
 
96
+ - name: Patch version for hotfix
97
+ if: steps.ver.outputs.hotfix == 'true'
98
+ run: |
99
+ VERSION="${{ steps.ver.outputs.version }}"
100
+ jq --arg v "$VERSION" '.version = $v' package.json > package.json.tmp
101
+ mv package.json.tmp package.json
102
+ echo "Patched package.json to ${VERSION}"
103
+
96
104
  - name: Build CLI
97
- if: steps.exists.outputs.skip != 'true'
98
105
  run: bun run build
99
106
 
100
107
  - name: Publish to npm
101
- if: steps.exists.outputs.skip != 'true'
102
108
  env:
103
109
  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
104
110
  NPM_CONFIG_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -1,7 +1,9 @@
1
1
 
2
2
 
3
- ### 🚀 Features
4
- - **core:** genie agent system pane colors, hook dispatch, identity inject & onboarding (v3.260309.1) (#520) ([`82c9c35`](https://github.com/automagik-dev/genie/commit/82c9c35ba0d169ed2039d3e55b7937ff16a35f93))
3
+ ### 🐛 Bug Fixes
4
+ - **ci:** auto-derive hotfix version when release already exists (#522) ([`afbae1b`](https://github.com/automagik-dev/genie/commit/afbae1b8753cbafbbaae210c6bc97ee074213af3))
5
+ - **core:** remove invalid string-path fields from plugin manifest (#521) ([`151e3f3`](https://github.com/automagik-dev/genie/commit/151e3f31f5a29fe45e65bba6333b2a23c302f7d1))
5
6
 
6
7
  ### 👥 Contributors
7
8
  - [@namastex888](https://github.com/namastex888)
9
+ - Rodrigo Nader
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@automagik/genie",
3
- "version": "3.260309.1",
3
+ "version": "3.260310.1",
4
4
  "description": "Collaborative terminal toolkit for human + AI workflows",
5
5
  "type": "module",
6
6
  "bin": {
@@ -46,10 +46,14 @@
46
46
  "url": "git+https://github.com/automagik-dev/genie.git"
47
47
  },
48
48
  "openclaw": {
49
- "extensions": ["./plugins/genie/index.ts"]
49
+ "extensions": [
50
+ "./plugins/genie/index.ts"
51
+ ]
50
52
  },
51
53
  "publishConfig": {
52
54
  "access": "public"
53
55
  },
54
- "trustedDependencies": ["@biomejs/biome"]
56
+ "trustedDependencies": [
57
+ "@biomejs/biome"
58
+ ]
55
59
  }