Fission-AI/OpenSpec · error · Error
Spec updates for '${existing}' and '${mutation.update.id}' r
Error message
Spec updates for '${existing}' and '${mutation.update.id}' resolve to the same target ${identity}. Replace the capability alias or combine the deltas before archiving. What it means
Error "Spec updates for '${existing}' and '${mutation.update.id}' resolve to the same target ${identity}. Replace the capability alias or combine the deltas before archiving." thrown in Fission-AI/OpenSpec.
Source
Thrown at src/core/archive.ts:839
const stat = await fs.stat(mutation.update.target, { bigint: true });
return `${stat.dev}:${stat.ino}`;
} catch (error) {
if ((error as NodeJS.ErrnoException).code === 'ENOENT') {
const parent = path.dirname(mutation.update.target);
const realParent = await fs.realpath(parent).catch(() => path.resolve(parent));
return `missing:${path.join(realParent, path.basename(mutation.update.target))}`;
}
throw error;
}
}
async function assertDistinctMutationTargets(mutations: SpecMutation[]): Promise<void> {
const owners = new Map<string, string>();
for (const mutation of mutations) {
const identity = await mutationTargetIdentity(mutation);
const existing = owners.get(identity);
if (existing !== undefined) {
throw new Error(
`Spec updates for '${existing}' and '${mutation.update.id}' resolve to the same target ` +
`${identity}. Replace the capability alias or combine the deltas before archiving.`
);
}
owners.set(identity, mutation.update.id);
}
}
async function captureSpecSnapshots(mutations: SpecMutation[]): Promise<SpecSnapshot[]> {
return Promise.all(
mutations.map(async ({ update, outcome, rebuilt }) => {
try {
const stat = await fs.lstat(update.target);
if (stat.isSymbolicLink()) {
let content: Buffer | undefined;
let contentExisted = false;
if (outcome === 'write') {
try {View on GitHub (pinned to 6926ccb18a)
When it happens
Trigger: Thrown at src/core/archive.ts:839 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/17acfc4e0f8ed1ae.
Report an issue: GitHub.