# DECISIONS

- **2026-08-14 — Cross-shell rewrite:** ffind becomes a standalone bash
  executable (`/usr/bin/ffind`) that works in any shell (bash/zsh/fish/sh exec it
  as an external binary). No shell-specific function wrappers; the old
  `ffind.fish` function is deleted (users with a stale `~/.config/fish/functions/ffind.fish`
  must remove it so it does not shadow the new binary).
- **2026-08-14 — License:** AGPL-3.0-or-later (user directive). SPDX id used in
  spec + debian.control.
- **2026-08-14 — Versioning:** VERSION file in repo (0.1.0); releases tagged `vX.Y.Z`;
  release.yml derives the tarball name from the tag; watchdog derives OBS version from tag.
- **2026-08-14 — Completion snippets included** (user directive): bash, zsh, fish
  completion files ship in the package (completion files, not functions).
- **2026-08-14 — Package distribution:** noarch shell package built on OBS
  (`home:Baalthasar:ffind`), NOT on Forgejo runners. Source tarball attached to each
  Forgejo release; VPS watchdog uploads it to OBS; release.yml Job B downloads the
  built rpm/deb and attaches them. Mirrors dotbackup, minus the Rust vendor step.
- **2026-08-14 — install.sh from OBS packages:** distro-aware download of the
  matching rpm/deb from the latest release; apt/zypper/dnf install; brew+script
  fallback on macOS; source fallback otherwise. Fixes the old bug where install.sh
  downloaded a nonexistent `ffind.sh`.
- **2026-08-14 — Watchdog forgejo_scm generalization:** tarball names come from
  config (`source_asset`, optional `vendor_asset`); when `vendor_asset` is unset the
  vendor tarball step is skipped. Defaults preserve dotbackup behavior exactly.
