@troylar/flightdeck 1.14.0 → 1.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +64 -0
- package/README.md +48 -11
- package/bin/flightdeck.js +448 -81
- package/dist/flightdeck.html +3826 -238
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,70 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- Generated by build.py from src/releases.json. Edit that file, not this one. -->
|
|
4
4
|
|
|
5
|
+
## 1.16.0 · Oct 19, 2026
|
|
6
|
+
|
|
7
|
+
Apply a correction to the draft, then see which version has it.
|
|
8
|
+
|
|
9
|
+
### New
|
|
10
|
+
|
|
11
|
+
- **Review and apply** (Corrections). Review and apply shows what the run's version said, the draft now and the result side by side, then makes the change in the draft and saves it. Only that step changes. If the step changed since the run, you edit or confirm the result first. If the draft already has it, Link this correction records that. A screenshot or a described problem opens the editor at that step instead. *Where:* A process page › Corrections › Review and apply
|
|
12
|
+
- **Choose between two proposals, or combine them** (Corrections). When people suggested different wording for one step, use one of them, or combine them into your own wording. Combining marks each of them as applied. *Where:* Review and apply, on a step with two proposed changes
|
|
13
|
+
- **Undo an applied correction** (Corrections). Applying is one change in the draft editor's history, named for the step, so Undo takes it back. The draft then has unsaved changes until you save it. *Where:* The Undo button in the message, or the draft editor's Undo and History
|
|
14
|
+
- **Changed since applied** (Corrections). A correction applied in Flightdeck remembers what the step said. If the step changes again in the draft, the correction says Changed since applied. *Where:* A process page › Corrections › All
|
|
15
|
+
- **Published in vN** (Corrections). Publishing records which applied corrections the new version includes. A correction then says Published in v5, but only when v5 both lists it and really says it; a later version with other edits never counts. The publish panel says how many corrections the version includes and names any that changed since they were applied. *Where:* A process page › Draft › Publish, and Corrections › All
|
|
16
|
+
- **Changed in vN, and why** (Corrections). In runs of the version that first has a correction, its step says Changed in v5. Why is this here? shows what it said before and after, the reason, the runs that suggested it and who applied it. *Where:* A run › the step's row and the selected step
|
|
17
|
+
- **Hear back about your corrections** (Home). When a correction you suggested is published, Home says so once per version, with View change. When someone declines one, Home says who and why. Dismiss hides it in this browser. *Where:* Home › Your corrections
|
|
18
|
+
- **Say what became of a follow-up** (Follow-ups). Mark a follow-up Done (with a link or note), Moved to a ticket, Moved to another run or plan, or Won't do (with a reason), and Reopen it if that changes. Anyone on the team can. Two people deciding at once shows as Needs review. *Where:* A run › Follow-ups, Home › Your follow-ups, and Runs › Follow-ups
|
|
19
|
+
- **Every follow-up in one list** (Runs). See open follow-ups across all runs, oldest first, with who owns each, how long it's been open and its run. Switch to Yours or All. *Where:* Runs › Follow-ups
|
|
20
|
+
- **Follow-ups open for more than 30 days** (Folder health). Folder health lists follow-ups that have been open for more than 30 days as worth a look, with Review follow-ups. *Where:* Settings › Folder health
|
|
21
|
+
- **Saved history** (Draft editor). History has a This session | Saved history switch. Saved history lists every save of the draft kept in the team folder, from every computer, newest first: who saved it, how (saved, restored from a version, applied a correction), what changed, and where each version was published. A change made outside Flightdeck, by hand or by an AI assistant, is marked where it happened. *Where:* The draft editor › History › Saved history
|
|
22
|
+
- **Reverse a saved change** (Draft editor). Reverse this change takes one saved change back out of the draft, if the lines it added are still there exactly. The draft then has unsaved changes, and Undo takes the reversal back. If the text changed since, Compare shows the change so you can edit it yourself. *Where:* The draft editor › History › Saved history
|
|
23
|
+
- **Saved history of a step type** (Step types). A step type's History has Saved history too, with each save's changes field by field. A field's History shows only its own. *Where:* Step types › a type › History
|
|
24
|
+
|
|
25
|
+
### Improved
|
|
26
|
+
|
|
27
|
+
- **Steps with open corrections are marked while you edit** (Draft editor). The builder's rows say how many open corrections a step has. The Markdown view lists them above the text, with Go to line for each. *Where:* A process page › Edit
|
|
28
|
+
- **Say which version has an older correction** (Corrections). For a correction applied before 1.16, Flightdeck says it can't confirm which version has it. It's in v5 records that, and Flightdeck still checks that v5 makes the change. *Where:* A process page › Corrections › All
|
|
29
|
+
- **The correction brief quotes what the step said and what was proposed** (Corrections). The brief for your AI assistant quotes From and Proposed as data, lists attached files' paths, and leaves out corrections already published. *Where:* A process page › Corrections › Copy correction brief
|
|
30
|
+
- **Your open follow-ups stay until they're dealt with** (Home). Home lists the open follow-ups you own, however old. Once one is done, moved or won't be done, it drops off. *Where:* Home › Your follow-ups
|
|
31
|
+
- **Follow-ups show where they stand** (Receipt). The receipt and the finish page show each follow-up's status, and the text you copy for Jira says what became of it. *Where:* A run › Receipt
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
|
|
35
|
+
- **The example release watches new pods for 20 minutes everywhere** (Examples). The example step's expected result and timing say 20 minutes, and the correction its runs suggest puts the same 20 minutes in its wording. *Where:* The examples › Production release
|
|
36
|
+
|
|
37
|
+
## 1.15.0 · Oct 18, 2026
|
|
38
|
+
|
|
39
|
+
Team confidence: Folder health, a connection check between computers, and safer updates and backups.
|
|
40
|
+
|
|
41
|
+
### New
|
|
42
|
+
|
|
43
|
+
- **Folder health** (Team folder). Flightdeck checks every file in the team folder on request and lists what needs a person: conflict copies, OneDrive's second copies, files that can't be read, versions that never finished arriving, runs left for a week, clocks that are off, a folder getting too big. Each has one button for what to do. Home says when something needs action. *Where:* Settings › Folder health, or a run's More menu
|
|
44
|
+
- **Check the connection between two computers** (Team folder). Send a check from one computer and watch the other answer, with each leg timed and whether both have the same revision of the latest run. While the page is open it answers checks by itself; elsewhere a banner offers Answer. If the two clocks differ, it says by how much at least. *Where:* Settings › Connection check
|
|
45
|
+
- **What to do, inside Flightdeck** (Recovery). The guide for when something goes wrong (conflict copies, lost folder access, OneDrive not syncing, restoring a backup, someone leaving) is in the app. Folder health, a run's conflict copies and the top bar's "can't read it" link straight to the right section. *Where:* Settings › When something goes wrong
|
|
46
|
+
- **See what an update would do first** (Command line). Add --check to install or skills to see what would change, without changing anything. It exits with 0 when there's nothing to do, 2 when updates are ready, and 3 when files need merging, so a script can tell. *Where:* flightdeck install <team folder> --check
|
|
47
|
+
- **Back up a team folder** (Command line). flightdeck backup copies the whole team folder to a dated folder in Flightdeck backups in your home folder, or wherever you name with --to. It never copies links and never puts a backup inside the folder it backs up. *Where:* flightdeck backup <team folder>
|
|
48
|
+
- **Start your team, join, or look around** (Getting started). The first screen offers Start your team, Join your team's folder and Look around the examples. Starting walks you through five steps: a shared folder Flightdeck checks it can save in, your people and a backup owner, a first checklist, a first run on your own, and a second computer. *Where:* The first screen; Settings, Start a new team
|
|
49
|
+
- **Getting started on Home until your team is set up** (Getting started). The folder owner sees Getting started, N of 5, with Continue on the next step. Each step ticks itself from what's in the team folder, and a stamp says when your team is set up. *Where:* Home
|
|
50
|
+
- **Join a team folder and choose who you are** (People). Open the team's folder and pick your name from its people. Not on the list? Copy a request to the folder owner. Joining never changes the people list. *Where:* The first screen, Join your team's folder
|
|
51
|
+
- **A folder owner and backup owner keep the people list** (People). The folder owner and backup owner add people, mark them inactive or active, and choose the backup in Settings. IDs are made from names once and never change, and nobody is ever deleted. A change is refused if people.json changed since you opened the page. Roles prevent ordinary mistakes; they aren't security. *Where:* Settings, People
|
|
52
|
+
- **A backup owner can sign off while the owner is away** (Skills). A checklist can name a backup: owner. While its owner is inactive or gone from the people list, the backup owner signs off versions as ready for a skill. Folder health says when a checklist or the folder needs a new owner. *Where:* The process page, Ready for a skill?
|
|
53
|
+
|
|
54
|
+
### Improved
|
|
55
|
+
|
|
56
|
+
- **install sets up the whole folder, and keeps your changes** (Command line). flightdeck install also adds or updates AGENTS.md and the skills for your AI assistant. Files still at an earlier default are updated; files your team changed are kept. When this version changed them too, the new default goes to .flightdeck/updates/1.15.0/ with a README.md to hand to your AI assistant. Add --app-only to install only the app. *Where:* flightdeck install <team folder>
|
|
57
|
+
- **Install keeps a copy of every file it replaces** (Command line). Before install or skills replaces any file, even with --force, it saves the old one under .flightdeck/updates/<version>/replaced/ and checks the copy, so nothing your team had is lost. *Where:* flightdeck install or skills
|
|
58
|
+
- **AGENTS.md has a place for your team's own notes** (Team folder). Flightdeck's instructions for AI assistants sit between two markers in AGENTS.md. Team notes, below them, are yours: updates never change them. *Where:* AGENTS.md in the team folder
|
|
59
|
+
|
|
60
|
+
### Fixed
|
|
61
|
+
|
|
62
|
+
- **A new team folder's starter checklist names you as owner** (Team folder). The starter checklist names whoever created the folder as its owner, and the folder records which Flightdeck set it up. *Where:* Settings: Start a new team folder
|
|
63
|
+
- **A file that can't be read is listed, not lost from view** (Runs). The run or draft stays as last read and says its file couldn't be read; nothing is changed or saved over it until it reads again. The Runs page, the run itself and Folder health name the file, and the rest of the folder loads as usual.
|
|
64
|
+
- **Two drafts for one process are both shown** (Processes). The process page lists both and says which one it shows, so you settle it before publishing. Folder health lists them too.
|
|
65
|
+
- **Step types and skills past the limit are reported** (Step types). The first ones by name are read, and the Step types and Skills pages and Folder health say how many weren't.
|
|
66
|
+
- **A deleted run is never written back by itself** (Runs). The run says its file is gone from the team folder, the Runs page marks it, and nothing is saved. Restore it here writes it back only when you choose it, and the run's log says so. *Where:* The run, and Settings › Folder health
|
|
67
|
+
- **A run file that reads again stops saying it can't be read** (Runs). As soon as the file reads again, the run says so and takes changes again. Your waiting change stays on screen with Try again until it's saved.
|
|
68
|
+
|
|
5
69
|
## 1.14.0 · Oct 18, 2026
|
|
6
70
|
|
|
7
71
|
Five new step types: Jira sprints, deploys, health checks, GitHub pull requests and measurements.
|
package/README.md
CHANGED
|
@@ -53,12 +53,26 @@ Flightdeck keeps checklists and run records together, links to skills stored els
|
|
|
53
53
|
```bash
|
|
54
54
|
npm install -g @troylar/flightdeck
|
|
55
55
|
|
|
56
|
-
flightdeck open # opens the app
|
|
57
|
-
flightdeck install ~/OneDrive/Team # puts flightdeck.html in your team folder
|
|
58
|
-
flightdeck skills ~/OneDrive/Team # adds the skills for your AI assistant there
|
|
56
|
+
flightdeck open # opens the app: start your team, join one, or look around the examples
|
|
59
57
|
```
|
|
60
58
|
|
|
61
|
-
|
|
59
|
+
**Starting a team?** In the app, choose **Start your team** and pick a new, empty shared OneDrive folder (an empty folder, so nothing already there is replaced). When setup is done, put Flightdeck in that folder so everyone opens the same version:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
flightdeck install ~/OneDrive/Team # adds flightdeck.html; keeps the AGENTS.md and skills setup wrote
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Joining a team?** Open `flightdeck.html` from your team's folder in Edge or Chrome.
|
|
66
|
+
|
|
67
|
+
The first screen offers three ways in:
|
|
68
|
+
|
|
69
|
+
- **Start your team** (the first person): pick an empty shared OneDrive folder (Flightdeck checks it can save there), add your people and a backup owner, publish a first checklist (Code check-in, Weekly review, blank, or one your AI assistant writes), do a first run on your own, then send a teammate the way in and check that their computer answers. Home shows **Getting started · N of 5** until all five are done; each step ticks itself from what's in the folder.
|
|
70
|
+
- **Join your team's folder** (everyone else): open the folder and choose who you are. Not on the list? Copy a request to the folder owner; only the folder owner and backup owner change `people.json`.
|
|
71
|
+
- **Look around the examples**: a made-up team, saved in this browser only.
|
|
72
|
+
|
|
73
|
+
Setup writes `people.json`, `AGENTS.md` and the skills itself; `flightdeck install` afterwards only adds what's missing or still a default. Run it before setup and the folder isn't empty any more, so setup asks for another one.
|
|
74
|
+
|
|
75
|
+
To update later, run `flightdeck install` again: it updates what's still a Flightdeck default and keeps what your team changed. [Updating Flightdeck](docs/updating.md) walks through it, including backups and mixed versions; [When something goes wrong](docs/recovery.md) covers conflict copies, lost folder access and restoring.
|
|
62
76
|
|
|
63
77
|
> **Prefer no npm?** `flightdeck.html` is self-contained. Copy it anywhere and open it.
|
|
64
78
|
|
|
@@ -159,7 +173,7 @@ The **Builder** edits a draft as an outline: drag a step or press Alt+Up / Alt+D
|
|
|
159
173
|
</td>
|
|
160
174
|
<td valign="top">
|
|
161
175
|
|
|
162
|
-
**Corrections** on the process page, grouped by step: the same correction from several runs shows once, "Suggested in 3 runs". Mark one as applied, decline it with a reason, or reopen it, and copy a correction brief for your AI assistant.
|
|
176
|
+
**Corrections** on the process page, grouped by step: the same correction from several runs shows once, "Suggested in 3 runs". **Review and apply** compares what the run's version said, the draft now and the result side by side, then applies it to the draft in one click as one change you can undo; if the draft already has it, **Link this correction**. Mark one as applied, decline it with a reason, or reopen it, and copy a correction brief for your AI assistant. The draft editor marks the steps with open corrections. Publishing records which applied corrections the version includes, so a correction says **Published in v5** once v5 both lists it and says it; runs of v5 show **Changed in v5** on that step, with **Why is this here?**, and Home tells whoever suggested it.
|
|
163
177
|
|
|
164
178
|
<a href="https://github.com/troylar/flightdeck/blob/main/docs/images/corrections-light.png" title="Open in GitHub's image viewer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/troylar/flightdeck/main/docs/images/corrections-dark.png"><img src="https://raw.githubusercontent.com/troylar/flightdeck/main/docs/images/corrections-light.png" alt="Corrections on the process page: a wording change suggested in two runs, with the runs listed, and a missing step, each with Mark as applied and Decline, then Copy correction brief"></picture></a>
|
|
165
179
|
|
|
@@ -231,7 +245,7 @@ A step can **set** a run detail: the merge step records the release tag, and eve
|
|
|
231
245
|
<td valign="top">
|
|
232
246
|
|
|
233
247
|
### Runs that teach the checklist
|
|
234
|
-
Every block, every re-check and every step **done differently** (with what happened) is kept. Anyone in a run can **correct a step**: what the checklist said, what it should say, and files to show why. Corrections are part of the run's record and its receipt, and wait on the process page, where anyone marks them applied or declines them with a reason; one click copies a correction brief for your AI assistant. A process's **How runs go** shows typical time per phase, the steps that go off-script most, and who has never held which role yet, so the next rotation is obvious.
|
|
248
|
+
Every block, every re-check and every step **done differently** (with what happened) is kept. Anyone in a run can **correct a step**: what the checklist said, what it should say, and files to show why. Corrections are part of the run's record and its receipt, and wait on the process page, where anyone applies them to the draft (after a side-by-side comparison), marks them applied or declines them with a reason; one click copies a correction brief for your AI assistant. Once published, a correction says which version has it, and that version's runs say why the step changed. A process's **How runs go** shows typical time per phase, the steps that go off-script most, and who has never held which role yet, so the next rotation is obvious.
|
|
235
249
|
|
|
236
250
|
</td>
|
|
237
251
|
</tr>
|
|
@@ -375,12 +389,21 @@ The same rules are in the `flightdeck-skill-brief` skill for your AI assistant,
|
|
|
375
389
|
| Command | Does |
|
|
376
390
|
|---|---|
|
|
377
391
|
| `flightdeck open` | Opens the app on its built-in examples |
|
|
378
|
-
| `flightdeck install <folder>` | Copies `flightdeck.html` into a team folder. Won't replace a newer
|
|
379
|
-
| `flightdeck skills <folder>` | Adds or updates the skills
|
|
392
|
+
| `flightdeck install <folder>` | Copies `flightdeck.html` into a team folder, and adds or updates `AGENTS.md` and the skills for your AI assistant in `.flightdeck/skills`. Won't replace a newer app or an unrecognized file without `--force`. Also updates a `preflight.html` already there |
|
|
393
|
+
| `flightdeck skills <folder>` | Adds or updates only the skills, in `<folder>/.flightdeck/skills` |
|
|
380
394
|
| `flightdeck skills --to <dir>` | The same, into any other folder you name (absolute or relative), such as your assistant's own skills folder or another repo. `<dir>` is created if it's missing |
|
|
395
|
+
| `flightdeck backup <folder>` | Copies the whole team folder to `~/Flightdeck backups/<folder> backup <date> <time>/`, or under `--to <dir>`. Skips links and temporary files, and refuses a destination inside the folder |
|
|
381
396
|
| `flightdeck path` | Prints where the app file is |
|
|
382
397
|
| `flightdeck version` | Prints the version |
|
|
383
398
|
|
|
399
|
+
| Option | Does |
|
|
400
|
+
|---|---|
|
|
401
|
+
| `--check` | With `install` or `skills`: lists what would change and changes nothing. Exit code 0: nothing to do; 2: updates to install; 3: files your team changed need merging; 1: a problem |
|
|
402
|
+
| `--app-only` | With `install`: copies only `flightdeck.html` |
|
|
403
|
+
| `--force` | Replaces a newer app, an unrecognized file, or files your team changed. Like every install, it first saves a checked copy of each file it replaces in `.flightdeck/updates/<version>/replaced/` |
|
|
404
|
+
|
|
405
|
+
Install and skills sort every `AGENTS.md` and skill file the same way. A file that's still a Flightdeck default (this version's or an earlier one) is updated. A file your team changed is left alone. If this version changed that file's default too, the new default goes to `.flightdeck/updates/<version>/`, with a `README.md` holding a prompt for your AI assistant to merge it. In `AGENTS.md` only the part between the `flightdeck:begin` and `flightdeck:end` markers is Flightdeck's; Team notes, below it, are never touched. `.flightdeck/installed.json` records which defaults the folder is based on; it can make install more careful, never less. Every file install replaces is first copied to `.flightdeck/updates/<version>/replaced/`. A file that changes while install runs is left alone and install exits with 1. Nothing is written through a link or outside the folder (see [Updating Flightdeck](docs/updating.md) for the limits).
|
|
406
|
+
|
|
384
407
|
<br>
|
|
385
408
|
|
|
386
409
|
## The team folder
|
|
@@ -391,20 +414,23 @@ The same rules are in the `flightdeck-skill-brief` skill for your AI assistant,
|
|
|
391
414
|
<summary><b>The folder, as text</b></summary>
|
|
392
415
|
|
|
393
416
|
```
|
|
394
|
-
people.json who's on the team
|
|
417
|
+
people.json who's on the team, with the folder owner and backup owner
|
|
395
418
|
maps/drafts/ checklists being written (Markdown)
|
|
396
419
|
publications/ published versions, frozen (Flightdeck writes these)
|
|
397
420
|
runs/ one folder per run: run.json, everyone's notes and corrections, attached files
|
|
398
421
|
skills/ skill registrations: each skill's source, what it implements
|
|
399
422
|
validations/ owners' sign-offs that a version is ready for a skill
|
|
400
423
|
corrections/ decisions on corrections (applied, declined, reopened, withdrawn), each a file written once
|
|
424
|
+
followups/ what became of each follow-up (done, moved, won't do, reopened), each a file written once
|
|
401
425
|
suggestions/ decisions on suggested fixes from before 1.13 (still read)
|
|
402
426
|
step-types/ your team's own step types (create them in the app)
|
|
403
427
|
jira/workflows.json your real Jira workflows, with required fields
|
|
404
428
|
proposals/ planned runs (from the app or your AI assistant), waiting for a person to start them
|
|
405
429
|
images/ screenshots that checklists refer to
|
|
406
|
-
AGENTS.md the rules any AI assistant follows in this folder
|
|
430
|
+
AGENTS.md the rules any AI assistant follows in this folder (your own go under Team notes)
|
|
407
431
|
.flightdeck/skills/ the Flightdeck skills for your AI assistant
|
|
432
|
+
.flightdeck/installed.json which Flightdeck defaults AGENTS.md and the skills are based on
|
|
433
|
+
.flightdeck/updates/ new defaults waiting to be merged, and copies of files --force replaced
|
|
408
434
|
```
|
|
409
435
|
|
|
410
436
|
</details>
|
|
@@ -415,7 +441,7 @@ Every file has exactly one writer, which keeps ordinary use of a shared folder f
|
|
|
415
441
|
|
|
416
442
|
## Skills for your AI assistant
|
|
417
443
|
|
|
418
|
-
`flightdeck
|
|
444
|
+
`flightdeck install` puts these in the team folder's `.flightdeck/skills/` (`flightdeck skills` does only the skills), or `flightdeck skills --to <dir>` puts them anywhere else. They're plain `SKILL.md` files (a name, a description and instructions), so any assistant that supports skills can use them: install them where your assistant looks for skills, or point it at the folder. Then open the team folder with your assistant and ask for one by name:
|
|
419
445
|
|
|
420
446
|
| Skill | Does |
|
|
421
447
|
|---|---|
|
|
@@ -498,6 +524,17 @@ Select the step and choose **Correct this step** (or press C): change its wordin
|
|
|
498
524
|
|
|
499
525
|
</details>
|
|
500
526
|
|
|
527
|
+
<details>
|
|
528
|
+
<summary><b>Is Flightdeck secure?</b></summary>
|
|
529
|
+
|
|
530
|
+
It's as private as the OneDrive folder it lives in, and no more. There's no server and no sign-in; nothing leaves your computers except through OneDrive.
|
|
531
|
+
|
|
532
|
+
Roles in Flightdeck prevent ordinary mistakes: only the folder owner and backup owner change the people list, and only a checklist's owner (or its backup owner, while the owner is away) signs off a version. They aren't security. Anyone who can open the team folder can change any file in it, with Flightdeck or without. Who can open it is set by how you share it in OneDrive.
|
|
533
|
+
|
|
534
|
+
Keep secrets, tokens and customer data out of checklists, notes and attachments.
|
|
535
|
+
|
|
536
|
+
</details>
|
|
537
|
+
|
|
501
538
|
<details>
|
|
502
539
|
<summary><b>What if someone on the team has a newer Flightdeck?</b></summary>
|
|
503
540
|
|