fix: stabilize live marketplace loading and card layout #426
Workflow file for this run
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
| name: CI | |
| # build-artifacts.yml is workflow_dispatch-only and builds without testing, so | |
| # nothing ran on a pull request. That is how 4d63d75 landed on main having | |
| # deleted three imported assets: `go vet` stays clean, and only a build or a | |
| # test run reaches those paths. | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| go: | |
| name: Go | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| cache-dependency-path: go.sum | |
| - run: go vet ./... | |
| # -race because the write coordination lock in internal/app is the kind of | |
| # thing a plain run will not exercise. | |
| - run: go test -race ./... | |
| # The Linux CI runner does not provide Wails' GTK/WebKitGTK native | |
| # libraries. The default package graph still checks the portable Go code; | |
| # target-specific release builds run in build-artifacts.yml. | |
| - uses: dominikh/staticcheck-action@v1.4.1 | |
| with: | |
| install-go: false | |
| compliance: | |
| name: Release compliance | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| cache-dependency-path: go.sum | |
| - uses: pnpm/setup@v2 | |
| with: | |
| package-json-file: frontend/package.json | |
| runtime: node@26 | |
| cache: true | |
| cache-dependency-path: frontend/pnpm-lock.yaml | |
| install: false | |
| - name: Install frontend dependencies | |
| working-directory: frontend | |
| run: pnpm install --frozen-lockfile | |
| - name: Test license generator | |
| run: python3 -m unittest scripts/test_generate_third_party_licenses.py | |
| - name: Verify third-party license bundle | |
| run: python3 scripts/generate_third_party_licenses.py --check | |
| docs: | |
| name: Docs | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| # Neither gate below reads Markdown, so a link broken by a file move and | |
| # Chinese left in an English-only doc both land on main unnoticed. | |
| - run: python3 scripts/check-docs.py | |
| - name: markdownlint-cli2-action | |
| uses: DavidAnson/markdownlint-cli2-action@main | |
| with: | |
| fix: true | |
| globs: | | |
| docs/**/*.md | |
| !docs/需求收集会议文档.md | |
| *.md | |
| frontend: | |
| name: Frontend | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| cache-dependency-path: go.sum | |
| - uses: pnpm/setup@v2 | |
| with: | |
| package-json-file: frontend/package.json | |
| runtime: node@26 | |
| cache: true | |
| cache-dependency-path: frontend/pnpm-lock.yaml | |
| install: false | |
| - name: Install frontend dependencies | |
| working-directory: frontend | |
| run: pnpm install --frozen-lockfile | |
| # Includes src/styles/cascade.test.ts, which is the only gate that reads | |
| # CSS. Three layout bugs reached main through duplicate selectors silently | |
| # overriding each other, none of them reachable by a type check or a | |
| # component test. | |
| - name: Test | |
| working-directory: frontend | |
| run: pnpm run test | |
| # Runs tsc --noEmit before vite, so a type error fails here rather than in | |
| # a release build. This is the step that would have caught 4d63d75. | |
| - name: Build | |
| working-directory: frontend | |
| run: pnpm run build | |
| - name: Install browser | |
| working-directory: frontend | |
| run: pnpm exec playwright install --with-deps chromium | |
| - name: Wails E2E | |
| working-directory: frontend | |
| run: pnpm run test:e2e |