Skip to content

codemeld v0.4.6 (Alpha)

Pre-release
Pre-release

Choose a tag to compare

@francisco1844 francisco1844 released this 20 Oct 16:00

Install: go install codemeld.dev/codemeld/cmd/codemeld@v0.4.6 (Go 1.26.9 or later), or download a
Linux amd64/arm64 binary from this release and check it against SHA256SUMS. Linux is the tested
platform; macOS and FreeBSD build but are untested; Windows is not supported.

Highlights

  • Child agents ask the usual questions. Starting a child agent no longer asks one "delegate"
    question: each edit, delete, move or folder creation it declares gets the same question a direct
    call would, and denying any one refuses the launch. The parent sees a list of everything the child
    was refused.
  • Child agents can create folders. A child agent may create the folders it declares. A cancelled
    or crashed child's empty folders are removed; one left holding other files is reported
    left in place: <dir> at each launch.
  • Recovery after a crashed child agent. If a crashed child moved files that something else
    changed afterwards, the next launch asks once for each group of linked moves: keep them as they are,
    put them all back, or decide later. Put back is offered only when it can be done safely, and the
    answer is saved so it is never asked again.
  • No false "interrupted child agent" warning while another codemeld is still running a child
    agent.
  • Writable folders. While the sandbox is on, Auto edits may write the folders declared in
    writable_folders without asking: sandboxed commands, and codemeld's own edit, create and
    folder-creation tools.
  • Plainer project question. When a folder has its own codemeld settings or version-control
    commands, codemeld now asks "Do you trust ?" and says what a yes allows: commands that
    run, and files that change, without asking you. The answer still defaults to no, and a no still
    starts codemeld without those settings.
  • Clearer agent questions. Each question shows its own background text on its screen, with
    paragraph breaks and a description under each option.

Fixed

  • A repository crafted to replace a settings lock file with a special file (a FIFO) could make
    codemeld hang while it re-read project settings.
  • If a project's .codemeld folder was a symlink, codemeld could create empty settings.yaml.lock /
    settings.local.yaml.lock files in the folder it points to.
  • Sandboxed commands built on tokio (e.g. mise) failed with failed to create UnixStream: PermissionDenied.
  • In Auto mode, a few equivalent spellings of deletion and history-rewrite commands ran without
    the extra confirmation (a path-qualified rm after find -exec, exec inside sh -c,
    hg ci --amend, an abbreviated --amend). They now ask like the usual spellings.
  • Sandboxed commands could fail at random with no such process when another of your programs
    exited at the same moment.

Known issues

  • Crash recovery ignores blocked paths added after the crash. If a child agent moved a folder and
    codemeld crashed, and while codemeld was closed you blocked a path inside the moved folder and
    files were saved there, the next launch's undo moves the folder back to its old name, so those
    files end up at an unblocked path. Until this is fixed, block such a path only after codemeld
    has started again and finished its recovery.