@fledge/workflow 0.7.0 → 0.7.1

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.
@@ -3633,9 +3633,9 @@ const briefFrontmatter = object({
3633
3633
  * Each key maps to the set of states it can transition to.
3634
3634
  *
3635
3635
  * draft → ready: brief skill marks the brief as designed and enriched
3636
- * ready → active: implement skill begins implementation
3636
+ * ready → active: build skill begins building
3637
3637
  * ready → draft: brief needs rework
3638
- * active → completed: implement skill finishes all tasks
3638
+ * active → completed: build skill finishes all tasks
3639
3639
  * draft/ready/active → cancelled: feature is dropped
3640
3640
  */
3641
3641
  const briefTransitions = {
@@ -3664,7 +3664,9 @@ const tasksFrontmatter = object({ tasks: array(object({
3664
3664
  })) });
3665
3665
  //#endregion
3666
3666
  //#region ../cli/dist/brief.js
3667
- const BRIEFS_DIRECTORY = path.join(".fledge", "briefs");
3667
+ const FLEDGE_DIRECTORY = ".fledge";
3668
+ const BRIEFS_DIRECTORY = path.join(FLEDGE_DIRECTORY, "briefs");
3669
+ path.join(FLEDGE_DIRECTORY, "project.md");
3668
3670
  /**
3669
3671
  * Creates a BriefContext from a project directory path or falls back to `cwd()`.
3670
3672
  *
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fledge/workflow",
3
3
  "type": "module",
4
- "version": "0.7.0",
4
+ "version": "0.7.1",
5
5
  "author": "René Schapka",
6
6
  "license": "MIT",
7
7
  "files": [
@@ -15,7 +15,7 @@
15
15
  "node": ">=24"
16
16
  },
17
17
  "dependencies": {
18
- "@fledge/cli": "^0.10.0"
18
+ "@fledge/cli": "^0.11.0"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@antfu/eslint-config": "7.7.3",
@@ -13,12 +13,12 @@ allowed-tools: Bash(node *scripts/brief.js*)
13
13
  The brief skill owns two workflow phases: **Brief** (capture what to build) and **Enrich** (connect to project knowledge). See [docs/workflow.md](../../docs/workflow.md) for the full workflow.
14
14
 
15
15
  ```
16
- Brief → Enrich → [Implement] → [Verify] → [Complete]
17
- └── this skill ──┘ └── implement skill (future) ──────────┘
16
+ Brief → Enrich → [Build] → [Verify] → [Complete]
17
+ └── this skill ──┘ └── build skill (future) ──────────┘
18
18
  ```
19
19
 
20
20
  **States this skill manages:** `draft → ready`
21
- **States managed by the implement skill:** `ready → active → completed`
21
+ **States managed by the build skill:** `ready → active → completed`
22
22
 
23
23
  A brief directory contains three files:
24
24
 
@@ -26,7 +26,7 @@ A brief directory contains three files:
26
26
  .fledge/briefs/<name>/
27
27
  brief.md what, why, scope, design decisions (product-level)
28
28
  spec.md data models, APIs, external services (technical context)
29
- tasks.md implementation tasks (empty until implement phase)
29
+ tasks.md tasks (empty until build phase)
30
30
  ```
31
31
 
32
32
  ## Available scripts
@@ -83,7 +83,7 @@ Write the brief content into `brief.md`. The frontmatter is managed by the scrip
83
83
  - **Scope**: what is included and what is explicitly excluded
84
84
  - **Design decisions**: key choices made during this conversation, with reasoning
85
85
 
86
- Keep it concise. The brief is a reference for implementation, not a specification document. If something is obvious from the code, do not repeat it here.
86
+ Keep it concise. The brief is a reference for building, not a specification document. If something is obvious from the code, do not repeat it here.
87
87
 
88
88
  Proceed to Step 3.
89
89
 
@@ -91,14 +91,20 @@ Proceed to Step 3.
91
91
 
92
92
  ## Step 3: Enrich with project knowledge
93
93
 
94
- Connect the brief to the technical reality of the project. Read the codebase and project knowledge sources to understand:
94
+ Connect the brief to the technical reality of the project. Start by reading `.fledge/project.md` to understand the project landscape. If this file does not exist, suggest running `fledge init` first.
95
95
 
96
- - **Data models**: what existing models does the feature interact with? What new models are needed?
97
- - **APIs**: what endpoints exist? What new endpoints are needed?
98
- - **External services**: what third-party integrations are involved?
99
- - **Domain concepts**: what domain terms and relationships are relevant?
96
+ Walk through each section of `project.md` with the brief in mind:
100
97
 
101
- Write this technical context into `spec.md`. The spec grounds the product-level brief in the project's actual structure. It does **not** include implementation tasks or technology-specific guidance (those come from the implement skill and technology skills).
98
+ 1. **Domain**: which concepts from the glossary does this feature involve? Are there new domain terms that need defining?
99
+ 2. **Data models**: which existing models does the feature interact with? Are new models or fields needed?
100
+ 3. **APIs**: which existing endpoints are relevant? Are new endpoints needed? Do they follow the documented conventions?
101
+ 4. **External services**: does this feature involve any third-party integrations?
102
+ 5. **Conventions**: are there project-specific patterns the build should follow?
103
+ 6. **Stack**: which technology skills are available to guide the build?
104
+
105
+ Write the relevant findings into `spec.md`. The spec grounds the product-level brief in the project's actual structure. It does **not** include tasks or technology-specific guidance (those come from the build skill and technology skills).
106
+
107
+ **Gap detection**: if you discover aspects of the project that are not reflected in `project.md` (an undocumented endpoint, a model that is missing, a domain concept that should be in the glossary), note these gaps and suggest updates to `project.md`. Keeping project knowledge current is part of enrichment.
102
108
 
103
109
  Proceed to Step 4.
104
110
 
@@ -110,7 +116,7 @@ Run `node scripts/brief.js validate <name> --project-dir <path>` to confirm the
110
116
 
111
117
  Present the complete brief (`brief.md`) and spec (`spec.md`) to the user for review.
112
118
 
113
- Once approved, run `node scripts/brief.js ready <name> --project-dir <path>` to transition to ready. The brief is now ready for the implement skill to pick up.
119
+ Once approved, run `node scripts/brief.js ready <name> --project-dir <path>` to transition to ready. The brief is now ready for the build skill to pick up.
114
120
 
115
121
  ---
116
122