Skip to content

Commit e4c31ed

Browse files
committed
chore(release): v3.3.0
面板账号池驾驶舱 Phase 1:池事件通知 + 请求卫生层 + 配置 diff 门。 + check-inline-sync 门禁纳入 npm test(防内联镜像漂移)。2639/0 绿。
1 parent bdf269d commit e4c31ed

2 files changed

Lines changed: 20 additions & 1 deletion

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "windsurf-api",
3-
"version": "3.2.9",
3+
"version": "3.3.0",
44
"description": "Windsurf/Devin to OpenAI + Anthropic + Gemini compatible API proxy. Turns Devin's 100+ AI models (Claude, GPT, Gemini, DeepSeek, Grok, Qwen, Kimi, GLM, SWE) into multi-protocol API endpoints. Zero npm runtime dependencies (image codecs vendored under src/vendor).",
55
"type": "module",
66
"main": "src/index.js",

test/check-inline-sync.test.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { describe, it } from 'node:test';
2+
import assert from 'node:assert/strict';
3+
import { spawnSync } from 'node:child_process';
4+
import { fileURLToPath } from 'node:url';
5+
import { dirname, join } from 'node:path';
6+
7+
const ROOT = join(dirname(fileURLToPath(import.meta.url)), '..');
8+
9+
// Guards the inline mirrors (pool-events.js / diff.js ↔ index.html inline copies)
10+
// against silent drift. If someone edits one copy but not the other, the gate
11+
// exits non-zero and this test fails — surfacing the drift in CI, not prod.
12+
describe('check-inline-sync gate', () => {
13+
it('inline dashboard logic stays in sync with its testable modules', () => {
14+
const r = spawnSync(process.execPath, ['src/dashboard/check-inline-sync.js'], {
15+
cwd: ROOT, encoding: 'utf8',
16+
});
17+
assert.equal(r.status, 0, `inline-sync gate failed:\n${r.stdout}\n${r.stderr}`);
18+
});
19+
});

0 commit comments

Comments
 (0)