Fission-AI/OpenSpec · error · ArchiveBlockedError
archive_change_not_found
archive_change_not_found
Error message
Change '${changeName}' not found. Available changes: ${available.join(', ')} What it means
Error "Change '${changeName}' not found. Available changes: ${available.join(', ')}" thrown in Fission-AI/OpenSpec.
Source
Thrown at src/core/archive.ts:1172
const changeDir = path.join(changesDir, changeName);
// Verify change exists
try {
const stat = await fs.lstat(changeDir);
if (stat.isSymbolicLink()) {
throw new ArchiveBlockedError(
'archive_change_symlink',
`Change '${changeName}' is a symbolic link. Replace it with a real directory before archiving.`
);
}
if (!stat.isDirectory()) {
throw new Error(`Change '${changeName}' not found.`);
}
} catch (error) {
if (error instanceof ArchiveBlockedError) throw error;
const available = await listActiveChangeNames(changesDir);
throw new ArchiveBlockedError(
'archive_change_not_found',
available.length > 0
? `Change '${changeName}' not found. Available changes: ${available.join(', ')}`
: `Change '${changeName}' not found. No active changes exist in this root.`
);
}
const skipValidation = options.validate === false || options.noValidate === true;
// Validate specs and change before archiving
if (!skipValidation) {
const validator = new Validator();
let hasValidationErrors = false;
// Validate proposal.md (informative only; human mode prints warnings)
if (!json) {
const changeFile = path.join(changeDir, 'proposal.md');
try {View on GitHub (pinned to 6926ccb18a)
When it happens
Trigger: Thrown at src/core/archive.ts:1172 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/4999766b93ab865c.
Report an issue: GitHub.