mirror of
https://github.com/pbakaus/impeccable.git
synced 2026-09-14 07:06:45 +03:00
* test: harden the test strategy (triggers, runner speed, release guards) Follow-ups from an end-to-end testing strategy review: - Suite triggers are now auto-generated from each suite's own file list, so change-based CI can never miss a test file again (four files were unreachable by their own edits, and tests/lib/detector-bundle.test.js triggered core while running in detector). Two new meta-tests pin the invariant. Hand-written trigger patterns now carry only source paths and fixture dirs; palette dropped from the live triggers since no suite tests it. - The node runner batches all files into one node --test invocation at concurrency 4 instead of spawning per file. Default suite drops from ~159s to ~100s; the live suite soaked clean three times. - scripts/release.mjs gets its first tests: 12 scenarios spawning the real script inside a disposable git repo with a local bare origin, covering every refusal guard plus notes/tweet rendering, all under --dry-run. - skill/scripts/live/ui-core.mjs deleted: zero references repo-wide, superseded by the July live rewrite, yet still shipping to users. cli/lib/download-providers.js annotated with its cross-repo consumers (impeccable-site Pages Functions) so it is not mistaken for dead code. - CLAUDE.md gains an area-to-suite table for the opt-in suites a change owes; AGENTS.md syncs the plugin-e2e commands and obligations. AI-assisted via Claude Code under maintainer direction. Co-Authored-By: Claude Code <noreply@anthropic.com> * fix: exclude peeled tag lines from release-test origin cleanup Copilot: git ls-remote --tags emits ^{} peel lines for annotated tags, which are not deletable refs; --refs filters them so the cleanup loop survives a future scenario that pushes an annotated tag. AI-assisted via Claude Code under maintainer direction. Co-Authored-By: Claude Code <noreply@anthropic.com> --------- Co-authored-by: Claude Code <noreply@anthropic.com>
34 lines
979 B
JavaScript
34 lines
979 B
JavaScript
// Nothing in this repo imports this module. Its consumers are the Cloudflare
|
|
// Pages Functions in the private impeccable-site repo (functions/api/download/
|
|
// bundle/[provider].js and [type]/[provider]/[id].js), which share cli/lib/.
|
|
// Do not remove it as dead code; keep the provider list in sync with the
|
|
// harness dirs the build emits.
|
|
export const FILE_DOWNLOAD_PROVIDER_CONFIG_DIRS = Object.freeze({
|
|
cursor: '.cursor',
|
|
'claude-code': '.claude',
|
|
gemini: '.gemini',
|
|
codex: '.codex',
|
|
agents: '.agents',
|
|
antigravity: '.agent',
|
|
github: '.github',
|
|
grok: '.grok',
|
|
kiro: '.kiro',
|
|
opencode: '.opencode',
|
|
pi: '.pi',
|
|
qoder: '.qoder',
|
|
vibe: '.vibe',
|
|
});
|
|
|
|
export const FILE_DOWNLOAD_PROVIDERS = Object.freeze(
|
|
Object.keys(FILE_DOWNLOAD_PROVIDER_CONFIG_DIRS)
|
|
);
|
|
|
|
export const BUNDLE_DOWNLOAD_PROVIDERS = Object.freeze([
|
|
'universal',
|
|
]);
|
|
|
|
export const DOWNLOAD_PROVIDERS = Object.freeze([
|
|
...FILE_DOWNLOAD_PROVIDERS,
|
|
...BUNDLE_DOWNLOAD_PROVIDERS,
|
|
]);
|