@pmelab/gtd 57.0.0 → 58.1.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.
Files changed (88) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +12 -10
  3. package/dist/chunks/{Schema-C6fLlQzx.mjs → Schema-B3o6eRNU.mjs} +637 -3957
  4. package/dist/chunks/{reserved-X2RkNHin.mjs → reserved-lMYCaapY.mjs} +27 -20
  5. package/dist/chunks/{review-v7sh5GF4.mjs → review-Bfaror38.mjs} +2 -2
  6. package/dist/chunks/{tail-S04KEewi.mjs → tail-Bd7L940p.mjs} +1 -1
  7. package/dist/chunks/testkit-D1-auYau.mjs +10362 -0
  8. package/dist/gtd.bundle.mjs +8 -8
  9. package/dist/testkit/gherkin.mjs +255 -0
  10. package/dist/testkit.mjs +2 -15461
  11. package/dist/workflows/cleanup.mjs +2 -2
  12. package/dist/workflows/feature.mjs +52 -13
  13. package/dist/workflows/fix.mjs +2 -2
  14. package/dist/workflows/review.mjs +3 -3
  15. package/dist/workflows/rollout.mjs +1 -1
  16. package/dist/workflows.mjs +74 -28
  17. package/package.json +8 -1
  18. package/src/cli/Cli.test.ts +1 -1
  19. package/src/cli/History.test.ts +1 -1
  20. package/src/cli/Metrics.test.ts +1 -1
  21. package/src/cli/Program.test.ts +1 -1
  22. package/src/cli/Strays.test.ts +1 -1
  23. package/src/edge/Edge.test.ts +1 -1
  24. package/src/emit/Emit.ts +1 -1
  25. package/src/emit/GitScript.ts +1 -1
  26. package/src/emit/OutcomeScript.ts +1 -1
  27. package/src/{testkit/steps.ts → gherkin/index.ts} +20 -3
  28. package/src/gherkin/module-config.feature +24 -0
  29. package/src/gherkin/tiny.fixture.ts +8 -0
  30. package/src/platform/Git.test.ts +2 -2
  31. package/src/platform/RetainedHistory.test.ts +2 -2
  32. package/src/platform/Workspace.test.ts +2 -2
  33. package/src/platform/WorktreeState.test.ts +1 -1
  34. package/src/step/planStart.test.ts +1 -1
  35. package/src/testkit/TestRepo.ts +7 -4
  36. package/src/testkit/index.ts +15 -9
  37. package/src/{testkit → twins}/Layers.ts +2 -2
  38. package/src/twins/index.ts +8 -0
  39. package/src/workflow/discovery.test.ts +1 -1
  40. package/src/workflow/discovery.ts +3 -3
  41. package/src/workflow/load.ts +3 -3
  42. package/src/workflows/feature/acceptance-criteria.feature +32 -0
  43. package/src/workflows/feature/criteria-coverage.feature +0 -1
  44. package/src/workflows/feature/criteria.ts +10 -4
  45. package/src/workflows/feature/fast-path.feature +4 -0
  46. package/src/workflows/feature/feature.test.ts +3 -39
  47. package/src/workflows/feature/feature.ts +3 -4
  48. package/src/workflows/feature/lens-models.feature +0 -1
  49. package/src/workflows/feature/lens-review.feature +0 -1
  50. package/src/workflows/feature/naive-acceptance.feature +4 -0
  51. package/src/workflows/feature/naive-test.feature +11 -6
  52. package/src/workflows/feature/one-step-land.feature +4 -0
  53. package/src/workflows/feature/planning.ts +2 -0
  54. package/src/workflows/feature/refactor-absorbs.feature +4 -0
  55. package/src/workflows/feature/refactor-first.feature +4 -0
  56. package/src/workflows/feature/refactor-lens-models.feature +4 -0
  57. package/src/workflows/feature/refactor-rebuild.feature +4 -0
  58. package/src/workflows/feature/refactor-review.feature +20 -0
  59. package/src/workflows/feature/release-flag.feature +167 -0
  60. package/src/workflows/feature/release-flag.test.ts +49 -0
  61. package/src/workflows/feature/release-flag.ts +46 -0
  62. package/src/workflows/feature/review-gate.feature +0 -1
  63. package/src/workflows/feature/reviewer-walkthrough.feature +0 -1
  64. package/src/workflows/feature/risk-tier.feature +32 -0
  65. package/src/workflows/feature/seam-rejection.feature +8 -0
  66. package/src/workflows/feature/seam.feature +8 -0
  67. package/src/workflows/feature/seam.test.ts +20 -7
  68. package/src/workflows/feature/seam.ts +7 -7
  69. package/src/workflows/feature/standards.feature +0 -1
  70. package/src/workflows/shared/options.test.ts +3 -10
  71. package/src/workflows/shared/options.ts +0 -9
  72. package/src/workflows/shared/text.test.ts +36 -28
  73. package/src/workflows/shared/text.ts +37 -20
  74. package/src/workflows/shared/vars.ts +0 -1
  75. package/src/workflows/feature/flag-mode.feature +0 -88
  76. /package/src/{testkit → gherkin}/testkit.feature +0 -0
  77. /package/src/{testkit → twins}/EmittedScriptRecognizer.test.ts +0 -0
  78. /package/src/{testkit → twins}/EmittedScriptRecognizer.ts +0 -0
  79. /package/src/{testkit → twins}/EmittedScripts.test.ts +0 -0
  80. /package/src/{testkit → twins}/FakeGitOperations.ts +0 -0
  81. /package/src/{testkit → twins}/FlowScripts.test.ts +0 -0
  82. /package/src/{testkit → twins}/FlowScripts.ts +0 -0
  83. /package/src/{testkit → twins}/GitTiers.test.ts +0 -0
  84. /package/src/{testkit → twins}/GitTiers.ts +0 -0
  85. /package/src/{testkit → twins}/InMemRepo.ts +0 -0
  86. /package/src/{testkit → twins}/Layers.test.ts +0 -0
  87. /package/src/{testkit → twins}/StrictGitOperations.ts +0 -0
  88. /package/src/{testkit → twins}/cliIo.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gtd",
