refactor(protocol): unify raw-node parsing for typed models #76
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # CI workflow for the feature/3.0.x line (JDK 21) | |
| # | |
| # Triggers: | |
| # - push / pull_request on the feature/3.0.x branch | |
| # - manual workflow_dispatch | |
| # | |
| # Runs OpenSpec strict validation for all active changes, then | |
| # `./mvnw -B clean verify` (Maven 4 via the checked-in wrapper — the | |
| # runner's bundled Maven 3 cannot parse the POM 4.1.0 model) which includes | |
| # the JaCoCo coverage gate (90% line coverage, haltOnFailure=false). | |
| name: CI | |
| on: | |
| push: | |
| branches: [feature/3.0.x] | |
| pull_request: | |
| branches: [feature/3.0.x] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| name: JDK 21 Build & Verify | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout source | |
| uses: actions/checkout@v7 | |
| - name: Set up Node.js 22 | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version: '22' | |
| - name: Install OpenSpec CLI | |
| run: npm install --global @fission-ai/openspec@1.13.1 | |
| - name: Validate OpenSpec changes strictly | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| openspec --version | |
| changes=( | |
| kimi-runtime-foundation | |
| kimi-acp-lifecycle-hardening | |
| kimi-typed-protocol | |
| kimi-unified-events | |
| kimi-server-websocket | |
| kimi-process-hardening | |
| kimi-observability | |
| kimi-branch-parity | |
| ) | |
| for change in "${changes[@]}"; do | |
| echo "::group::openspec validate ${change} --strict" | |
| openspec validate "${change}" --type change --strict --no-interactive | |
| echo "::endgroup::" | |
| done | |
| - name: Set up JDK 21 | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: temurin | |
| java-version: '21' | |
| cache: maven | |
| - name: Build and verify with JaCoCo coverage gate | |
| run: ./mvnw -B --no-transfer-progress clean verify | |
| - name: Upload JaCoCo coverage report | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: jacoco-coverage | |
| path: target/site/jacoco | |
| retention-days: 14 | |
| - name: Upload surefire reports | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: surefire-reports | |
| path: target/surefire-reports | |
| retention-days: 14 |