Phase 3 of the decision surface, completing the card (01 ▸ Malformed input, settled 2026-07-31). An attended open's fail-fast walk transforms the loading window's content into one aggregated surface — never a sheet, never a chain: defects grouped by class, each class stated once with its files listed (Reveal in Finder + Open in Editor per row), a class-level default preselected, per-item override behind a disclosure. Only honest choices: YAML and malformed-schema get Editor + Re-check (Skip below the root); newer-than-app gets Skip alone and blocks the board at the root; the two root repairs — minted index, schema: 1 stamp — are defaults. Repair and Open applies fixes in one store-less write bracket and re-walks: clean proceeds, remainder re-aggregates into the same surface. Cancel and ⌘W retire to welcome's row; restored opens never see the surface at all (OpenOrigin rides the PendingOpen carrier). Skips are per-open consent that rides the session — the store retains the skip set and every reload passes it — and the opened board posts a warning-tone notice naming what was left out, each item's Reveal riding the banner strip's new reveal control. On Pro boards the repair bracket binds its own EchoLedger, heal-marks everything, and the store adopts it before the committer starts, so repairs land as one separate commit authored Lanework Integrity — pinned end to end. Also fixed en route: a retired loading window left its close interception installed and returned false from windowShouldClose forever, blocking quit. Claude-Session: https://claude.ai/code/session_01CqjXB7ASoWtbyoGod68k97
4.5 KiB
July 2026
Version 2.0: Lanework's first release — a kanban app whose boards are ordinary folders of Markdown files on your Mac.
Edit a board from any other app, script, or AI agent and the open window updates live; outside edits are first-class, never overwritten.
Cards open in their own window with a formatted preview, a Markdown editor with checkable task lists, and a raw-source view.
Attach files to a card by dropping them onto its face or into its card window.
Drag cards and lanes to rearrange them, move or copy them between boards, or drop files from Finder to create new cards.
Cut, copy, and paste cards and lanes — within a board, across boards, or as plain text into other apps.
Deleted cards land in a trash lane you can show beside your lanes; drag a card out (or cut and paste it) to restore it.
Undo and redo cover every board action, including bringing back a deleted lane with all its cards.
A card window keeps its own undo trail while open; closing it folds everything you did there into one board-level undo step.
Start new boards from ten bundled templates, or save any board as a template of your own.
Search filters the board as you type, and new cards you create clear the filter so they never vanish under it.
Style cards and lanes from a twelve-color palette, tint lanes with a band, and give each board its own background.
The whole app works from the keyboard — arrow-key navigation, drag-free card moves, and Full Keyboard Access on every control.
VoiceOver reads boards as lanes of cards, announces outside changes in one polite digest, and names a focused card that was deleted externally.
Every board gets a guide file teaching AI agents the folder format, kept up to date automatically.
A hand-made card file no longer needs an order or schema line — the card simply lands at the end of its lane until you place it.
Every board carries a .gitignore naming which files count as noise, so system files like .DS_Store stay put instead of being gathered into a card's attachments.
Boards open into their own window right away, with a quiet spinner while a large one is read, and ⌘W cancels an open in progress.
A board that won't open now explains itself in that window, listing every problem file by file and grouped by what's wrong.
Each listed file offers Reveal in Finder and Open in Editor, so you can fix it yourself and press Re-check.
Repair and Open makes the fixes that are safe to make — a folder missing its board file, a board missing its format line — and opens the board.
You can skip a file Lanework can't fix and open the board without it; the board then names what was left out, and asks again next time.
Every card can carry a comment thread, shown beside or below the card's text in its window.
The comment composer keeps its draft inside the board itself, so a half-written comment is waiting whenever and wherever you reopen the card.
Comments render Markdown like the card body, take file drops of their own, and note when they've been edited.
Board search now matches comment text, and ⌘F in a card window steps through matches across the whole thread.
Deleting a comment takes effect immediately, stays undoable in the card's window, and board-level undo can still bring it back after the window closes.
Lanework Pro is an optional subscription in Settings; its first feature — git-backed board history — is included below, with remote sync still to come.
Pro adds git version history to any board from the board popover, with no git installation needed.
A board that's already a git repository opens with its history live automatically — cloning a shared board just works.
Every settled change on a git board becomes a history entry with a plain-language description, like Move card 'Fix login' to Doing.
Edits from agents and other apps are recorded under their own authorship, so a git board's history always says who changed what.
Undo and redo on git boards restore earlier states as new history entries — nothing is ever erased — and the undo trail survives relaunching the app.
Every card window on a git board gains a History section listing the changes that touched that card, newest first.
On git boards, everything done in a card window becomes a single history entry when the window closes.
Switch or create branches from the board popover, with an explicit save-or-discard step protecting unsaved card edits.
The name and email on a board's history entries are editable in the board popover and stored in the board's own repository.