feat(memory): P1 长期记忆升级 —— 异步攒批 Consolidate + 软删 + importance/last_seen #1
@@ -0,0 +1,70 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main, dev]
|
||||
pull_request:
|
||||
branches: [main, dev]
|
||||
|
||||
# 同一分支新 push 取消上一次未完成的运行,省 CI 时间。
|
||||
concurrency:
|
||||
group: ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
go:
|
||||
name: Go · build + vet + test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.25"
|
||||
cache-dependency-path: "**/go.sum"
|
||||
- name: build + vet + test(4 模块;bus 用内嵌 NATS,无需外部服务)
|
||||
run: |
|
||||
set -e
|
||||
for m in sundynix-shared sundynix-gateway sundynix-dispatcher sundynix-mcp-go; do
|
||||
echo "::group::$m"
|
||||
(cd "$m" && go build ./... && go vet ./... && go test ./...)
|
||||
echo "::endgroup::"
|
||||
done
|
||||
|
||||
web:
|
||||
name: Frontend · tsc
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
dir: [sundynix-desktop/frontend, sundynix-admin]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "20"
|
||||
cache: npm
|
||||
cache-dependency-path: ${{ matrix.dir }}/package-lock.json
|
||||
- name: install + typecheck
|
||||
working-directory: ${{ matrix.dir }}
|
||||
run: |
|
||||
npm ci
|
||||
npx tsc --noEmit
|
||||
|
||||
py:
|
||||
name: mcp-py · sandbox guard
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.11"
|
||||
cache: pip
|
||||
- name: install + test(无 Docker 时测降级路径)
|
||||
working-directory: sundynix-mcp-py
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
python -m pip install -e . pytest
|
||||
PYTHONPATH=src:tests python -m pytest tests/ -q || \
|
||||
PYTHONPATH=src:tests python -c "import test_sandbox as t; \
|
||||
fns=[getattr(t,n) for n in dir(t) if n.startswith('test_')]; \
|
||||
[ (f(),print('PASS',f.__name__)) for f in fns ]; print(f'{len(fns)} passed')"
|
||||
Reference in New Issue
Block a user