Fission-AI/OpenSpec · error · StoreError
store_register_root_unhealthy
store_register_root_unhealthy
Error message
Store register requires an existing healthy OpenSpec root. ${problems}${emptyCloneHint} What it means
Error "Store register requires an existing healthy OpenSpec root. ${problems}${emptyCloneHint}" thrown in Fission-AI/OpenSpec.
Source
Thrown at src/core/store/operations.ts:778
fix: 'Pass an existing store directory.',
}
);
}
assertNotConfigOnlyPointerRoot(storeRoot);
const openspecRoot = await inspectOpenSpecRoot(storeRoot);
if (!openspecRoot.healthy) {
const problems =
openspecRoot.diagnostics.map((diagnostic) => diagnostic.message).join(' ') ||
'The OpenSpec root is missing or incomplete.';
const isEmptyCloneSuspect =
(await isGitRepositoryAtRoot(storeRoot)) &&
(await gitHasCommits(storeRoot)) === false;
const emptyCloneHint = isEmptyCloneSuspect
? ' This folder is a Git repository with no commits — if it is a clone, the origin store needs an initial commit before the clone has any files.'
: '';
throw new StoreError(
`Store register requires an existing healthy OpenSpec root. ${problems}${emptyCloneHint}`,
'store_register_root_unhealthy',
{
target: 'openspec.root',
fix: isEmptyCloneSuspect
? 'If this is a store clone: commit and push the origin store, pull it into this clone, then rerun register.'
: 'Run openspec store setup for a new store, or point register at a checkout whose openspec/ files are present.',
}
);
}
const metadata = await readStoreMetadataForOperation(storeRoot);
const explicitId = input.id !== undefined ? validateStoreId(input.id) : undefined;
if (metadata && explicitId !== undefined && metadata.id !== explicitId) {
// The fix must account for whether the metadata id is already registered,
// so following it never lands on the already-registered error.
const currentRegistry = await readStoreRegistryState();View on GitHub (pinned to 6926ccb18a)
When it happens
Trigger: Thrown at src/core/store/operations.ts:778 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/e41d738d38832654.
Report an issue: GitHub.