Fission-AI/OpenSpec · error · Error

Change "${changeName}" not found at ${proposalPath}

Error message

Change "${changeName}" not found at ${proposalPath}

What it means

Error "Change "${changeName}" not found at ${proposalPath}" thrown in Fission-AI/OpenSpec.

Source

Thrown at src/commands/change.ts:86

        });
        changeName = selected;
      } else {
        if (changes.length === 0) {
          console.error('No change specified. No active changes found.');
        } else {
          console.error(`No change specified. Available IDs: ${changes.join(', ')}`);
        }
        console.error('Hint: use "openspec change list" to view available changes.');
        process.exitCode = 1;
        return;
      }
    }

    const changeDir = path.join(changesPath, changeName);
    const proposalPath = path.join(changeDir, 'proposal.md');

    if (!isChangeDirectoryName(changesPath, changeDir)) {
      throw new Error(`Change "${changeName}" not found at ${proposalPath}`);
    }

    try {
      await fs.access(proposalPath);
    } catch {
      // A change can exist without a proposal: `openspec new change` scaffolds
      // only .openspec.yaml, and a custom schema need not define a proposal
      // artifact. Say which of the two cases this is instead of reporting a
      // change that does exist as missing. A stray file under changes/ is not a
      // change, and naming it one would point the user at a `status --change`
      // call that cannot work.
      const isChangeDirectory = await fs
        .stat(changeDir)
        .then((stats) => stats.isDirectory())
        .catch(() => false);
      if (isChangeDirectory) {
        throw new Error(
          `Change "${changeName}" has no proposal.md yet. ` +

View on GitHub (pinned to 6926ccb18a)

When it happens

Trigger: Thrown at src/commands/change.ts:86 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/565cd020b1cd39c1. Report an issue: GitHub.