httpcat-cli 0.3.0 → 0.3.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.
- package/.github/workflows/ci.yml +3 -0
- package/.github/workflows/rc-publish.yml +6 -0
- package/.github/workflows/release.yml +102 -0
- package/.github/workflows/sync-version.yml +31 -2
- package/README.md +1408 -109
- package/additions.txt +3 -0
- package/bun.lock +260 -25
- package/dist/agent/autonomous-trader.d.ts.map +1 -0
- package/dist/agent/autonomous-trader.js +362 -0
- package/dist/agent/autonomous-trader.js.map +1 -0
- package/dist/agent/ax-agent.d.ts.map +1 -1
- package/dist/agent/ax-agent.js +356 -18
- package/dist/agent/ax-agent.js.map +1 -1
- package/dist/agent/event-client.d.ts.map +1 -0
- package/dist/agent/event-client.js +82 -0
- package/dist/agent/event-client.js.map +1 -0
- package/dist/agent/log-stream.d.ts.map +1 -0
- package/dist/agent/log-stream.js +95 -0
- package/dist/agent/log-stream.js.map +1 -0
- package/dist/agent/memory/conversation-session.d.ts.map +1 -0
- package/dist/agent/memory/conversation-session.js +232 -0
- package/dist/agent/memory/conversation-session.js.map +1 -0
- package/dist/agent/memory/conversation-store.d.ts.map +1 -0
- package/dist/agent/memory/conversation-store.js +214 -0
- package/dist/agent/memory/conversation-store.js.map +1 -0
- package/dist/agent/memory/database-schema.d.ts.map +1 -0
- package/dist/agent/memory/database-schema.js +355 -0
- package/dist/agent/memory/database-schema.js.map +1 -0
- package/dist/agent/memory/decision-tracker.d.ts.map +1 -0
- package/dist/agent/memory/decision-tracker.js +274 -0
- package/dist/agent/memory/decision-tracker.js.map +1 -0
- package/dist/agent/memory/memory-manager.d.ts.map +1 -0
- package/dist/agent/memory/memory-manager.js +187 -0
- package/dist/agent/memory/memory-manager.js.map +1 -0
- package/dist/agent/memory/types.d.ts.map +1 -0
- package/dist/agent/memory/types.js +5 -0
- package/dist/agent/memory/types.js.map +1 -0
- package/dist/agent/message-formatter.d.ts.map +1 -0
- package/dist/agent/message-formatter.js +76 -0
- package/dist/agent/message-formatter.js.map +1 -0
- package/dist/agent/position-db.d.ts.map +1 -0
- package/dist/agent/position-db.js +154 -0
- package/dist/agent/position-db.js.map +1 -0
- package/dist/agent/simple-chat-ui-static.d.ts.map +1 -0
- package/dist/agent/simple-chat-ui-static.js +129 -0
- package/dist/agent/simple-chat-ui-static.js.map +1 -0
- package/dist/agent/simple-chat-ui.d.ts.map +1 -0
- package/dist/agent/simple-chat-ui.js +90 -0
- package/dist/agent/simple-chat-ui.js.map +1 -0
- package/dist/agent/tools.d.ts.map +1 -1
- package/dist/agent/tools.js +297 -4
- package/dist/agent/tools.js.map +1 -1
- package/dist/agent/ui.d.ts.map +1 -0
- package/dist/agent/ui.js +84 -0
- package/dist/agent/ui.js.map +1 -0
- package/dist/agent/unified-runtime.d.ts.map +1 -0
- package/dist/agent/unified-runtime.js +397 -0
- package/dist/agent/unified-runtime.js.map +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +272 -21
- package/dist/client.js.map +1 -1
- package/dist/commands/account.d.ts.map +1 -1
- package/dist/commands/account.js +187 -33
- package/dist/commands/account.js.map +1 -1
- package/dist/commands/agent.d.ts.map +1 -0
- package/dist/commands/agent.js +125 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/approve.d.ts.map +1 -0
- package/dist/commands/approve.js +505 -0
- package/dist/commands/approve.js.map +1 -0
- package/dist/commands/automation.d.ts.map +1 -0
- package/dist/commands/automation.js +346 -0
- package/dist/commands/automation.js.map +1 -0
- package/dist/commands/balances.d.ts.map +1 -1
- package/dist/commands/balances.js +226 -73
- package/dist/commands/balances.js.map +1 -1
- package/dist/commands/buy.d.ts.map +1 -1
- package/dist/commands/buy.js +149 -146
- package/dist/commands/buy.js.map +1 -1
- package/dist/commands/call.d.ts.map +1 -0
- package/dist/commands/call.js +51 -0
- package/dist/commands/call.js.map +1 -0
- package/dist/commands/cex.d.ts.map +1 -0
- package/dist/commands/cex.js +958 -0
- package/dist/commands/cex.js.map +1 -0
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +169 -411
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/claim.d.ts.map +1 -1
- package/dist/commands/claim.js +313 -29
- package/dist/commands/claim.js.map +1 -1
- package/dist/commands/create.d.ts.map +1 -1
- package/dist/commands/create.js +151 -43
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/gasless-swap.d.ts.map +1 -0
- package/dist/commands/gasless-swap.js +232 -0
- package/dist/commands/gasless-swap.js.map +1 -0
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +63 -7
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +131 -47
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/launchpad.d.ts.map +1 -0
- package/dist/commands/launchpad.js +708 -0
- package/dist/commands/launchpad.js.map +1 -0
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +57 -23
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/market.d.ts.map +1 -0
- package/dist/commands/market.js +960 -0
- package/dist/commands/market.js.map +1 -0
- package/dist/commands/mcp-install.d.ts.map +1 -0
- package/dist/commands/mcp-install.js +387 -0
- package/dist/commands/mcp-install.js.map +1 -0
- package/dist/commands/opps.d.ts.map +1 -0
- package/dist/commands/opps.js +409 -0
- package/dist/commands/opps.js.map +1 -0
- package/dist/commands/perps.d.ts.map +1 -0
- package/dist/commands/perps.js +248 -0
- package/dist/commands/perps.js.map +1 -0
- package/dist/commands/portfolio.d.ts.map +1 -0
- package/dist/commands/portfolio.js +679 -0
- package/dist/commands/portfolio.js.map +1 -0
- package/dist/commands/positions.d.ts.map +1 -1
- package/dist/commands/positions.js +76 -47
- package/dist/commands/positions.js.map +1 -1
- package/dist/commands/predict.d.ts.map +1 -0
- package/dist/commands/predict.js +280 -0
- package/dist/commands/predict.js.map +1 -0
- package/dist/commands/predictions.d.ts.map +1 -0
- package/dist/commands/predictions.js +486 -0
- package/dist/commands/predictions.js.map +1 -0
- package/dist/commands/risk.d.ts.map +1 -0
- package/dist/commands/risk.js +225 -0
- package/dist/commands/risk.js.map +1 -0
- package/dist/commands/security.d.ts.map +1 -0
- package/dist/commands/security.js +244 -0
- package/dist/commands/security.js.map +1 -0
- package/dist/commands/sell.d.ts.map +1 -1
- package/dist/commands/sell.js +67 -34
- package/dist/commands/sell.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +733 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/sign.d.ts.map +1 -0
- package/dist/commands/sign.js +1048 -0
- package/dist/commands/sign.js.map +1 -0
- package/dist/commands/swap.d.ts.map +1 -0
- package/dist/commands/swap.js +744 -0
- package/dist/commands/swap.js.map +1 -0
- package/dist/commands/system.d.ts.map +1 -0
- package/dist/commands/system.js +417 -0
- package/dist/commands/system.js.map +1 -0
- package/dist/commands/tools/index.d.ts.map +1 -0
- package/dist/commands/tools/index.js +2040 -0
- package/dist/commands/tools/index.js.map +1 -0
- package/dist/commands/trade.d.ts.map +1 -0
- package/dist/commands/trade.js +237 -0
- package/dist/commands/trade.js.map +1 -0
- package/dist/commands/transactions.d.ts.map +1 -1
- package/dist/commands/transactions.js +29 -17
- package/dist/commands/transactions.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +429 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +351 -40
- package/dist/config.js.map +1 -1
- package/dist/index.js +4524 -924
- package/dist/index.js.map +1 -1
- package/dist/interactive/art.d.ts.map +1 -1
- package/dist/interactive/art.js +33 -1
- package/dist/interactive/art.js.map +1 -1
- package/dist/interactive/shell.d.ts.map +1 -1
- package/dist/interactive/shell.js +467 -2652
- package/dist/interactive/shell.js.map +1 -1
- package/dist/mcp/context.d.ts.map +1 -0
- package/dist/mcp/context.js +211 -0
- package/dist/mcp/context.js.map +1 -0
- package/dist/mcp/onboarding.d.ts.map +1 -0
- package/dist/mcp/onboarding.js +266 -0
- package/dist/mcp/onboarding.js.map +1 -0
- package/dist/mcp/resources.d.ts.map +1 -0
- package/dist/mcp/resources.js +222 -0
- package/dist/mcp/resources.js.map +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +51 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +4119 -169
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/types/agent-info.d.ts.map +1 -0
- package/dist/types/agent-info.js +11 -0
- package/dist/types/agent-info.js.map +1 -0
- package/dist/ui/components/ScrollableList.d.ts.map +1 -0
- package/dist/ui/components/ScrollableList.js +72 -0
- package/dist/ui/components/ScrollableList.js.map +1 -0
- package/dist/ui/components/ThemeProvider.d.ts.map +1 -0
- package/dist/ui/components/ThemeProvider.js +87 -0
- package/dist/ui/components/ThemeProvider.js.map +1 -0
- package/dist/ui/components/ThemedBox.d.ts.map +1 -0
- package/dist/ui/components/ThemedBox.js +24 -0
- package/dist/ui/components/ThemedBox.js.map +1 -0
- package/dist/ui/components/agent/ChatHeader.d.ts.map +1 -0
- package/dist/ui/components/agent/ChatHeader.js +39 -0
- package/dist/ui/components/agent/ChatHeader.js.map +1 -0
- package/dist/ui/components/agent/Header.d.ts.map +1 -0
- package/dist/ui/components/agent/Header.js +14 -0
- package/dist/ui/components/agent/Header.js.map +1 -0
- package/dist/ui/components/agent/Input.d.ts.map +1 -0
- package/dist/ui/components/agent/Input.js +23 -0
- package/dist/ui/components/agent/Input.js.map +1 -0
- package/dist/ui/components/agent/Output.d.ts.map +1 -0
- package/dist/ui/components/agent/Output.js +23 -0
- package/dist/ui/components/agent/Output.js.map +1 -0
- package/dist/ui/components/chat/TokenChatUI.d.ts.map +1 -0
- package/dist/ui/components/chat/TokenChatUI.js +133 -0
- package/dist/ui/components/chat/TokenChatUI.js.map +1 -0
- package/dist/ui/components/shell/ShellHeader.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellHeader.js +31 -0
- package/dist/ui/components/shell/ShellHeader.js.map +1 -0
- package/dist/ui/components/shell/ShellInput.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellInput.js +151 -0
- package/dist/ui/components/shell/ShellInput.js.map +1 -0
- package/dist/ui/components/shell/ShellOutput.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellOutput.js +8 -0
- package/dist/ui/components/shell/ShellOutput.js.map +1 -0
- package/dist/ui/hooks/useChatWebSocket.d.ts.map +1 -0
- package/dist/ui/hooks/useChatWebSocket.js +76 -0
- package/dist/ui/hooks/useChatWebSocket.js.map +1 -0
- package/dist/ui/hooks/useCommandHistory.d.ts.map +1 -0
- package/dist/ui/hooks/useCommandHistory.js +70 -0
- package/dist/ui/hooks/useCommandHistory.js.map +1 -0
- package/dist/ui/hooks/useDebounce.d.ts.map +1 -0
- package/dist/ui/hooks/useDebounce.js +17 -0
- package/dist/ui/hooks/useDebounce.js.map +1 -0
- package/dist/ui/hooks/useLogStream.d.ts.map +1 -0
- package/dist/ui/hooks/useLogStream.js +20 -0
- package/dist/ui/hooks/useLogStream.js.map +1 -0
- package/dist/ui/hooks/useVirtualScroll.d.ts.map +1 -0
- package/dist/ui/hooks/useVirtualScroll.js +70 -0
- package/dist/ui/hooks/useVirtualScroll.js.map +1 -0
- package/dist/utils/admin.d.ts.map +1 -0
- package/dist/utils/admin.js +144 -0
- package/dist/utils/admin.js.map +1 -0
- package/dist/utils/autoSetup.d.ts.map +1 -0
- package/dist/utils/autoSetup.js +252 -0
- package/dist/utils/autoSetup.js.map +1 -0
- package/dist/utils/build-constants.d.ts.map +1 -0
- package/dist/utils/build-constants.js +10 -0
- package/dist/utils/build-constants.js.map +1 -0
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +10 -1
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/formatting.d.ts.map +1 -1
- package/dist/utils/formatting.js +46 -9
- package/dist/utils/formatting.js.map +1 -1
- package/dist/utils/llm-cli-config.d.ts.map +1 -0
- package/dist/utils/llm-cli-config.js +963 -0
- package/dist/utils/llm-cli-config.js.map +1 -0
- package/dist/utils/llm-cli-detector.d.ts.map +1 -0
- package/dist/utils/llm-cli-detector.js +202 -0
- package/dist/utils/llm-cli-detector.js.map +1 -0
- package/dist/utils/loading.d.ts.map +1 -1
- package/dist/utils/loading.js +25 -3
- package/dist/utils/loading.js.map +1 -1
- package/dist/utils/maintenance.d.ts.map +1 -0
- package/dist/utils/maintenance.js +17 -0
- package/dist/utils/maintenance.js.map +1 -0
- package/dist/utils/mcp-config.d.ts.map +1 -0
- package/dist/utils/mcp-config.js +77 -0
- package/dist/utils/mcp-config.js.map +1 -0
- package/dist/utils/privateKeyPrompt.d.ts.map +1 -1
- package/dist/utils/privateKeyPrompt.js +308 -129
- package/dist/utils/privateKeyPrompt.js.map +1 -1
- package/dist/utils/process-cleanup.d.ts.map +1 -0
- package/dist/utils/process-cleanup.js +136 -0
- package/dist/utils/process-cleanup.js.map +1 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +56 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/rpc-helpers.d.ts.map +1 -0
- package/dist/utils/rpc-helpers.js +70 -0
- package/dist/utils/rpc-helpers.js.map +1 -0
- package/dist/utils/rpc-transport.d.ts.map +1 -0
- package/dist/utils/rpc-transport.js +87 -0
- package/dist/utils/rpc-transport.js.map +1 -0
- package/dist/utils/shell-setup.d.ts.map +1 -0
- package/dist/utils/shell-setup.js +531 -0
- package/dist/utils/shell-setup.js.map +1 -0
- package/dist/utils/status.d.ts.map +1 -1
- package/dist/utils/status.js +34 -5
- package/dist/utils/status.js.map +1 -1
- package/dist/utils/token-resolver.d.ts.map +1 -1
- package/dist/utils/token-resolver.js +51 -8
- package/dist/utils/token-resolver.js.map +1 -1
- package/dist/utils/x402-caller.d.ts.map +1 -0
- package/dist/utils/x402-caller.js +17 -0
- package/dist/utils/x402-caller.js.map +1 -0
- package/docs/README.md +28 -0
- package/docs/agent/README.md +18 -0
- package/docs/api/README.md +41 -0
- package/docs/cli/README.md +42 -0
- package/docs/guides/README.md +26 -0
- package/docs/implementation/README.md +18 -0
- package/docs/planning/README.md +19 -0
- package/docs/testing/README.md +15 -0
- package/docs/ux/README.md +16 -0
- package/issues.txt +2 -0
- package/package.json +24 -9
- package/scripts/cat-spin.sh +417 -0
- package/scripts/deprecate-rc-versions.js +58 -0
- package/scripts/inject-build-constants.js +43 -0
- package/scripts/monitor-foobar.js +117 -0
- package/swap.logs +61 -0
- package/swapping.txt +108 -0
- package/test.txt +12 -0
- package/tests/fixtures/test-data.json +16 -0
- package/Screenshot 2025-12-21 at 8.56.02/342/200/257PM.png +0 -0
package/.github/workflows/ci.yml
CHANGED
|
@@ -95,6 +95,9 @@ jobs:
|
|
|
95
95
|
|
|
96
96
|
- name: Build
|
|
97
97
|
run: bun run build
|
|
98
|
+
env:
|
|
99
|
+
HTTPCAT_ADMIN_COMMANDS: ${{ vars.HTTPCAT_ADMIN_COMMANDS }}
|
|
100
|
+
AUTHORIZED_WALLETS: ${{ vars.AUTHORIZED_WALLETS }}
|
|
98
101
|
|
|
99
102
|
- name: Verify build output
|
|
100
103
|
run: |
|
|
@@ -143,6 +146,9 @@ jobs:
|
|
|
143
146
|
|
|
144
147
|
- name: Build
|
|
145
148
|
run: bun run build
|
|
149
|
+
env:
|
|
150
|
+
HTTPCAT_ADMIN_COMMANDS: ${{ vars.HTTPCAT_ADMIN_COMMANDS }}
|
|
151
|
+
AUTHORIZED_WALLETS: ${{ vars.AUTHORIZED_WALLETS }}
|
|
146
152
|
|
|
147
153
|
- name: Publish RC to npm
|
|
148
154
|
run: npm publish --tag rc --access public
|
|
@@ -523,6 +523,9 @@ jobs:
|
|
|
523
523
|
|
|
524
524
|
- name: Build
|
|
525
525
|
run: bun run build
|
|
526
|
+
env:
|
|
527
|
+
HTTPCAT_ADMIN_COMMANDS: ${{ vars.HTTPCAT_ADMIN_COMMANDS }}
|
|
528
|
+
AUTHORIZED_WALLETS: ${{ vars.AUTHORIZED_WALLETS }}
|
|
526
529
|
|
|
527
530
|
- name: Verify build output
|
|
528
531
|
run: |
|
|
@@ -571,6 +574,9 @@ jobs:
|
|
|
571
574
|
|
|
572
575
|
- name: Build
|
|
573
576
|
run: bun run build
|
|
577
|
+
env:
|
|
578
|
+
HTTPCAT_ADMIN_COMMANDS: ${{ vars.HTTPCAT_ADMIN_COMMANDS }}
|
|
579
|
+
AUTHORIZED_WALLETS: ${{ vars.AUTHORIZED_WALLETS }}
|
|
574
580
|
|
|
575
581
|
- name: Publish to npm
|
|
576
582
|
run: npm publish --access public
|
|
@@ -764,3 +770,99 @@ jobs:
|
|
|
764
770
|
echo "Version: ${{ needs.prepare.outputs.version }}"
|
|
765
771
|
echo "npm: https://www.npmjs.com/package/httpcat-cli/v/${{ needs.prepare.outputs.version }}"
|
|
766
772
|
echo "GitHub: https://github.com/${{ github.repository }}/releases/tag/${{ needs.prepare.outputs.tag }}"
|
|
773
|
+
|
|
774
|
+
# Job 6: Sync version to develop branch
|
|
775
|
+
sync-version:
|
|
776
|
+
name: Sync Version to Develop
|
|
777
|
+
runs-on: ubuntu-latest
|
|
778
|
+
needs: [create-release]
|
|
779
|
+
permissions:
|
|
780
|
+
contents: write
|
|
781
|
+
steps:
|
|
782
|
+
- name: Checkout code
|
|
783
|
+
uses: actions/checkout@v6
|
|
784
|
+
with:
|
|
785
|
+
fetch-depth: 0
|
|
786
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
787
|
+
|
|
788
|
+
- name: Checkout develop branch
|
|
789
|
+
run: |
|
|
790
|
+
git checkout develop
|
|
791
|
+
git pull origin develop
|
|
792
|
+
|
|
793
|
+
- name: Check for new commits in develop
|
|
794
|
+
id: check-commits
|
|
795
|
+
run: |
|
|
796
|
+
# Check if develop has commits that aren't in main
|
|
797
|
+
COMMITS_AHEAD=$(git rev-list --count origin/main..HEAD 2>/dev/null || echo "0")
|
|
798
|
+
echo "commits_ahead=$COMMITS_AHEAD" >> $GITHUB_OUTPUT
|
|
799
|
+
|
|
800
|
+
if [ "$COMMITS_AHEAD" -gt 0 ]; then
|
|
801
|
+
echo "ℹ️ Develop has $COMMITS_AHEAD commit(s) not in main"
|
|
802
|
+
echo "These will be preserved by rebasing onto main"
|
|
803
|
+
else
|
|
804
|
+
echo "✅ Develop has no new commits - can fast-forward to main"
|
|
805
|
+
fi
|
|
806
|
+
|
|
807
|
+
- name: Rebase develop onto main
|
|
808
|
+
run: |
|
|
809
|
+
echo "Updating develop to include latest from main..."
|
|
810
|
+
git fetch origin main
|
|
811
|
+
|
|
812
|
+
# Check if we can fast-forward (no new commits in develop)
|
|
813
|
+
COMMITS_AHEAD="${{ steps.check-commits.outputs.commits_ahead }}"
|
|
814
|
+
|
|
815
|
+
if [ "$COMMITS_AHEAD" -eq 0 ]; then
|
|
816
|
+
# Fast-forward: just move develop to main
|
|
817
|
+
echo "Fast-forwarding develop to main..."
|
|
818
|
+
git reset --hard origin/main
|
|
819
|
+
else
|
|
820
|
+
# Rebase: replay develop's commits on top of main
|
|
821
|
+
echo "Rebasing develop onto main..."
|
|
822
|
+
git rebase origin/main || {
|
|
823
|
+
echo "⚠️ Rebase conflict detected - this shouldn't happen if develop was properly merged"
|
|
824
|
+
echo "Falling back to reset (this will discard develop-only commits)"
|
|
825
|
+
git rebase --abort 2>/dev/null || true
|
|
826
|
+
git reset --hard origin/main
|
|
827
|
+
}
|
|
828
|
+
fi
|
|
829
|
+
echo "✅ Develop updated to include latest from main"
|
|
830
|
+
|
|
831
|
+
- name: Verify package.json version
|
|
832
|
+
run: |
|
|
833
|
+
CURRENT_VERSION=$(node -p "require('./package.json').version")
|
|
834
|
+
RELEASE_VERSION="${{ needs.prepare.outputs.version }}"
|
|
835
|
+
|
|
836
|
+
echo "Current version in package.json: $CURRENT_VERSION"
|
|
837
|
+
echo "Release version: $RELEASE_VERSION"
|
|
838
|
+
|
|
839
|
+
if [ "$CURRENT_VERSION" != "$RELEASE_VERSION" ]; then
|
|
840
|
+
echo "Updating package.json version..."
|
|
841
|
+
npm version "$RELEASE_VERSION" --no-git-tag-version --allow-same-version
|
|
842
|
+
git add package.json
|
|
843
|
+
git commit -m "chore: sync version to $RELEASE_VERSION" || echo "No changes to commit"
|
|
844
|
+
else
|
|
845
|
+
echo "✅ Version already matches"
|
|
846
|
+
fi
|
|
847
|
+
|
|
848
|
+
- name: Push to develop
|
|
849
|
+
run: |
|
|
850
|
+
git config user.name "github-actions[bot]"
|
|
851
|
+
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
852
|
+
|
|
853
|
+
# Check if there are any changes to push
|
|
854
|
+
if git diff --quiet origin/develop HEAD; then
|
|
855
|
+
echo "✅ No changes to push (develop already up to date)"
|
|
856
|
+
else
|
|
857
|
+
COMMITS_AHEAD="${{ steps.check-commits.outputs.commits_ahead }}"
|
|
858
|
+
if [ "$COMMITS_AHEAD" -eq 0 ]; then
|
|
859
|
+
# Fast-forward push (no force needed)
|
|
860
|
+
echo "Pushing fast-forward update..."
|
|
861
|
+
git push origin develop
|
|
862
|
+
else
|
|
863
|
+
# Rebase requires force push (but this is safe after rebase)
|
|
864
|
+
echo "Pushing rebased develop branch..."
|
|
865
|
+
git push origin develop --force-with-lease
|
|
866
|
+
fi
|
|
867
|
+
echo "✅ Develop updated and pushed"
|
|
868
|
+
fi
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
name: Sync Version to Develop
|
|
2
2
|
|
|
3
3
|
# This workflow runs after a release to reset develop to match main and sync the version
|
|
4
|
+
# It has multiple triggers to ensure it runs reliably:
|
|
5
|
+
# 1. release event (when a release is published)
|
|
6
|
+
# 2. workflow_run (when the release workflow completes - backup trigger)
|
|
7
|
+
# 3. workflow_dispatch (manual trigger)
|
|
4
8
|
on:
|
|
5
9
|
release:
|
|
6
10
|
types: [published]
|
|
11
|
+
workflow_run:
|
|
12
|
+
workflows: ["Publish Switch"]
|
|
13
|
+
types: [completed]
|
|
14
|
+
branches:
|
|
15
|
+
- main
|
|
7
16
|
workflow_dispatch:
|
|
8
17
|
inputs:
|
|
9
18
|
version:
|
|
@@ -24,6 +33,12 @@ jobs:
|
|
|
24
33
|
fetch-depth: 0
|
|
25
34
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
26
35
|
|
|
36
|
+
- name: Setup GitHub CLI
|
|
37
|
+
if: github.event_name == 'workflow_run'
|
|
38
|
+
uses: cli/cli@v2
|
|
39
|
+
with:
|
|
40
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
41
|
+
|
|
27
42
|
- name: Get version from release
|
|
28
43
|
id: version
|
|
29
44
|
run: |
|
|
@@ -32,16 +47,30 @@ jobs:
|
|
|
32
47
|
VERSION="${{ inputs.version }}"
|
|
33
48
|
echo "✅ Using provided version: $VERSION"
|
|
34
49
|
elif [ -n "${{ github.event.release.tag_name }}" ]; then
|
|
50
|
+
# Release event trigger
|
|
35
51
|
VERSION="${{ github.event.release.tag_name }}"
|
|
36
52
|
# Remove 'v' prefix if present
|
|
37
53
|
VERSION="${VERSION#v}"
|
|
38
|
-
echo "✅ Version from release: $VERSION"
|
|
54
|
+
echo "✅ Version from release event: $VERSION"
|
|
55
|
+
elif [ "${{ github.event_name }}" == "workflow_run" ]; then
|
|
56
|
+
# Workflow run trigger - get latest release tag
|
|
57
|
+
echo "Getting latest release tag..."
|
|
58
|
+
LATEST_TAG=$(gh api repos/${{ github.repository }}/releases/latest --jq '.tag_name' || echo "")
|
|
59
|
+
if [ -n "$LATEST_TAG" ]; then
|
|
60
|
+
VERSION="$LATEST_TAG"
|
|
61
|
+
# Remove 'v' prefix if present
|
|
62
|
+
VERSION="${VERSION#v}"
|
|
63
|
+
echo "✅ Version from latest release: $VERSION"
|
|
64
|
+
else
|
|
65
|
+
echo "❌ Could not get latest release tag"
|
|
66
|
+
exit 1
|
|
67
|
+
fi
|
|
39
68
|
else
|
|
40
69
|
echo "❌ No version provided and no release event found"
|
|
41
70
|
exit 1
|
|
42
71
|
fi
|
|
43
72
|
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
44
|
-
echo "✅
|
|
73
|
+
echo "✅ Final version: $VERSION"
|
|
45
74
|
|
|
46
75
|
- name: Checkout develop branch
|
|
47
76
|
run: |
|