CLI: handle overlapping state files
@doc-han is already working on this.
Since Mar 24, 2026.
- Dominant language
- TypeScript
- Stars
- 21
- Forks
- 23
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 17
Description
I've got myself in a position in test where my projects folder has multiple state files for the same project.
For example, maybe I want to do this:
main.json // my main project
standbox.json // my sandbox project
main.backup.json // copy/paste my main project into a backup file
Now there's ambiguity: the Workspace will see two projects with the same id (main and backup). This can mean that, for example, when I run openfn merge, it'll randomly write the merge to one of the main state files - but which?
Also when I've checked out main, how do I know which state file is the right one? We don't really rely on the file names that strongly
How should we handle this?
- Aliases could be key. If each file has an alias, I can properly identify them.
- Where there's ambiguity, we need to throw an error. For example if I do
openfn checkout mainwe should throw, because there's two projects with id main. If use an alias to checkout, it's OK. If I pass a pathname, it's OK. - We could set some convention to ignore files starting with
.or_- that would be neat. Those are always hidden from the Workspace (but can be explicitly referenced.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.