Skip to content

StateFrame 0.4.29

Choose a tag to compare

@FarsideResearch FarsideResearch released this 05 Nov 21:47
1d45497

StateFrame 0.4.29: repo maps no longer leak between projects.

Fixes

  • Privacy: in environments with an existing, writable /workspace directory (some containers, devcontainers and hosted dev environments), two projects at the same git commit could reuse each other's repository map: file names and function and class signatures, not file contents. Older releases cached maps in a shared folder under /workspace, keyed only by commit. StateFrame no longer uses that folder: the orientation map is always built from the project itself, and the optional disk cache is written only under STATEFRAME_HOME and is keyed by the project root and the contents of its files.
  • Default macOS and Linux setups were not affected: there a normal user cannot create /workspace, so nothing was cached. Affected releases: 0.1.0 through 0.4.28, only in the environments above.
  • If you used StateFrame on more than one project in such an environment, you can delete the repo_map_cache folder that older releases created under /workspace. Nothing reads it anymore.

There are no other changes to StateFrame's behaviour.

Known issues (fixes planned)

  • In-place runs and exported patches can change the line endings or byte-order mark of untouched text files in the edit scope (see KNOWN_LIMITATIONS). A fix is being tested now.
  • Linux: checks that run Go or Node programs fail under StateFrame's check memory limit. macOS is not affected.
  • The first request of a run can differ between runs in one optional orientation section, depending on local cache state.
  • On endpoints without an exact tokenizer, very dense content can be underestimated and push a request past the context limit.