aiox-core 5.0.0 → 5.0.2
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/.aiox-core/data/entity-registry.yaml +5297 -1814
- package/.aiox-core/data/registry-update-log.jsonl +2 -0
- package/.aiox-core/development/templates/service-template/README.md.hbs +158 -158
- package/.aiox-core/development/templates/service-template/__tests__/index.test.ts.hbs +237 -237
- package/.aiox-core/development/templates/service-template/client.ts.hbs +403 -403
- package/.aiox-core/development/templates/service-template/errors.ts.hbs +182 -182
- package/.aiox-core/development/templates/service-template/index.ts.hbs +120 -120
- package/.aiox-core/development/templates/service-template/package.json.hbs +87 -87
- package/.aiox-core/development/templates/service-template/types.ts.hbs +145 -145
- package/.aiox-core/development/templates/squad-template/LICENSE +21 -21
- package/.aiox-core/infrastructure/scripts/tool-resolver.js +4 -4
- package/.aiox-core/infrastructure/templates/aiox-sync.yaml.template +182 -182
- package/.aiox-core/infrastructure/templates/coderabbit.yaml.template +279 -279
- package/.aiox-core/infrastructure/templates/github-workflows/ci.yml.template +169 -169
- package/.aiox-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -330
- package/.aiox-core/infrastructure/templates/github-workflows/release.yml.template +196 -196
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-aiox-base.tmpl +63 -63
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -18
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -85
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -145
- package/.aiox-core/install-manifest.yaml +58 -58
- package/.aiox-core/local-config.yaml.template +71 -71
- package/.aiox-core/monitor/hooks/lib/__init__.py +1 -1
- package/.aiox-core/monitor/hooks/lib/enrich.py +58 -58
- package/.aiox-core/monitor/hooks/lib/send_event.py +47 -47
- package/.aiox-core/monitor/hooks/notification.py +29 -29
- package/.aiox-core/monitor/hooks/post_tool_use.py +45 -45
- package/.aiox-core/monitor/hooks/pre_compact.py +29 -29
- package/.aiox-core/monitor/hooks/pre_tool_use.py +40 -40
- package/.aiox-core/monitor/hooks/stop.py +29 -29
- package/.aiox-core/monitor/hooks/subagent_stop.py +29 -29
- package/.aiox-core/monitor/hooks/user_prompt_submit.py +38 -38
- package/.aiox-core/product/templates/adr.hbs +125 -125
- package/.aiox-core/product/templates/dbdr.hbs +241 -241
- package/.aiox-core/product/templates/engine/elicitation.js +2 -3
- package/.aiox-core/product/templates/epic.hbs +212 -212
- package/.aiox-core/product/templates/pmdr.hbs +186 -186
- package/.aiox-core/product/templates/prd-v2.0.hbs +216 -216
- package/.aiox-core/product/templates/prd.hbs +201 -201
- package/.aiox-core/product/templates/story.hbs +263 -263
- package/.aiox-core/product/templates/task.hbs +170 -170
- package/.aiox-core/product/templates/tmpl-comment-on-examples.sql +158 -158
- package/.aiox-core/product/templates/tmpl-migration-script.sql +91 -91
- package/.aiox-core/product/templates/tmpl-rls-granular-policies.sql +104 -104
- package/.aiox-core/product/templates/tmpl-rls-kiss-policy.sql +10 -10
- package/.aiox-core/product/templates/tmpl-rls-roles.sql +135 -135
- package/.aiox-core/product/templates/tmpl-rls-simple.sql +77 -77
- package/.aiox-core/product/templates/tmpl-rls-tenant.sql +152 -152
- package/.aiox-core/product/templates/tmpl-rollback-script.sql +77 -77
- package/.aiox-core/product/templates/tmpl-seed-data.sql +140 -140
- package/.aiox-core/product/templates/tmpl-smoke-test.sql +16 -16
- package/.aiox-core/product/templates/tmpl-staging-copy-merge.sql +139 -139
- package/.aiox-core/product/templates/tmpl-stored-proc.sql +140 -140
- package/.aiox-core/product/templates/tmpl-trigger.sql +152 -152
- package/.aiox-core/product/templates/tmpl-view-materialized.sql +133 -133
- package/.aiox-core/product/templates/tmpl-view.sql +177 -177
- package/.aiox-core/scripts/pm.sh +0 -0
- package/.claude/hooks/code-intel-pretool.cjs +107 -0
- package/.claude/hooks/enforce-architecture-first.py +196 -196
- package/.claude/hooks/mind-clone-governance.py +192 -192
- package/.claude/hooks/read-protection.py +151 -151
- package/.claude/hooks/slug-validation.py +176 -176
- package/.claude/hooks/sql-governance.py +182 -182
- package/.claude/hooks/write-path-validation.py +194 -194
- package/LICENSE +33 -33
- package/bin/aiox-graph.js +0 -0
- package/bin/aiox-minimal.js +0 -0
- package/bin/aiox.js +0 -0
- package/docs/guides/aios-workflows/README.md +247 -0
- package/docs/guides/aios-workflows/bob-orchestrator-workflow.md +1536 -0
- package/package.json +1 -1
- package/packages/aiox-install/bin/aiox-install.js +0 -0
- package/packages/aiox-install/bin/edmcp.js +0 -0
- package/packages/aiox-pro-cli/bin/aiox-pro.js +0 -0
- package/packages/installer/src/wizard/pro-setup.js +210 -123
- package/pro/README.md +66 -0
- package/pro/license/degradation.js +220 -0
- package/pro/license/errors.js +450 -0
- package/pro/license/feature-gate.js +354 -0
- package/pro/license/index.js +181 -0
- package/pro/license/license-api.js +679 -0
- package/pro/license/license-cache.js +523 -0
- package/pro/license/license-crypto.js +303 -0
- package/scripts/check-markdown-links.py +352 -352
- package/scripts/dashboard-parallel-dev.sh +0 -0
- package/scripts/dashboard-parallel-phase3.sh +0 -0
- package/scripts/dashboard-parallel-phase4.sh +0 -0
- package/scripts/glue/README.md +355 -0
- package/scripts/glue/compose-agent-prompt.cjs +362 -0
- package/scripts/install-monitor-hooks.sh +0 -0
- package/.aiox-core/lib/build.json +0 -1
|
@@ -1,196 +1,196 @@
|
|
|
1
|
-
# =============================================================================
|
|
2
|
-
# AIOX Release Automation Template
|
|
3
|
-
# =============================================================================
|
|
4
|
-
# Template for user projects created with AIOX-FULLSTACK
|
|
5
|
-
# Generated by: *setup-github task (Story 5.10)
|
|
6
|
-
#
|
|
7
|
-
# Features:
|
|
8
|
-
# - Triggered on version tags (v*)
|
|
9
|
-
# - Automatic changelog generation
|
|
10
|
-
# - GitHub Release creation
|
|
11
|
-
# - Optional NPM publishing
|
|
12
|
-
# =============================================================================
|
|
13
|
-
|
|
14
|
-
name: Release
|
|
15
|
-
|
|
16
|
-
on:
|
|
17
|
-
push:
|
|
18
|
-
tags:
|
|
19
|
-
- 'v*'
|
|
20
|
-
workflow_dispatch:
|
|
21
|
-
inputs:
|
|
22
|
-
tag:
|
|
23
|
-
description: 'Release tag (e.g., v1.0.0)'
|
|
24
|
-
required: true
|
|
25
|
-
default: 'v1.0.0'
|
|
26
|
-
|
|
27
|
-
env:
|
|
28
|
-
NODE_VERSION: '{{NODE_VERSION}}'
|
|
29
|
-
|
|
30
|
-
jobs:
|
|
31
|
-
# ===========================================================================
|
|
32
|
-
# VALIDATION - Ensure code quality before release
|
|
33
|
-
# ===========================================================================
|
|
34
|
-
validate:
|
|
35
|
-
name: Validate
|
|
36
|
-
runs-on: ubuntu-latest
|
|
37
|
-
steps:
|
|
38
|
-
- name: Checkout code
|
|
39
|
-
uses: actions/checkout@v4
|
|
40
|
-
|
|
41
|
-
- name: Setup Node.js
|
|
42
|
-
uses: actions/setup-node@v4
|
|
43
|
-
with:
|
|
44
|
-
node-version: ${{ env.NODE_VERSION }}
|
|
45
|
-
cache: 'npm'
|
|
46
|
-
|
|
47
|
-
- name: Install dependencies
|
|
48
|
-
run: npm ci
|
|
49
|
-
|
|
50
|
-
- name: Run lint
|
|
51
|
-
run: {{LINT_COMMAND}}
|
|
52
|
-
|
|
53
|
-
- name: Run typecheck
|
|
54
|
-
run: {{TYPECHECK_COMMAND}}
|
|
55
|
-
|
|
56
|
-
- name: Run tests
|
|
57
|
-
run: {{TEST_COMMAND}}
|
|
58
|
-
|
|
59
|
-
- name: Build
|
|
60
|
-
run: {{BUILD_COMMAND}}
|
|
61
|
-
|
|
62
|
-
# ===========================================================================
|
|
63
|
-
# CREATE RELEASE
|
|
64
|
-
# ===========================================================================
|
|
65
|
-
create-release:
|
|
66
|
-
name: Create Release
|
|
67
|
-
runs-on: ubuntu-latest
|
|
68
|
-
needs: validate
|
|
69
|
-
outputs:
|
|
70
|
-
release_id: ${{ steps.create_release.outputs.id }}
|
|
71
|
-
version: ${{ steps.version.outputs.version }}
|
|
72
|
-
steps:
|
|
73
|
-
- name: Checkout code
|
|
74
|
-
uses: actions/checkout@v4
|
|
75
|
-
with:
|
|
76
|
-
fetch-depth: 0 # Full history for changelog
|
|
77
|
-
|
|
78
|
-
- name: Extract version from tag
|
|
79
|
-
id: version
|
|
80
|
-
run: |
|
|
81
|
-
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
|
|
82
|
-
TAG="${{ github.event.inputs.tag }}"
|
|
83
|
-
else
|
|
84
|
-
TAG="${{ github.ref_name }}"
|
|
85
|
-
fi
|
|
86
|
-
VERSION=${TAG#v}
|
|
87
|
-
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
88
|
-
echo "tag=$TAG" >> $GITHUB_OUTPUT
|
|
89
|
-
|
|
90
|
-
- name: Generate changelog
|
|
91
|
-
id: changelog
|
|
92
|
-
run: |
|
|
93
|
-
echo "## 📋 What's New in v${{ steps.version.outputs.version }}" > CHANGELOG.md
|
|
94
|
-
echo "" >> CHANGELOG.md
|
|
95
|
-
|
|
96
|
-
# Get commits since last tag
|
|
97
|
-
LAST_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
|
|
98
|
-
if [ -n "$LAST_TAG" ]; then
|
|
99
|
-
echo "### 🔄 Changes since $LAST_TAG:" >> CHANGELOG.md
|
|
100
|
-
echo "" >> CHANGELOG.md
|
|
101
|
-
|
|
102
|
-
# Group commits by type
|
|
103
|
-
echo "#### Features" >> CHANGELOG.md
|
|
104
|
-
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -E "^\\* feat" >> CHANGELOG.md || echo "* No new features" >> CHANGELOG.md
|
|
105
|
-
echo "" >> CHANGELOG.md
|
|
106
|
-
|
|
107
|
-
echo "#### Bug Fixes" >> CHANGELOG.md
|
|
108
|
-
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -E "^\\* fix" >> CHANGELOG.md || echo "* No bug fixes" >> CHANGELOG.md
|
|
109
|
-
echo "" >> CHANGELOG.md
|
|
110
|
-
|
|
111
|
-
echo "#### Other Changes" >> CHANGELOG.md
|
|
112
|
-
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -vE "^\\* (feat|fix)" >> CHANGELOG.md || echo "* No other changes" >> CHANGELOG.md
|
|
113
|
-
else
|
|
114
|
-
echo "### 🎉 Initial Release" >> CHANGELOG.md
|
|
115
|
-
echo "" >> CHANGELOG.md
|
|
116
|
-
git log --pretty=format:"* %s (%h)" HEAD~10..HEAD >> CHANGELOG.md 2>/dev/null || echo "* Initial release" >> CHANGELOG.md
|
|
117
|
-
fi
|
|
118
|
-
|
|
119
|
-
echo "" >> CHANGELOG.md
|
|
120
|
-
echo "---" >> CHANGELOG.md
|
|
121
|
-
echo "*Released by AIOX Release Automation*" >> CHANGELOG.md
|
|
122
|
-
|
|
123
|
-
- name: Create Release
|
|
124
|
-
id: create_release
|
|
125
|
-
env:
|
|
126
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
127
|
-
run: |
|
|
128
|
-
# Create the release using GitHub CLI
|
|
129
|
-
gh release create "${{ steps.version.outputs.tag }}" \
|
|
130
|
-
--title "{{PROJECT_NAME}} ${{ steps.version.outputs.tag }}" \
|
|
131
|
-
--notes-file CHANGELOG.md \
|
|
132
|
-
--verify-tag || true
|
|
133
|
-
|
|
134
|
-
# Get release info for outputs
|
|
135
|
-
RELEASE_INFO=$(gh api repos/${{ github.repository }}/releases/tags/${{ steps.version.outputs.tag }})
|
|
136
|
-
echo "id=$(echo "$RELEASE_INFO" | jq -r '.id')" >> $GITHUB_OUTPUT
|
|
137
|
-
|
|
138
|
-
# ===========================================================================
|
|
139
|
-
# BUILD AND UPLOAD ASSETS
|
|
140
|
-
# ===========================================================================
|
|
141
|
-
build-and-upload:
|
|
142
|
-
name: Build Assets
|
|
143
|
-
needs: create-release
|
|
144
|
-
runs-on: ubuntu-latest
|
|
145
|
-
steps:
|
|
146
|
-
- name: Checkout code
|
|
147
|
-
uses: actions/checkout@v4
|
|
148
|
-
|
|
149
|
-
- name: Setup Node.js
|
|
150
|
-
uses: actions/setup-node@v4
|
|
151
|
-
with:
|
|
152
|
-
node-version: ${{ env.NODE_VERSION }}
|
|
153
|
-
cache: 'npm'
|
|
154
|
-
|
|
155
|
-
- name: Install dependencies
|
|
156
|
-
run: npm ci
|
|
157
|
-
|
|
158
|
-
- name: Build
|
|
159
|
-
run: {{BUILD_COMMAND}}
|
|
160
|
-
|
|
161
|
-
- name: Create distribution archive
|
|
162
|
-
run: |
|
|
163
|
-
VERSION="${{ needs.create-release.outputs.version }}"
|
|
164
|
-
tar -czf {{PROJECT_NAME}}-${VERSION}.tar.gz \
|
|
165
|
-
--exclude=node_modules \
|
|
166
|
-
--exclude=.git \
|
|
167
|
-
--exclude='*.log' \
|
|
168
|
-
.
|
|
169
|
-
|
|
170
|
-
- name: Upload Release Asset
|
|
171
|
-
env:
|
|
172
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
173
|
-
run: |
|
|
174
|
-
VERSION="${{ needs.create-release.outputs.version }}"
|
|
175
|
-
gh release upload "${{ github.ref_name }}" \
|
|
176
|
-
"{{PROJECT_NAME}}-${VERSION}.tar.gz" \
|
|
177
|
-
--clobber
|
|
178
|
-
|
|
179
|
-
# ===========================================================================
|
|
180
|
-
# NOTIFY
|
|
181
|
-
# ===========================================================================
|
|
182
|
-
notify:
|
|
183
|
-
name: Notify
|
|
184
|
-
needs: [create-release, build-and-upload]
|
|
185
|
-
if: always()
|
|
186
|
-
runs-on: ubuntu-latest
|
|
187
|
-
steps:
|
|
188
|
-
- name: Notify completion
|
|
189
|
-
run: |
|
|
190
|
-
if [ "${{ needs.build-and-upload.result }}" = "success" ]; then
|
|
191
|
-
echo "🎉 Release ${{ github.ref_name }} created successfully!"
|
|
192
|
-
echo "🔗 Release URL: https://github.com/${{ github.repository }}/releases/tag/${{ github.ref_name }}"
|
|
193
|
-
else
|
|
194
|
-
echo "❌ Release process encountered issues"
|
|
195
|
-
exit 1
|
|
196
|
-
fi
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# AIOX Release Automation Template
|
|
3
|
+
# =============================================================================
|
|
4
|
+
# Template for user projects created with AIOX-FULLSTACK
|
|
5
|
+
# Generated by: *setup-github task (Story 5.10)
|
|
6
|
+
#
|
|
7
|
+
# Features:
|
|
8
|
+
# - Triggered on version tags (v*)
|
|
9
|
+
# - Automatic changelog generation
|
|
10
|
+
# - GitHub Release creation
|
|
11
|
+
# - Optional NPM publishing
|
|
12
|
+
# =============================================================================
|
|
13
|
+
|
|
14
|
+
name: Release
|
|
15
|
+
|
|
16
|
+
on:
|
|
17
|
+
push:
|
|
18
|
+
tags:
|
|
19
|
+
- 'v*'
|
|
20
|
+
workflow_dispatch:
|
|
21
|
+
inputs:
|
|
22
|
+
tag:
|
|
23
|
+
description: 'Release tag (e.g., v1.0.0)'
|
|
24
|
+
required: true
|
|
25
|
+
default: 'v1.0.0'
|
|
26
|
+
|
|
27
|
+
env:
|
|
28
|
+
NODE_VERSION: '{{NODE_VERSION}}'
|
|
29
|
+
|
|
30
|
+
jobs:
|
|
31
|
+
# ===========================================================================
|
|
32
|
+
# VALIDATION - Ensure code quality before release
|
|
33
|
+
# ===========================================================================
|
|
34
|
+
validate:
|
|
35
|
+
name: Validate
|
|
36
|
+
runs-on: ubuntu-latest
|
|
37
|
+
steps:
|
|
38
|
+
- name: Checkout code
|
|
39
|
+
uses: actions/checkout@v4
|
|
40
|
+
|
|
41
|
+
- name: Setup Node.js
|
|
42
|
+
uses: actions/setup-node@v4
|
|
43
|
+
with:
|
|
44
|
+
node-version: ${{ env.NODE_VERSION }}
|
|
45
|
+
cache: 'npm'
|
|
46
|
+
|
|
47
|
+
- name: Install dependencies
|
|
48
|
+
run: npm ci
|
|
49
|
+
|
|
50
|
+
- name: Run lint
|
|
51
|
+
run: {{LINT_COMMAND}}
|
|
52
|
+
|
|
53
|
+
- name: Run typecheck
|
|
54
|
+
run: {{TYPECHECK_COMMAND}}
|
|
55
|
+
|
|
56
|
+
- name: Run tests
|
|
57
|
+
run: {{TEST_COMMAND}}
|
|
58
|
+
|
|
59
|
+
- name: Build
|
|
60
|
+
run: {{BUILD_COMMAND}}
|
|
61
|
+
|
|
62
|
+
# ===========================================================================
|
|
63
|
+
# CREATE RELEASE
|
|
64
|
+
# ===========================================================================
|
|
65
|
+
create-release:
|
|
66
|
+
name: Create Release
|
|
67
|
+
runs-on: ubuntu-latest
|
|
68
|
+
needs: validate
|
|
69
|
+
outputs:
|
|
70
|
+
release_id: ${{ steps.create_release.outputs.id }}
|
|
71
|
+
version: ${{ steps.version.outputs.version }}
|
|
72
|
+
steps:
|
|
73
|
+
- name: Checkout code
|
|
74
|
+
uses: actions/checkout@v4
|
|
75
|
+
with:
|
|
76
|
+
fetch-depth: 0 # Full history for changelog
|
|
77
|
+
|
|
78
|
+
- name: Extract version from tag
|
|
79
|
+
id: version
|
|
80
|
+
run: |
|
|
81
|
+
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
|
|
82
|
+
TAG="${{ github.event.inputs.tag }}"
|
|
83
|
+
else
|
|
84
|
+
TAG="${{ github.ref_name }}"
|
|
85
|
+
fi
|
|
86
|
+
VERSION=${TAG#v}
|
|
87
|
+
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
88
|
+
echo "tag=$TAG" >> $GITHUB_OUTPUT
|
|
89
|
+
|
|
90
|
+
- name: Generate changelog
|
|
91
|
+
id: changelog
|
|
92
|
+
run: |
|
|
93
|
+
echo "## 📋 What's New in v${{ steps.version.outputs.version }}" > CHANGELOG.md
|
|
94
|
+
echo "" >> CHANGELOG.md
|
|
95
|
+
|
|
96
|
+
# Get commits since last tag
|
|
97
|
+
LAST_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
|
|
98
|
+
if [ -n "$LAST_TAG" ]; then
|
|
99
|
+
echo "### 🔄 Changes since $LAST_TAG:" >> CHANGELOG.md
|
|
100
|
+
echo "" >> CHANGELOG.md
|
|
101
|
+
|
|
102
|
+
# Group commits by type
|
|
103
|
+
echo "#### Features" >> CHANGELOG.md
|
|
104
|
+
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -E "^\\* feat" >> CHANGELOG.md || echo "* No new features" >> CHANGELOG.md
|
|
105
|
+
echo "" >> CHANGELOG.md
|
|
106
|
+
|
|
107
|
+
echo "#### Bug Fixes" >> CHANGELOG.md
|
|
108
|
+
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -E "^\\* fix" >> CHANGELOG.md || echo "* No bug fixes" >> CHANGELOG.md
|
|
109
|
+
echo "" >> CHANGELOG.md
|
|
110
|
+
|
|
111
|
+
echo "#### Other Changes" >> CHANGELOG.md
|
|
112
|
+
git log --pretty=format:"* %s (%h)" $LAST_TAG..HEAD | grep -vE "^\\* (feat|fix)" >> CHANGELOG.md || echo "* No other changes" >> CHANGELOG.md
|
|
113
|
+
else
|
|
114
|
+
echo "### 🎉 Initial Release" >> CHANGELOG.md
|
|
115
|
+
echo "" >> CHANGELOG.md
|
|
116
|
+
git log --pretty=format:"* %s (%h)" HEAD~10..HEAD >> CHANGELOG.md 2>/dev/null || echo "* Initial release" >> CHANGELOG.md
|
|
117
|
+
fi
|
|
118
|
+
|
|
119
|
+
echo "" >> CHANGELOG.md
|
|
120
|
+
echo "---" >> CHANGELOG.md
|
|
121
|
+
echo "*Released by AIOX Release Automation*" >> CHANGELOG.md
|
|
122
|
+
|
|
123
|
+
- name: Create Release
|
|
124
|
+
id: create_release
|
|
125
|
+
env:
|
|
126
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
127
|
+
run: |
|
|
128
|
+
# Create the release using GitHub CLI
|
|
129
|
+
gh release create "${{ steps.version.outputs.tag }}" \
|
|
130
|
+
--title "{{PROJECT_NAME}} ${{ steps.version.outputs.tag }}" \
|
|
131
|
+
--notes-file CHANGELOG.md \
|
|
132
|
+
--verify-tag || true
|
|
133
|
+
|
|
134
|
+
# Get release info for outputs
|
|
135
|
+
RELEASE_INFO=$(gh api repos/${{ github.repository }}/releases/tags/${{ steps.version.outputs.tag }})
|
|
136
|
+
echo "id=$(echo "$RELEASE_INFO" | jq -r '.id')" >> $GITHUB_OUTPUT
|
|
137
|
+
|
|
138
|
+
# ===========================================================================
|
|
139
|
+
# BUILD AND UPLOAD ASSETS
|
|
140
|
+
# ===========================================================================
|
|
141
|
+
build-and-upload:
|
|
142
|
+
name: Build Assets
|
|
143
|
+
needs: create-release
|
|
144
|
+
runs-on: ubuntu-latest
|
|
145
|
+
steps:
|
|
146
|
+
- name: Checkout code
|
|
147
|
+
uses: actions/checkout@v4
|
|
148
|
+
|
|
149
|
+
- name: Setup Node.js
|
|
150
|
+
uses: actions/setup-node@v4
|
|
151
|
+
with:
|
|
152
|
+
node-version: ${{ env.NODE_VERSION }}
|
|
153
|
+
cache: 'npm'
|
|
154
|
+
|
|
155
|
+
- name: Install dependencies
|
|
156
|
+
run: npm ci
|
|
157
|
+
|
|
158
|
+
- name: Build
|
|
159
|
+
run: {{BUILD_COMMAND}}
|
|
160
|
+
|
|
161
|
+
- name: Create distribution archive
|
|
162
|
+
run: |
|
|
163
|
+
VERSION="${{ needs.create-release.outputs.version }}"
|
|
164
|
+
tar -czf {{PROJECT_NAME}}-${VERSION}.tar.gz \
|
|
165
|
+
--exclude=node_modules \
|
|
166
|
+
--exclude=.git \
|
|
167
|
+
--exclude='*.log' \
|
|
168
|
+
.
|
|
169
|
+
|
|
170
|
+
- name: Upload Release Asset
|
|
171
|
+
env:
|
|
172
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
173
|
+
run: |
|
|
174
|
+
VERSION="${{ needs.create-release.outputs.version }}"
|
|
175
|
+
gh release upload "${{ github.ref_name }}" \
|
|
176
|
+
"{{PROJECT_NAME}}-${VERSION}.tar.gz" \
|
|
177
|
+
--clobber
|
|
178
|
+
|
|
179
|
+
# ===========================================================================
|
|
180
|
+
# NOTIFY
|
|
181
|
+
# ===========================================================================
|
|
182
|
+
notify:
|
|
183
|
+
name: Notify
|
|
184
|
+
needs: [create-release, build-and-upload]
|
|
185
|
+
if: always()
|
|
186
|
+
runs-on: ubuntu-latest
|
|
187
|
+
steps:
|
|
188
|
+
- name: Notify completion
|
|
189
|
+
run: |
|
|
190
|
+
if [ "${{ needs.build-and-upload.result }}" = "success" ]; then
|
|
191
|
+
echo "🎉 Release ${{ github.ref_name }} created successfully!"
|
|
192
|
+
echo "🔗 Release URL: https://github.com/${{ github.repository }}/releases/tag/${{ github.ref_name }}"
|
|
193
|
+
else
|
|
194
|
+
echo "❌ Release process encountered issues"
|
|
195
|
+
exit 1
|
|
196
|
+
fi
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
# ========================================
|
|
2
|
-
# AIOX Base Ignores
|
|
3
|
-
# Generated by AIOX Documentation Integrity System
|
|
4
|
-
# ========================================
|
|
5
|
-
|
|
6
|
-
# AIOX Local Configuration
|
|
7
|
-
.aiox-core/local/
|
|
8
|
-
.aiox-core/*.local.yaml
|
|
9
|
-
.aiox-core/logs/
|
|
10
|
-
.aiox-core/cache/
|
|
11
|
-
|
|
12
|
-
# Environment Files
|
|
13
|
-
.env
|
|
14
|
-
.env.local
|
|
15
|
-
.env.*.local
|
|
16
|
-
.env.development
|
|
17
|
-
.env.test
|
|
18
|
-
.env.production
|
|
19
|
-
|
|
20
|
-
# IDE & Editor
|
|
21
|
-
.vscode/settings.json
|
|
22
|
-
.vscode/*.code-workspace
|
|
23
|
-
.idea/
|
|
24
|
-
*.sublime-workspace
|
|
25
|
-
*.sublime-project
|
|
26
|
-
|
|
27
|
-
# OS Files
|
|
28
|
-
.DS_Store
|
|
29
|
-
.DS_Store?
|
|
30
|
-
._*
|
|
31
|
-
.Spotlight-V100
|
|
32
|
-
.Trashes
|
|
33
|
-
ehthumbs.db
|
|
34
|
-
Thumbs.db
|
|
35
|
-
desktop.ini
|
|
36
|
-
|
|
37
|
-
# Logs
|
|
38
|
-
logs/
|
|
39
|
-
*.log
|
|
40
|
-
npm-debug.log*
|
|
41
|
-
yarn-debug.log*
|
|
42
|
-
yarn-error.log*
|
|
43
|
-
pnpm-debug.log*
|
|
44
|
-
lerna-debug.log*
|
|
45
|
-
|
|
46
|
-
# Temporary Files
|
|
47
|
-
tmp/
|
|
48
|
-
temp/
|
|
49
|
-
*.tmp
|
|
50
|
-
*.temp
|
|
51
|
-
*.swp
|
|
52
|
-
*.swo
|
|
53
|
-
*~
|
|
54
|
-
|
|
55
|
-
# Backup Files
|
|
56
|
-
*.bak
|
|
57
|
-
*.backup
|
|
58
|
-
*.orig
|
|
59
|
-
|
|
60
|
-
# Archives
|
|
61
|
-
*.zip
|
|
62
|
-
*.tar.gz
|
|
63
|
-
*.rar
|
|
1
|
+
# ========================================
|
|
2
|
+
# AIOX Base Ignores
|
|
3
|
+
# Generated by AIOX Documentation Integrity System
|
|
4
|
+
# ========================================
|
|
5
|
+
|
|
6
|
+
# AIOX Local Configuration
|
|
7
|
+
.aiox-core/local/
|
|
8
|
+
.aiox-core/*.local.yaml
|
|
9
|
+
.aiox-core/logs/
|
|
10
|
+
.aiox-core/cache/
|
|
11
|
+
|
|
12
|
+
# Environment Files
|
|
13
|
+
.env
|
|
14
|
+
.env.local
|
|
15
|
+
.env.*.local
|
|
16
|
+
.env.development
|
|
17
|
+
.env.test
|
|
18
|
+
.env.production
|
|
19
|
+
|
|
20
|
+
# IDE & Editor
|
|
21
|
+
.vscode/settings.json
|
|
22
|
+
.vscode/*.code-workspace
|
|
23
|
+
.idea/
|
|
24
|
+
*.sublime-workspace
|
|
25
|
+
*.sublime-project
|
|
26
|
+
|
|
27
|
+
# OS Files
|
|
28
|
+
.DS_Store
|
|
29
|
+
.DS_Store?
|
|
30
|
+
._*
|
|
31
|
+
.Spotlight-V100
|
|
32
|
+
.Trashes
|
|
33
|
+
ehthumbs.db
|
|
34
|
+
Thumbs.db
|
|
35
|
+
desktop.ini
|
|
36
|
+
|
|
37
|
+
# Logs
|
|
38
|
+
logs/
|
|
39
|
+
*.log
|
|
40
|
+
npm-debug.log*
|
|
41
|
+
yarn-debug.log*
|
|
42
|
+
yarn-error.log*
|
|
43
|
+
pnpm-debug.log*
|
|
44
|
+
lerna-debug.log*
|
|
45
|
+
|
|
46
|
+
# Temporary Files
|
|
47
|
+
tmp/
|
|
48
|
+
temp/
|
|
49
|
+
*.tmp
|
|
50
|
+
*.temp
|
|
51
|
+
*.swp
|
|
52
|
+
*.swo
|
|
53
|
+
*~
|
|
54
|
+
|
|
55
|
+
# Backup Files
|
|
56
|
+
*.bak
|
|
57
|
+
*.backup
|
|
58
|
+
*.orig
|
|
59
|
+
|
|
60
|
+
# Archives
|
|
61
|
+
*.zip
|
|
62
|
+
*.tar.gz
|
|
63
|
+
*.rar
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
# ========================================
|
|
2
|
-
# AIOX Integration Section
|
|
3
|
-
# Added by AIOX Documentation Integrity System
|
|
4
|
-
# Date: {{GENERATED_DATE}}
|
|
5
|
-
# ========================================
|
|
6
|
-
|
|
7
|
-
# AIOX Local Configuration
|
|
8
|
-
.aiox-core/local/
|
|
9
|
-
.aiox-core/*.local.yaml
|
|
10
|
-
.aiox-core/logs/
|
|
11
|
-
.aiox-core/cache/
|
|
12
|
-
|
|
13
|
-
# AIOX Generated (optional - uncomment if needed)
|
|
14
|
-
# .aiox-core/generated/
|
|
15
|
-
|
|
16
|
-
# ========================================
|
|
17
|
-
# End of AIOX Integration Section
|
|
18
|
-
# ========================================
|
|
1
|
+
# ========================================
|
|
2
|
+
# AIOX Integration Section
|
|
3
|
+
# Added by AIOX Documentation Integrity System
|
|
4
|
+
# Date: {{GENERATED_DATE}}
|
|
5
|
+
# ========================================
|
|
6
|
+
|
|
7
|
+
# AIOX Local Configuration
|
|
8
|
+
.aiox-core/local/
|
|
9
|
+
.aiox-core/*.local.yaml
|
|
10
|
+
.aiox-core/logs/
|
|
11
|
+
.aiox-core/cache/
|
|
12
|
+
|
|
13
|
+
# AIOX Generated (optional - uncomment if needed)
|
|
14
|
+
# .aiox-core/generated/
|
|
15
|
+
|
|
16
|
+
# ========================================
|
|
17
|
+
# End of AIOX Integration Section
|
|
18
|
+
# ========================================
|