3
- "version": "57.0.0",
3
+ "version": "58.1.0",
4
4
  "description": "Drive the gtd loop inside Claude Code: agent turns run as subagents, gtd decides every beat",
5
5
  "author": {
6
6
  "name": "Philipp Melab"
package/README.md CHANGED
@@ -692,14 +692,15 @@ build, one quality lap, one review — however many criteria it has. Sizing the
692
692
  work is yours: split a change too big for one process into several before the
693
693
  sketch.
694
694
 
695
- **Flag mode (`flagMode`, on by default).** On, the naive pass's judge runs as
696
- above and a rebuilt implementation is asked for a new release flag (none at a
697
- `low` risk tier); a pass the judge lets land is not asked for one. A project
698
- that is not publicly released turns it off explicitly —
699
- `feature({ flagMode: false })` in `gtd.config.ts`, it is never detected: then no
700
- flag is asked for, no seam judge or refactor runs, and the naive pass lands as
701
- the implementation, straight through the health loop and the quality lap. See
702
- [`flagMode`](docs/configuration.md#the-bundled-workflows-settings).
695
+ **Release flags (only when asked for).** A change ships unflagged unless its
696
+ requirements ask for a flag: a `## Release Flag` section in
697
+ `.gtd/REQUIREMENTS.md` reading `new` (a new release flag) or `existing: <NAME>`
698
+ (behind a flag that already exists). Triage writes it only when the sketch asks
699
+ for a flag; you can add, change or delete it at the design gate. With it, the
700
+ naive pass's judge runs as above and the build adds the new flag, or uses the
701
+ named one; without it, no seam judge or refactor runs and the naive pass lands
702
+ as the implementation, straight through the health loop and the quality lap. See
703
+ [Release flags](docs/configuration.md#release-flags).
703
704
 
704
705
  **Risk tier (flag `GTD_FLAG_RISK_TIER=1`, off by default).** Triage proposes a
705
706
  risk tier, `low` or `high`, and the production signals to watch after merge.
@@ -880,10 +881,11 @@ gtd is one package, `@pmelab/gtd`, and every entrypoint shares its version and
880
881
  | `@pmelab/gtd/workflow-kit` | Policy-free building blocks to compose a workflow from: health checks, quality laps, scenario freezing, review tails. |
881
882
  | `@pmelab/gtd/workflows` | Every shipped workflow and all its parts in one module; also resolvable as `@pmelab/gtd/workflow`. |
882
883
  | `@pmelab/gtd/workflows/feature`, `@pmelab/gtd/workflows/review`, `@pmelab/gtd/workflows/fix`, `@pmelab/gtd/workflows/rollout`, `@pmelab/gtd/workflows/cleanup` | One shipped workflow each: its factory as the default export, its parts, and the reserved exports (`defaults`, `envDefaults`, `summary`, `steering`, `skills`, `access`). `gtd install` imports these. |
883
- | `@pmelab/gtd/testkit` | Runs any workflow against the real engine, in an in-memory or a real repository. Needs `vitest` and `quickpickle`, optional peer dependencies. |
884
+ | `@pmelab/gtd/testkit` | Runs any workflow against the real engine in an in-memory repository, under any test runner. See [Testing a workflow](https://github.com/pmelab/gtd/blob/main/docs/testing.md). |
885
+ | `@pmelab/gtd/testkit/gherkin` | The testkit as quickpickle steps for vitest. Needs `vitest` and `quickpickle`, optional peer dependencies. |
884
886
 
885
887
  Types come from the TypeScript sources the package ships. Configs never need an
886
- install for any of these but `./testkit`: gtd resolves a `gtd.config.ts`'s
888
+ install for any of these but the testkit's: gtd resolves a `gtd.config.ts`'s
887
889
  `@pmelab/gtd/*` imports to its own copy.
888
890
 
889
891
  The `gtd` bin's commands — `next`, `land`, `abandon`, `restore`, `validate`,