OpenFn / OpenFn/kit

CLI: handle overlapping state files

Open
#1,119 2 comments 0 reactions 1 assignee View on GitHub

@doc-han is already working on this.

Since Mar 24, 2026.

CLI DevX
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 main we 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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.