From 6ccff8a9d79438d93ac7376341e5a54fbe6194e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=B7=E7=94=B5=E8=8A=BD=E8=A1=A3?= Date: Thu, 1 Oct 2026 23:09:59 -0400 Subject: [PATCH] AGENTS and TASKS: status before the system reinstall --- AGENTS.md | 4 ++++ TASKS.md | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 28531c3..c87bddd 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2,6 +2,10 @@ OmaPhoto is the Linux port of Compositor, the macOS app at https://github.com/robbietilton/Compositor. That repository's Swift tree (`Compositor/`, `CompositorTests/`) is the specification; this repository mirrors it. Its checkout at `../Compositor-spec`, pinned to the tag being ported (v1.4.5 since item 13), is where the Swift sources are read; never edit it for OmaPhoto work. +## Status + +Paused on 2026-10-02 for a system reinstall, in the middle of item 13 (Compositor v1.4.5, released as OmaPhoto 1.4.5). Items 13.2 to 13.18 are ported. The release, 13.19, is open, and some review fixes are committed but untested. Read the status lines under 13.19 in `TASKS.md` before any work. They list what is unfinished, the failing tests, the setup after a reinstall and the next steps. Work in this one checkout: no worktrees or copies beside it. + ## Designing or editing a project To make or change an image in a `.comp` project, the source is not needed: read [docs/writing-comp-files.md](docs/writing-comp-files.md). It covers the format, the rules that make a project load, and writing it safely while it is open. [docs/project-format.md](docs/project-format.md) describes the whole format. diff --git a/TASKS.md b/TASKS.md index 431a688..b9043c8 100644 --- a/TASKS.md +++ b/TASKS.md @@ -458,7 +458,15 @@ Reviews for this section ran on codex `gpt-6.1-sol` at `max` (agent `codex-sol`) - [x] 13.18 Version 1.4.5: Camera Raw curves as Photoshop's (`60d9117`): the smooth parametric curve and the per-channel point curves, Refine Saturation's new meaning (0 the RGB curve, −100 brightness alone, above 0 stronger colour) and its words; the graph: a press picks a point, divider or tonal region once and keeps it through the drag, a region drag lifts or lowers that region, dividers move in the bottom strip and stay ordered, point mode picks by distance, adds and drags a new point at once, keeps inner points ordered and moves the end points' outputs alone, the chosen point lit and the readout following it, a new channel or preset clearing the choice. - 13.18 port (agent): the fitted parametric curve, the tone curve per channel, Refine Saturation's new meaning and words; the graph's one drag (`CameraRawColorControls+Curve.cpp`); fixes beyond Swift: a preset drops the chosen point, a point dragged onto its neighbour stays and stays dragged; tests in `CameraRawCurveTests` and `CameraRawCurveGraphTests`. Survivor recorded: the all-zero shortcut. No review yet. - [ ] 13.19 Release OmaPhoto 1.4.5: version, change log, README, AGENTS.md, the acceptance run, distro checks, packages, live installs, the acceptance checklist. -- Stopped 2026-10-02 by the user: every branch merged into main, worktrees removed. Reviews 1 and 2 ran (FAIL on gaps and docs; reports in `~/.cache/omaphoto-review/`). Review 1's fixes (13.7–13.9b, 13.14, 13.15) and review 2's for 13.17 and 13.18 are tested. Review 2's fixes for 13.10–13.13 and 13.16 (`2190a1b`, `70318de`) and the 13.8 `upright` pin (`63e42ac`) are partial and untested; two leftover mutants were reverted from them. Next: build, run the full suite (five suites fail only under parallel `ctest`), finish those fixes, review 3, then this item. +- Status 2026-10-02, stopped for a system reinstall. Main is 19d8737 plus this note, pushed; there are no other branches or worktrees. Items 13.2–13.18 are ported and merged; 13.19 is open. Nothing outside the repository survives the reinstall (`~/.cache/omaphoto-review`, `~/.cache/omaphoto-port`, the `omaphoto-dev` image, `../Compositor-spec`), so this note carries everything. +- Setup after the reinstall: clone https://github.com/robbietilton/Compositor into `../Compositor-spec` and check out tag `v1.4.5`; `scripts/dev.sh build` rebuilds the `omaphoto-dev` image from `Dockerfile.dev`. +- Reviews: two of the ten the user allowed are used. Review 1 (13.7, 13.8, 13.9a, 13.9b, 13.14, 13.15) passed 13.8 and failed the rest on test gaps and stale AGENTS lines; review 2 (13.10–13.13, 13.16–13.18) failed on the same kinds. No crash or wrong output was found. Fixed and tested: all of review 1's, and review 2's for 13.17 and 13.18. +- Committed but neither built nor tested (stopped mid-work; two leftover mutants were reverted from it): + - 13.8: `SharpCanvasTests` pins `LayerRenderer::draw`'s `upright` term (a turned layer near 1:1 must filter) (`63e42ac`). + - 13.10–13.12 (`2190a1b`): tests for Shift's upward-dominant step (`SelectionCanvasTests`), `paintRefusal`'s untested seams (folder/hidden, hidden/mask off, mask off/adjustment, adjustment/empty selection; `PaintRefusalTests`), the mask-alone view across undo and redo and through `setIsMaskSelected` writes (`MaskAloneTests`), and AGENTS lines. Still open: the 12.5b bullet's Select All sentence, the 13.11 bullet's `blurSample` sentence and test names at HEAD, its "row in `NativeLayerListTests`" (the scaled row is in `NativeResolutionPaintTests`), the 8.6 bullet's `blurSample` term, `sizeLabel`'s unreachable "ties to even" claim, and 13.12's pending pixel-gradient case (a pixel gradient must not draw into the mask-alone view). + - 13.13 and 13.16 (`70318de`): a typed Move-bar value then a real canvas press (the field finishes from the event loop on `MouseFocusReason`; `MoveBarPressTests`), the folder case, Alt-centre and long-drag resize snapping and the edge tie (`ResizeSnapTests`, `ResizeSnapCanvasTests`, fixture `MovePressFixtures.h`), the dead one-pixel Liquify "fix" removed, a Liquify dab's scratch allocation caught (skips the dab with a warning), the Radius field's `inf`, `WarpStroke::committedPoints` with its test, `softened`'s mask flag removed, and AGENTS and TASKS lines. +- Known failures: at 81894f7 the full suite under `ctest -j16` failed `ColorRangeTests`, `GuideGridTests`, `GridSettingsSheetTests`, `TypeFontPreviewTests` and `GuideCanvasTests`, each of which passes alone: some state is shared between test processes (suspect `QSettings` or `ToolDefaults` keys). Find and isolate it; never loosen a check. +- Next, in order: build; run the commits above and fix them; run the full suite and fix the parallel failures; review 3 over every fix since 81894f7 (13.8 included); then this item: acceptance run, distro checks (arch, fedora, fedora44, nixos, resolute), the `v1.4.5` tag and release, live installs, and the acceptance checklist. The 1.4.5 version, change log, README and acceptance table (results pending) are already in. ## Skills by phase