mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-13 23:45:18 +00:00
29 lines
1.4 KiB
TypeScript
29 lines
1.4 KiB
TypeScript
import { existsSync, readFileSync } from 'node:fs'
|
|
import { resolve } from 'node:path'
|
|
import { describe, expect, it } from 'vitest'
|
|
|
|
// Pass 6 (2026-08-25, miss #909): the /testing-audit skill used to disarm the
|
|
// safety-net auto-merge with a manual `gh pr merge --disable-auto` sequence
|
|
// whose order depended on the agent remembering it — the 1st night merged its
|
|
// PR without the human (OPS96 errata). The disarm is now deterministic via
|
|
// `scripts/testing-audit-disarm.mjs` (create → disarm → verify-null, atomic).
|
|
// This spec is the class-3 guard of that wiring: if the skill stops pointing
|
|
// at the script, the build fails and the disarm goes back to judgment-only.
|
|
|
|
const repoRoot = process.cwd()
|
|
const skillPath = resolve(repoRoot, '.agents/skills/testing-audit/SKILL.md')
|
|
const scriptPath = resolve(repoRoot, 'scripts/testing-audit-disarm.mjs')
|
|
|
|
describe('testing-audit disarm wiring (miss #909)', () => {
|
|
it('keeps the /testing-audit skill wired to the deterministic disarm script', () => {
|
|
const skill = readFileSync(skillPath, 'utf8')
|
|
expect(
|
|
skill,
|
|
'Fase 4/5 da skill /testing-audit deve invocar scripts/testing-audit-disarm.mjs (o desarme manual por gh é o miss #909)',
|
|
).toContain('scripts/testing-audit-disarm.mjs')
|
|
})
|
|
|
|
it('keeps the disarm script present in the repo', () => {
|
|
expect(existsSync(scriptPath), 'scripts/testing-audit-disarm.mjs deve existir').toBe(true)
|
|
})
|
|
})
|