Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
7a5fa82
feat(macos): package self-contained test client
openai0229 Jul 27, 2026
540fce8
ci(macos): allow authorized test package tags
openai0229 Jul 27, 2026
7ed57f4
ci(macos): refresh Rust toolchain action
openai0229 Jul 27, 2026
cf9ab8a
fix(frontend): keep Community form cloning CSP safe
openai0229 Jul 28, 2026
36ecac6
feat(storage): persist saved Community consoles
openai0229 Jul 28, 2026
78e92d6
feat(web): implement Community Console APIs
openai0229 Jul 28, 2026
c51fdff
feat(desktop): bridge Community SQL execution
openai0229 Jul 28, 2026
eaf21a7
docs: record Community Console milestone
openai0229 Jul 28, 2026
f690f7e
fix(packaging): pin patched Community snapshot
openai0229 Jul 28, 2026
3acf773
perf(client): release inactive result canvases
openai0229 Jul 28, 2026
ffb7eca
fix(packaging): build Community classpath before Java tests
openai0229 Jul 28, 2026
235b0f5
feat(runtime): start Java compatibility engine on demand
openai0229 Jul 28, 2026
9f801cb
docs(runtime): document lazy Java generations
openai0229 Jul 28, 2026
81301c3
feat(mysql): add native mysql_async metadata backend
openai0229 Jul 29, 2026
4199862
feat(mysql): route preview and console select natively
openai0229 Jul 29, 2026
6c74421
test(mysql): prove native product vertical without Java
openai0229 Jul 29, 2026
900f44a
docs(mysql): document native mysql fast path
openai0229 Jul 29, 2026
a3fc9b5
fix(mysql): preserve disabled-engine error precedence
openai0229 Jul 29, 2026
4d60778
docs(mysql): record full native verification
openai0229 Jul 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ jobs:
working-directory: java
env:
CHAT2DB_COMMUNITY_CLASSPATH_DIR: "${{ github.workspace }}/target/community-h2-classpath"
CHAT2DB_COMMUNITY_SOURCE_COMMIT: "f63cbf4a8334b45d9b1fbb268116e4dfc1fad1d7"
CHAT2DB_COMMUNITY_SOURCE_COMMIT: "37a34be858f2566b6b7fcf6c3f64183c1f560853"
run: >-
./mvnw -B -pl compat-runtime
-Dtest='CommunityPluginRegistryTest#realCommunityH2BuildsAndExecutesBoundedDml,CommunityPluginRegistryTest#realCommunityMysqlRejectsBackslashCrossColumnInjection,CommunityPluginRegistryTest#realCommunityMysqlNormalizesBooleanAliasesAndBits,CommunityPluginRegistryTest#realCommunityH2BuildsNamespaceSqlWithoutOpeningJdbc,CommunityPluginRegistryTest#realCommunityMysqlBuildsDatabaseNamespaceSql,CommunityPluginRegistryTest#realCommunityNamespaceMapsUnsupportedAndRejectsOversizedInput,JdbcProtocolLoopTest#communityDmlDispatchDoesNotRequireAJdbcSession,JdbcProtocolLoopTest#communityNamespaceDispatchDoesNotRequireAJdbcSession'
Expand Down Expand Up @@ -186,6 +186,14 @@ jobs:
- uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2.8.1
with:
shared-key: mysql-integration
- name: Verify native MySQL product vertical without Java
env:
MYSQL_TEST_HOST: 127.0.0.1
MYSQL_TEST_PORT: "3306"
MYSQL_TEST_USER: root
MYSQL_TEST_PASSWORD: chat2db-ci-root
MYSQL_TEST_REQUIRED: "1"
run: cargo test -p chat2db-core --test native_mysql_product --locked
- uses: actions/setup-java@c1e323688fd81a25caa38c78aa6df2d33d3e20d9 # v4.7.1
with:
distribution: temurin
Expand Down
82 changes: 82 additions & 0 deletions .github/workflows/macos-package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: macOS Package

on:
push:
tags:
- "macos-test-*"
workflow_dispatch:
inputs:
publish_authorized_artifact:
description: Upload the package only after Object-form authorization is recorded
required: true
type: boolean
default: false

permissions:
contents: read

concurrency:
group: macos-package-${{ github.ref }}
cancel-in-progress: false

jobs:
package:
name: macOS ARM64 self-contained package
runs-on: macos-26
timeout-minutes: 90
steps:
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.2.2
with:
submodules: recursive
- name: Enforce Object-form artifact authorization
if: ${{ (github.event_name == 'push' || inputs.publish_authorized_artifact) && vars.CHAT2DB_OBJECT_DISTRIBUTION_AUTHORIZED != 'true' }}
run: |
echo "Artifact upload requires CHAT2DB_OBJECT_DISTRIBUTION_AUTHORIZED=true" >&2
exit 1
- name: Verify ARM64 runner
run: test "$(uname -m)" = arm64
- uses: dtolnay/rust-toolchain@2c7215f132e9ebf062739d9130488b56d53c060c
with:
toolchain: 1.88.0
components: clippy
- uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2.8.1
with:
shared-key: macos-package-arm64
- uses: actions/setup-java@c1e323688fd81a25caa38c78aa6df2d33d3e20d9 # v4.7.1
with:
distribution: temurin
java-version: "17"
cache: maven
cache-dependency-path: |
java/pom.xml
java/compat-runtime/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-bom/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-spi/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-api/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-plugins/chat2db-community-mysql/pom.xml
third_party/chat2db-community/chat2db-community-server/chat2db-community-plugins/chat2db-community-h2/pom.xml
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: "22.22.2"
cache: npm
cache-dependency-path: apps/frontend/package-lock.json
- name: Install pinned Tauri CLI
run: cargo install tauri-cli --version 2.8.4 --locked
- name: Build and verify self-contained package
run: make macos-package
- name: Add package manifest to summary
run: cat target/macos-package/BUILD-MANIFEST.txt >> "$GITHUB_STEP_SUMMARY"
- name: Upload authorized package
if: ${{ (github.event_name == 'push' || inputs.publish_authorized_artifact) && vars.CHAT2DB_OBJECT_DISTRIBUTION_AUTHORIZED == 'true' }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Chat2DB-Rust-macOS-arm64-${{ github.sha }}
path: |
target/macos-package/*.zip
target/macos-package/*.dmg
target/macos-package/SHA256SUMS
target/macos-package/BUILD-MANIFEST.txt
if-no-files-found: error
compression-level: 0
retention-days: 7
181 changes: 181 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading