Fission-AI/OpenSpec · error · SchemaValidationError
Duplicate artifact ID: ${artifact.id}
Error message
Duplicate artifact ID: ${artifact.id} What it means
Error "Duplicate artifact ID: ${artifact.id}" thrown in Fission-AI/OpenSpec.
Source
Thrown at src/core/artifact-graph/schema.ts:54
validateNoDuplicateIds(schema.artifacts);
// Check that all requires references are valid
validateRequiresReferences(schema.artifacts);
// Check for cycles
validateNoCycles(schema.artifacts);
return schema;
}
/**
* Validates that there are no duplicate artifact IDs.
*/
function validateNoDuplicateIds(artifacts: Artifact[]): void {
const seen = new Set<string>();
for (const artifact of artifacts) {
if (seen.has(artifact.id)) {
throw new SchemaValidationError(`Duplicate artifact ID: ${artifact.id}`);
}
seen.add(artifact.id);
}
}
/**
* Validates that all `requires` references point to valid artifact IDs.
*/
function validateRequiresReferences(artifacts: Artifact[]): void {
const validIds = new Set(artifacts.map(a => a.id));
for (const artifact of artifacts) {
for (const req of artifact.requires) {
if (!validIds.has(req)) {
throw new SchemaValidationError(
`Invalid dependency reference in artifact '${artifact.id}': '${req}' does not exist`
);
}View on GitHub (pinned to 6926ccb18a)
When it happens
Trigger: Thrown at src/core/artifact-graph/schema.ts:54 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/f3528dc50da7efa3.
Report an issue: GitHub.