Fission-AI/OpenSpec · error · ArchiveBlockedError
archive_validation_failed
archive_validation_failed
Error message
Validation failed for change '${changeName}'. What it means
Error "Validation failed for change '${changeName}'." thrown in Fission-AI/OpenSpec.
Source
Thrown at src/core/archive.ts:1286
const deltaReport = await validator.validateChangeDeltaSpecs(changeDir);
if (!deltaReport.valid) {
hasValidationErrors = true;
if (!json) {
console.log(chalk.red(`\nValidation errors in change delta specs:`));
for (const issue of deltaReport.issues) {
if (issue.level === 'ERROR') {
console.log(chalk.red(` ✗ ${issue.message}`));
} else if (issue.level === 'WARNING') {
console.log(chalk.yellow(` ⚠ ${issue.message}`));
}
}
}
}
}
if (hasValidationErrors) {
if (json) {
throw new ArchiveBlockedError(
'archive_validation_failed',
`Validation failed for change '${changeName}'.`,
`Run ${withStoreFlag(root, `openspec validate ${changeName}`)} for details, fix the errors, or rerun with --no-validate.`
);
}
console.log(chalk.red('\nValidation failed. Please fix the errors before archiving.'));
console.log(chalk.yellow('To skip validation (not recommended), use --no-validate flag.'));
process.exitCode = 1;
return null;
}
} else if (json) {
if (!options.yes) {
throw new ArchiveBlockedError(
'archive_confirmation_required',
'Skipping validation requires confirmation: rerun with --yes.',
withStoreFlag(root, 'openspec archive <change-name> --json --no-validate --yes')
);
}View on GitHub (pinned to 6926ccb18a)
When it happens
Trigger: Thrown at src/core/archive.ts:1286 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Fission-AI/OpenSpec@6926ccb18a (2026-08-25).
Data as JSON: /api/errors/2c2e634333247185.
Report an issue: GitHub.