specweave 0.28.0 β 0.28.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.
- package/README.md +64 -72
- package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +6 -2
- package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/github-client-v2.js +28 -8
- package/dist/plugins/specweave-github/lib/github-client-v2.js.map +1 -1
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.d.ts +21 -0
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.js +166 -0
- package/dist/plugins/specweave-github/lib/github-feature-sync-cli.js.map +1 -0
- package/dist/src/core/repo-structure/repo-structure-manager.d.ts +1 -1
- package/dist/src/core/repo-structure/repo-structure-manager.d.ts.map +1 -1
- package/dist/src/core/repo-structure/repo-structure-manager.js +5 -11
- package/dist/src/core/repo-structure/repo-structure-manager.js.map +1 -1
- package/dist/src/core/sync/label-detector.d.ts.map +1 -1
- package/dist/src/core/sync/label-detector.js +22 -9
- package/dist/src/core/sync/label-detector.js.map +1 -1
- package/dist/src/metrics/calculators/deployment-frequency.d.ts +12 -8
- package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +1 -1
- package/dist/src/metrics/calculators/deployment-frequency.js +16 -12
- package/dist/src/metrics/calculators/deployment-frequency.js.map +1 -1
- package/dist/src/metrics/dora-calculator.d.ts +2 -1
- package/dist/src/metrics/dora-calculator.d.ts.map +1 -1
- package/dist/src/metrics/dora-calculator.js +9 -4
- package/dist/src/metrics/dora-calculator.js.map +1 -1
- package/dist/src/metrics/github-client.d.ts +12 -0
- package/dist/src/metrics/github-client.d.ts.map +1 -1
- package/dist/src/metrics/github-client.js +30 -0
- package/dist/src/metrics/github-client.js.map +1 -1
- package/dist/src/sync/sync-coordinator.d.ts +33 -0
- package/dist/src/sync/sync-coordinator.d.ts.map +1 -1
- package/dist/src/sync/sync-coordinator.js +203 -2
- package/dist/src/sync/sync-coordinator.js.map +1 -1
- package/dist/src/utils/env-file-generator.d.ts +8 -23
- package/dist/src/utils/env-file-generator.d.ts.map +1 -1
- package/dist/src/utils/env-file-generator.js +31 -71
- package/dist/src/utils/env-file-generator.js.map +1 -1
- package/package.json +7 -2
- package/plugins/specweave/agents/architect/AGENT.md +2 -2
- package/plugins/specweave/agents/docs-writer/AGENT.md +2 -2
- package/plugins/specweave/agents/pm/AGENT.md +2 -2
- package/plugins/specweave/agents/qa-lead/AGENT.md +2 -2
- package/plugins/specweave/agents/security/AGENT.md +2 -2
- package/plugins/specweave/agents/tdd-orchestrator/AGENT.md +2 -2
- package/plugins/specweave/agents/tech-lead/AGENT.md +2 -2
- package/plugins/specweave/agents/test-aware-planner/AGENT.md +2 -2
- package/plugins/specweave/hooks/post-increment-completion.sh +84 -0
- package/plugins/specweave/hooks/post-increment-planning.sh +114 -7
- package/plugins/specweave/lib/hooks/sync-increment-closure.js +66 -0
- package/plugins/specweave/lib/hooks/sync-increment-closure.ts +111 -0
- package/plugins/specweave-github/lib/github-client-v2.js +32 -8
- package/plugins/specweave-github/lib/github-client-v2.ts +31 -9
- package/plugins/specweave-github/lib/github-feature-sync-cli.js +135 -0
- package/plugins/specweave-github/lib/github-feature-sync-cli.ts +194 -0
- package/plugins/specweave-github/skills/github-issue-standard/SKILL.md +43 -0
- package/plugins/specweave-infrastructure/agents/devops/AGENT.md +2 -2
- package/src/templates/.env.example +9 -26
package/README.md
CHANGED
|
@@ -9,6 +9,24 @@
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
+
## π Built With SpecWeave (Dogfooding)
|
|
13
|
+
|
|
14
|
+
> **SpecWeave is 100% built using SpecWeave.** Every feature, every bug fix, every release β all spec-driven.
|
|
15
|
+
|
|
16
|
+
This isn't just a framework we made β it's the framework we use every day. Our entire development workflow runs on SpecWeave:
|
|
17
|
+
- **60+ completed increments** with full specs, plans, and tasks
|
|
18
|
+
- **Living docs** that auto-update after every task
|
|
19
|
+
- **DORA metrics** tracking real delivery performance
|
|
20
|
+
|
|
21
|
+
[](https://github.com/anton-abyzov/specweave/blob/develop/.specweave/docs/internal/delivery/dora-metrics.md)
|
|
22
|
+
[](https://github.com/anton-abyzov/specweave/blob/develop/.specweave/docs/internal/delivery/dora-metrics.md)
|
|
23
|
+
[](https://github.com/anton-abyzov/specweave/blob/develop/.specweave/docs/internal/delivery/dora-metrics.md)
|
|
24
|
+
[](https://github.com/anton-abyzov/specweave/blob/develop/.specweave/docs/internal/delivery/dora-metrics.md)
|
|
25
|
+
|
|
26
|
+
**[β Live Dashboard](https://spec-weave.com/docs/metrics)** | **[β Detailed Report](https://github.com/anton-abyzov/specweave/blob/develop/.specweave/metrics/dora-report.md)** | **[β Browse Our Increments](https://github.com/anton-abyzov/specweave/tree/develop/.specweave/increments)**
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
12
30
|
## What Makes SpecWeave Different
|
|
13
31
|
|
|
14
32
|
Every AI coding tool promises productivity. But after the chat ends:
|
|
@@ -22,7 +40,11 @@ Every AI coding tool promises productivity. But after the chat ends:
|
|
|
22
40
|
**SpecWeave is the only framework where AI decisions become permanent, searchable documentation.**
|
|
23
41
|
|
|
24
42
|
```
|
|
25
|
-
|
|
43
|
+
ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ
|
|
44
|
+
β Your β β Spec β β Plan β β Tasks β β Code β β Living β
|
|
45
|
+
β Idea βββββΆβ(permanentβββββΆβ(permanentβββββΆβ(permanentβββββΆβ βββββΆβ Docs β
|
|
46
|
+
β β β β) β β β) β β β) β β β β(auto-syncβ
|
|
47
|
+
ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ
|
|
26
48
|
```
|
|
27
49
|
|
|
28
50
|
---
|
|
@@ -31,35 +53,35 @@ Your Idea β Spec (permanent) β Plan (permanent) β Tasks (permanent) β Co
|
|
|
31
53
|
|
|
32
54
|
```mermaid
|
|
33
55
|
flowchart TB
|
|
34
|
-
subgraph INPUT["1.
|
|
35
|
-
A["
|
|
56
|
+
subgraph INPUT["1. TYPE ONE COMMAND"]
|
|
57
|
+
A["/specweave:increment<br/>'Add dark mode'"]
|
|
36
58
|
end
|
|
37
59
|
|
|
38
|
-
subgraph AGENTS["2. AI AGENTS CREATE
|
|
60
|
+
subgraph AGENTS["2. AI AGENTS CREATE"]
|
|
39
61
|
direction TB
|
|
40
|
-
PM["
|
|
41
|
-
ARCH["
|
|
42
|
-
PLAN["
|
|
62
|
+
PM["PM Agent<br/>User stories + ACs"]
|
|
63
|
+
ARCH["Architect Agent<br/>Design + ADRs"]
|
|
64
|
+
PLAN["Planner Agent<br/>Tasks + Tests"]
|
|
43
65
|
PM --> ARCH --> PLAN
|
|
44
66
|
end
|
|
45
67
|
|
|
46
|
-
subgraph OUTPUT["3.
|
|
68
|
+
subgraph OUTPUT["3. PERMANENT FILES"]
|
|
47
69
|
direction LR
|
|
48
|
-
SPEC["
|
|
49
|
-
PLANF["
|
|
50
|
-
TASKS["
|
|
70
|
+
SPEC["spec.md<br/>WHAT"]
|
|
71
|
+
PLANF["plan.md<br/>HOW"]
|
|
72
|
+
TASKS["tasks.md<br/>DO"]
|
|
51
73
|
end
|
|
52
74
|
|
|
53
|
-
subgraph EXECUTE["4.
|
|
54
|
-
B["
|
|
75
|
+
subgraph EXECUTE["4. BUILD"]
|
|
76
|
+
B["/specweave:do<br/>Autonomous execution"]
|
|
55
77
|
end
|
|
56
78
|
|
|
57
|
-
subgraph SYNC["5. AUTO-SYNC
|
|
79
|
+
subgraph SYNC["5. AUTO-SYNC"]
|
|
58
80
|
direction LR
|
|
59
|
-
GH["
|
|
60
|
-
JIRA["
|
|
61
|
-
ADO["
|
|
62
|
-
DOCS["
|
|
81
|
+
GH["GitHub"]
|
|
82
|
+
JIRA["JIRA"]
|
|
83
|
+
ADO["ADO"]
|
|
84
|
+
DOCS["Docs"]
|
|
63
85
|
end
|
|
64
86
|
|
|
65
87
|
INPUT --> AGENTS
|
|
@@ -86,37 +108,26 @@ specweave init .
|
|
|
86
108
|
|
|
87
109
|
Then in Claude Code:
|
|
88
110
|
```bash
|
|
89
|
-
/specweave:increment "
|
|
90
|
-
/specweave:do
|
|
91
|
-
/specweave:done 0001
|
|
111
|
+
/specweave:increment "Add dark mode toggle" # AI creates spec + plan + tasks
|
|
112
|
+
/specweave:do # Autonomous implementation
|
|
113
|
+
/specweave:done 0001 # Quality-validated completion
|
|
92
114
|
```
|
|
93
115
|
|
|
116
|
+
**Pro tip**: Use `/specweave:next` to flow through the entire cycle. One command auto-closes completed work and suggests what's next β review specs/tasks when needed, otherwise just keep clicking "next".
|
|
117
|
+
|
|
94
118
|
**[Full Quickstart Guide](https://spec-weave.com/docs/guides/getting-started/quickstart)**
|
|
95
119
|
|
|
96
120
|
---
|
|
97
121
|
|
|
98
|
-
##
|
|
99
|
-
|
|
100
|
-
### vs. BMAD Method (18K GitHub Stars)
|
|
101
|
-
|
|
102
|
-
| Aspect | BMAD | SpecWeave |
|
|
103
|
-
|--------|------|-----------|
|
|
104
|
-
| **Focus** | Greenfield microservices | **Brownfield + Greenfield** |
|
|
105
|
-
| **Context Efficiency** | Context crashes documented | **70%+ token reduction** |
|
|
106
|
-
| **Multi-Repo** | Single repo focus | **Multi-project mode** |
|
|
107
|
-
| **External Sync** | None | **GitHub/JIRA/ADO bidirectional** |
|
|
108
|
-
| **Quality Gates** | Optional | **3-gate PM validation** |
|
|
109
|
-
| **Learning Curve** | Steep (YAML/agents) | Medium (CLI commands) |
|
|
122
|
+
## Key Strengths
|
|
110
123
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
| **Human Oversight** | Batch execution | **Milestone validation** |
|
|
119
|
-
| **Enterprise Features** | None | **Compliance, multi-team, DORA** |
|
|
124
|
+
- **Brownfield + Greenfield** β Works with existing codebases, not just new projects
|
|
125
|
+
- **70%+ Token Reduction** β Progressive loading, context optimizer, sub-agent isolation
|
|
126
|
+
- **Multi-Project Mode** β Manage multiple repos with shared specs and cross-project sync
|
|
127
|
+
- **Bidirectional Sync** β GitHub Issues, JIRA, Azure DevOps stay in sync automatically
|
|
128
|
+
- **3-Gate Quality Validation** β Tasks, tests (60%+), and docs verified before closing
|
|
129
|
+
- **15+ Specialized Agents** β PM, Architect, Tech Lead, QA, Security, DevOps work autonomously
|
|
130
|
+
- **Living Documentation** β Specs auto-update after every task via hooks
|
|
120
131
|
|
|
121
132
|
---
|
|
122
133
|
|
|
@@ -172,31 +183,12 @@ flowchart LR
|
|
|
172
183
|
|
|
173
184
|
---
|
|
174
185
|
|
|
175
|
-
## DORA Metrics Integration
|
|
176
|
-
|
|
177
|
-
SpecWeave automatically calculates your team's [DORA metrics](https://dora.dev/) from GitHub data:
|
|
178
|
-
|
|
179
|
-
```bash
|
|
180
|
-
npm run metrics:dora
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
| Metric | What It Measures | Elite Performance |
|
|
184
|
-
|--------|------------------|-------------------|
|
|
185
|
-
| **Deployment Frequency** | How often you release | Multiple per day |
|
|
186
|
-
| **Lead Time for Changes** | Commit to production | Less than 1 day |
|
|
187
|
-
| **Change Failure Rate** | % of releases causing issues | 0-15% |
|
|
188
|
-
| **Mean Time to Recovery** | Time to restore service | Less than 1 hour |
|
|
189
|
-
|
|
190
|
-
**Connect your spec-driven workflow directly to industry-standard metrics.**
|
|
191
|
-
|
|
192
|
-
---
|
|
193
|
-
|
|
194
186
|
## The Three-File Foundation
|
|
195
187
|
|
|
196
188
|
Every feature generates three permanent files:
|
|
197
189
|
|
|
198
190
|
```
|
|
199
|
-
.specweave/increments/0001-
|
|
191
|
+
.specweave/increments/0001-dark-mode/
|
|
200
192
|
βββ spec.md β WHAT: User stories, acceptance criteria, requirements
|
|
201
193
|
βββ plan.md β HOW: Architecture, tech decisions, ADRs
|
|
202
194
|
βββ tasks.md β DO: Implementation tasks with embedded tests
|
|
@@ -206,26 +198,26 @@ Every feature generates three permanent files:
|
|
|
206
198
|
```markdown
|
|
207
199
|
## User Stories
|
|
208
200
|
|
|
209
|
-
### US-001:
|
|
210
|
-
As a user, I want to
|
|
201
|
+
### US-001: Dark Mode Toggle
|
|
202
|
+
As a user, I want to toggle dark mode so that I can reduce eye strain at night.
|
|
211
203
|
|
|
212
204
|
**Acceptance Criteria:**
|
|
213
|
-
- [x] AC-US1-01:
|
|
214
|
-
- [x] AC-US1-02:
|
|
215
|
-
- [ ] AC-US1-03:
|
|
205
|
+
- [x] AC-US1-01: Toggle switch in settings persists preference
|
|
206
|
+
- [x] AC-US1-02: Theme applies to all components instantly
|
|
207
|
+
- [ ] AC-US1-03: System preference detected on first visit
|
|
216
208
|
```
|
|
217
209
|
|
|
218
210
|
### tasks.md (DO)
|
|
219
211
|
```markdown
|
|
220
|
-
### T-001: Implement
|
|
212
|
+
### T-001: Implement Theme Provider
|
|
221
213
|
**User Story**: US-001
|
|
222
214
|
**Satisfies ACs**: AC-US1-01, AC-US1-02
|
|
223
215
|
**Status**: [x] completed
|
|
224
216
|
|
|
225
217
|
**Embedded Tests** (AC-US1-01):
|
|
226
|
-
-
|
|
227
|
-
-
|
|
228
|
-
-
|
|
218
|
+
- test_theme_toggle_persists_to_localstorage
|
|
219
|
+
- test_theme_applies_to_all_components
|
|
220
|
+
- test_toggle_updates_ui_instantly
|
|
229
221
|
```
|
|
230
222
|
|
|
231
223
|
---
|
|
@@ -319,7 +311,7 @@ Import from Notion, Confluence, GitHub Wiki. AI classifies docs automatically an
|
|
|
319
311
|
## Requirements
|
|
320
312
|
|
|
321
313
|
- Node.js 20+
|
|
322
|
-
- Claude Code (recommended)
|
|
314
|
+
- Claude Code with **Claude Opus 4.5** (recommended) β [released Nov 2025](https://www.anthropic.com/news/claude-opus-4-5)
|
|
323
315
|
- Git repository
|
|
324
316
|
|
|
325
317
|
---
|
|
@@ -56,10 +56,14 @@ export declare class GitHubClientV2 {
|
|
|
56
56
|
* Validate issue title format
|
|
57
57
|
*
|
|
58
58
|
* CRITICAL: Enforces correct data flow architecture
|
|
59
|
-
* - β
CORRECT: "US-
|
|
59
|
+
* - β
CORRECT: "[FS-XXX][US-YYY] Title" (User Story - STANDARD)
|
|
60
|
+
* - β
CORRECT: "[FS-XXX] Title" (Feature-level, rare)
|
|
60
61
|
* - β WRONG: "[Increment XXXX] Title" (deprecated old format)
|
|
62
|
+
* - β WRONG: "[BUG] Title" (type prefixes are labels, not title)
|
|
63
|
+
* - β WRONG: "[HOTFIX] Title" (type prefixes are labels, not title)
|
|
64
|
+
* - β WRONG: "[FEATURE] Title" (type prefixes are labels, not title)
|
|
61
65
|
*
|
|
62
|
-
* @throws Error if title uses
|
|
66
|
+
* @throws Error if title uses invalid format
|
|
63
67
|
*/
|
|
64
68
|
private validateIssueTitle;
|
|
65
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-client-v2.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-client-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,WAAW,EAAgB,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAElG,qBAAa,cAAc;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;gBACS,OAAO,EAAE,WAAW;IAWhC;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc;IAU5D;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,OAAO,IAAI,MAAM;IAQjB;;OAEG;WACU,QAAQ,IAAI,OAAO,CAAC;QAC/B,SAAS,EAAE,OAAO,CAAC;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAwBF;;OAEG;WACU,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IA4BpF;;OAEG;IACG,oBAAoB,CACxB,KAAK,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,MAAM,EACpB,WAAW,GAAE,MAAU,GACtB,OAAO,CAAC,eAAe,CAAC;IAqC3B;;OAEG;YACW,mBAAmB;IAqBjC
|
|
1
|
+
{"version":3,"file":"github-client-v2.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-client-v2.ts"],"names":[],"mappings":"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"}
|
|
@@ -152,24 +152,44 @@ export class GitHubClientV2 {
|
|
|
152
152
|
* Validate issue title format
|
|
153
153
|
*
|
|
154
154
|
* CRITICAL: Enforces correct data flow architecture
|
|
155
|
-
* - β
CORRECT: "US-
|
|
155
|
+
* - β
CORRECT: "[FS-XXX][US-YYY] Title" (User Story - STANDARD)
|
|
156
|
+
* - β
CORRECT: "[FS-XXX] Title" (Feature-level, rare)
|
|
156
157
|
* - β WRONG: "[Increment XXXX] Title" (deprecated old format)
|
|
158
|
+
* - β WRONG: "[BUG] Title" (type prefixes are labels, not title)
|
|
159
|
+
* - β WRONG: "[HOTFIX] Title" (type prefixes are labels, not title)
|
|
160
|
+
* - β WRONG: "[FEATURE] Title" (type prefixes are labels, not title)
|
|
157
161
|
*
|
|
158
|
-
* @throws Error if title uses
|
|
162
|
+
* @throws Error if title uses invalid format
|
|
159
163
|
*/
|
|
160
164
|
validateIssueTitle(title) {
|
|
161
165
|
// Check for deprecated [Increment XXXX] format
|
|
162
|
-
const
|
|
163
|
-
if (
|
|
166
|
+
const deprecatedIncrementPattern = /\[Increment\s+\d+\]/i;
|
|
167
|
+
if (deprecatedIncrementPattern.test(title)) {
|
|
164
168
|
throw new Error(`β DEPRECATED FORMAT DETECTED: "${title}"\n\n` +
|
|
165
169
|
`GitHub issues MUST use living docs format:\n` +
|
|
166
|
-
` β
CORRECT: "US-
|
|
167
|
-
` β
CORRECT: "FS-YY-MM-DD: Title" (Feature Spec)\n` +
|
|
170
|
+
` β
CORRECT: "[FS-XXX][US-YYY] Title" (User Story)\n` +
|
|
168
171
|
` β WRONG: "[Increment XXXX] Title" (old format)\n\n` +
|
|
169
172
|
`WHY: Correct data flow is: Increment β Living Docs β GitHub\n` +
|
|
170
173
|
` Living docs are the source of truth for GitHub sync.\n\n` +
|
|
171
|
-
`FIX: Use /specweave:sync-docs to generate living docs, then sync to GitHub
|
|
172
|
-
|
|
174
|
+
`FIX: Use /specweave:sync-docs to generate living docs, then sync to GitHub.`);
|
|
175
|
+
}
|
|
176
|
+
// Check for type-based prefixes (CRITICAL FIX for issue #749)
|
|
177
|
+
// These prefixes belong as LABELS, not in the issue title!
|
|
178
|
+
const typePrefixPattern = /^\[(BUG|HOTFIX|FEATURE|DOCS|REFACTOR|CHORE|EXPERIMENT|Bug|Hotfix|Feature|Docs|Refactor|Chore|Experiment)\]/i;
|
|
179
|
+
if (typePrefixPattern.test(title)) {
|
|
180
|
+
const match = title.match(typePrefixPattern);
|
|
181
|
+
const badPrefix = match ? match[0] : '[TYPE]';
|
|
182
|
+
throw new Error(`β INVALID TITLE FORMAT: "${title}"\n\n` +
|
|
183
|
+
`Type prefixes like ${badPrefix} belong as LABELS, not in the title!\n\n` +
|
|
184
|
+
`GitHub issues MUST use this format:\n` +
|
|
185
|
+
` β
CORRECT: "[FS-XXX][US-YYY] Title" (User Story)\n` +
|
|
186
|
+
` β WRONG: "${badPrefix} Title" (use 'bug' label instead)\n\n` +
|
|
187
|
+
`WHY: All SpecWeave issues follow [FS-XXX][US-YYY] format for traceability.\n` +
|
|
188
|
+
` Use GitHub labels for categorization (bug, enhancement, etc.).\n\n` +
|
|
189
|
+
`FIX:\n` +
|
|
190
|
+
` 1. Link this work to a Feature (FS-XXX) and User Story (US-YYY)\n` +
|
|
191
|
+
` 2. Use /specweave-github:sync to create issue with correct format\n` +
|
|
192
|
+
` 3. Add '${match ? match[1].toLowerCase() : 'bug'}' as a label instead`);
|
|
173
193
|
}
|
|
174
194
|
}
|
|
175
195
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-client-v2.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-client-v2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"github-client-v2.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-client-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAIxE,MAAM,OAAO,cAAc;IAKzB;;OAEG;IACH,YAAY,OAAoB;QAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAsB,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,KAAa,EAAE,IAAY;QACzC,MAAM,OAAO,GAAgB;YAC3B,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE;YAC/B,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACvB,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;SACxC,CAAC;QACF,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,6EAA6E;IAC7E,yBAAyB;IACzB,6EAA6E;IAE7E;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,QAAQ;QAKnB,qBAAqB;QACrB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,IAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,aAAa,EAAE,KAAK;gBACpB,KAAK,EAAE,sEAAsE;aAC9E,CAAC;QACJ,CAAC;QAED,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClE,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,SAAS,EAAE,IAAI;gBACf,aAAa,EAAE,KAAK;gBACpB,KAAK,EAAE,kDAAkD;aAC1D,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAY;QAClC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE;YAC1C,QAAQ;YACR,SAAS;YACT,QAAQ;SACT,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAEZ,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAEpE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;SACf,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,aAAa;IACb,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,oBAAoB,CACxB,KAAa,EACb,WAAoB,EACpB,cAAsB,CAAC;QAEvB,oCAAoC;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,qBAAqB;QACrB,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAEzC,oBAAoB;QACpB,MAAM,IAAI,GAAG;YACX,KAAK;YACL,SAAS,IAAI,CAAC,QAAQ,aAAa;YACnC,IAAI;YACJ,SAAS,KAAK,EAAE;YAChB,IAAI;YACJ,UAAU,UAAU,EAAE;YACtB,MAAM;YACN,6FAA6F;SAC9F,CAAC;QAEF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,WAAW,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEjD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,KAAa;QAEb,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,KAAK;YACL,SAAS,IAAI,CAAC,QAAQ,aAAa;YACnC,MAAM;YACN,yBAAyB,KAAK,iFAAiF;SAChH,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,6EAA6E;IAC7E,SAAS;IACT,6EAA6E;IAE7E;;;;;;;;;;;;OAYG;IACK,kBAAkB,CAAC,KAAa;QACtC,+CAA+C;QAC/C,MAAM,0BAA0B,GAAG,sBAAsB,CAAC;QAC1D,IAAI,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CACb,kCAAkC,KAAK,OAAO;gBAC9C,8CAA8C;gBAC9C,sDAAsD;gBACtD,sDAAsD;gBACtD,+DAA+D;gBAC/D,gEAAgE;gBAChE,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QAED,8DAA8D;QAC9D,2DAA2D;QAC3D,MAAM,iBAAiB,GAAG,6GAA6G,CAAC;QACxI,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC9C,MAAM,IAAI,KAAK,CACb,4BAA4B,KAAK,OAAO;gBACxC,sBAAsB,SAAS,0CAA0C;gBACzE,uCAAuC;gBACvC,sDAAsD;gBACtD,eAAe,SAAS,uCAAuC;gBAC/D,8EAA8E;gBAC9E,yEAAyE;gBACzE,QAAQ;gBACR,qEAAqE;gBACrE,uEAAuE;gBACvE,aAAa,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,sBAAsB,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAO1B;QACC,uCAAuC;QACvC,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,WAAW,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;QAEtF,mEAAmE;QACnE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QAEtC,qCAAqC;QACrC,OAAO,MAAM,IAAI,CAAC,eAAe,CAC/B,cAAc,EACd,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,SAAS,IAAI,SAAS,EAC7B,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,IAAY,EACZ,SAA2B,EAC3B,SAAmB,EAAE;QAErB,wCAAwC;QACxC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG;YACX,OAAO;YACP,QAAQ;YACR,QAAQ;YACR,IAAI,CAAC,QAAQ;YACb,SAAS;YACT,KAAK;YACL,QAAQ;YACR,IAAI;SACL,CAAC;QAEF,aAAa;QACb,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,gBAAgB;QAChB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,8CAA8C;YAC9C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAClC,yCAAyC;gBACzC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;oBAC3C,KAAK;oBACL,SAAS,IAAI,CAAC,QAAQ,eAAe,SAAS,EAAE;oBAChD,MAAM;oBACN,QAAQ;iBACT,CAAC,CAAC;gBAEH,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnD,CAAC;gBACD,qEAAqE;YACvE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvD,IAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,gCAAgC,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,EAAE,CAC7E,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAEnE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,sBAAsB;QACtB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,IAAY,EACZ,UAAkB,EAClB,SAA2B,EAC3B,SAAmB,EAAE;QAErB,6BAA6B;QAC7B,MAAM,YAAY,GAAG,iBAAiB,UAAU,OAAO,IAAI,EAAE,CAAC;QAE9D,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,WAAmB;QAChC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,OAAO;YACP,MAAM;YACN,MAAM,CAAC,WAAW,CAAC;YACnB,QAAQ;YACR,IAAI,CAAC,QAAQ;YACb,QAAQ;YACR,8CAA8C;SAC/C,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,wBAAwB,WAAW,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CACzE,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,OAAO;YACL,GAAG,KAAK;YACR,QAAQ,EAAE,KAAK,CAAC,GAAG;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;SACpD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAa;QACpC,8CAA8C;QAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,OAAO;YACP,MAAM;YACN,QAAQ;YACR,IAAI,CAAC,QAAQ;YACb,UAAU;YACV,IAAI,YAAY,YAAY;YAC5B,QAAQ;YACR,+BAA+B;YAC/B,SAAS;YACT,IAAI,EAAG,kEAAkE;SAC1E,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,kDAAkD;YAClD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2BAA2B;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO;YACL,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,EAAE,EAAE,iCAAiC;YAC3C,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,GAAG;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;SACpD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAe;QACxD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,OAAO;YACP,MAAM;YACN,MAAM,CAAC,WAAW,CAAC;YACnB,QAAQ;YACR,IAAI,CAAC,QAAQ;YACb,QAAQ;YACR,OAAO;SACR,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,2BAA2B,WAAW,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,OAAgB;QACpD,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,OAAO;YACP,OAAO;YACP,MAAM,CAAC,WAAW,CAAC;YACnB,QAAQ;YACR,IAAI,CAAC,QAAQ;SACd,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,0BAA0B,WAAW,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAC3E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,OAAe;QACnD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,OAAO;YACP,SAAS;YACT,MAAM,CAAC,WAAW,CAAC;YACnB,QAAQ;YACR,IAAI,CAAC,QAAQ;YACb,QAAQ;YACR,OAAO;SACR,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,mCAAmC,WAAW,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,0DAA0D;QAC1D,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,KAAK;YACL,SAAS,IAAI,CAAC,QAAQ,WAAW,WAAW,WAAW;YACvD,MAAM;YACN,4CAA4C,EAAG,wBAAwB;SACxE,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,mDAAmD;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1B,+BAA+B;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,MAAgB;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEhC,MAAM,IAAI,GAAG;YACX,OAAO;YACP,MAAM;YACN,MAAM,CAAC,WAAW,CAAC;YACnB,QAAQ;YACR,IAAI,CAAC,QAAQ;SACd,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEjD,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,kCAAkC,WAAW,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CACnF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,uBAAuB;IACvB,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,SAA0B,EAC1B,WAAoB,EACpB,SAAkB;QAElB,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAEpF,sBAAsB;QACtB,MAAM,KAAK,GAAG,QAAQ,IAAI,CAAC,QAAQ,qBAAqB,KAAK,KAAK,KAAK,EAAE,CAAC;QAE1E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,QAAQ;YACR,QAAQ;YACR,KAAK;YACL,QAAQ;YACR,8CAA8C;YAC9C,SAAS;YACT,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,0BAA0B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAC3D,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;YACjC,GAAG,KAAK;YACR,QAAQ,EAAE,KAAK,CAAC,GAAG;YACnB,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;SACpD,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,SAA0B,EAC1B,WAAoB,EACpB,SAAkB;QAElB,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YACxB,OAAO;gBACL,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC9C,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO;gBACL,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC3D,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,iCAAiC;QACjC,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,IAAI;gBACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,IAAI;gBACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClC,MAAM;YACR,KAAK,IAAI;gBACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,IAAI;gBACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,IAAI;gBACP,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,IAAI;gBACP,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzC,MAAM;QACV,CAAC;QAED,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxC,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACvC,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,gBAAgB;IAChB,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,cAAc;QAKlB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;YACzC,KAAK;YACL,YAAY;YACZ,MAAM;YACN,+DAA+D;SAChE,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,+BAA+B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAChE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO;YACL,GAAG,IAAI;YACP,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,mBAAmB;IACnB,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,iBAAiB,CACrB,MAAiE,EACjE,SAA2B,EAC3B,UAAmB,EACnB,UAAoD,EAAE;QAEtD,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QACnD,MAAM,aAAa,GAAkB,EAAE,CAAC;QAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;YAE7C,OAAO,CAAC,GAAG,CACT,mBAAmB,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,CAC5F,CAAC;YAEF,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,UAAU;wBACxB,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CACxB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,UAAU,EACV,SAAS,EACT,KAAK,CAAC,MAAM,CACb;wBACH,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CACxB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,SAAS,EACT,KAAK,CAAC,MAAM,CACb,CAAC;oBAEN,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,OAAO,CAAC,KAAK,CACX,2BAA2B,KAAK,CAAC,KAAK,IAAI,EAC1C,KAAK,CAAC,OAAO,CACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,wBAAwB;YACxB,IAAI,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,GAAG,IAAI,2BAA2B,CAAC,CAAC;gBAClE,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* GitHub Feature Sync CLI
|
|
4
|
+
*
|
|
5
|
+
* CLI wrapper for GitHubFeatureSync.syncFeatureToGitHub()
|
|
6
|
+
* Called by post-increment-planning.sh hook to create GitHub issues
|
|
7
|
+
* after increment creation.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* node github-feature-sync-cli.js <feature-id>
|
|
11
|
+
* node github-feature-sync-cli.js FS-062
|
|
12
|
+
*
|
|
13
|
+
* Environment:
|
|
14
|
+
* GITHUB_TOKEN - Required
|
|
15
|
+
* GITHUB_OWNER - Optional (detected from config.json or git remote)
|
|
16
|
+
* GITHUB_REPO - Optional (detected from config.json or git remote)
|
|
17
|
+
*
|
|
18
|
+
* @see ADR-0139 (Unified Post-Increment Sync)
|
|
19
|
+
*/
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=github-feature-sync-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-feature-sync-cli.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-feature-sync-cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;GAiBG"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* GitHub Feature Sync CLI
|
|
4
|
+
*
|
|
5
|
+
* CLI wrapper for GitHubFeatureSync.syncFeatureToGitHub()
|
|
6
|
+
* Called by post-increment-planning.sh hook to create GitHub issues
|
|
7
|
+
* after increment creation.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* node github-feature-sync-cli.js <feature-id>
|
|
11
|
+
* node github-feature-sync-cli.js FS-062
|
|
12
|
+
*
|
|
13
|
+
* Environment:
|
|
14
|
+
* GITHUB_TOKEN - Required
|
|
15
|
+
* GITHUB_OWNER - Optional (detected from config.json or git remote)
|
|
16
|
+
* GITHUB_REPO - Optional (detected from config.json or git remote)
|
|
17
|
+
*
|
|
18
|
+
* @see ADR-0139 (Unified Post-Increment Sync)
|
|
19
|
+
*/
|
|
20
|
+
import { existsSync, readFileSync } from 'fs';
|
|
21
|
+
import * as path from 'path';
|
|
22
|
+
import { GitHubFeatureSync } from './github-feature-sync.js';
|
|
23
|
+
import { GitHubClientV2 } from './github-client-v2.js';
|
|
24
|
+
async function loadGitHubConfig() {
|
|
25
|
+
const projectRoot = process.cwd();
|
|
26
|
+
const configPath = path.join(projectRoot, '.specweave/config.json');
|
|
27
|
+
let owner = process.env.GITHUB_OWNER || '';
|
|
28
|
+
let repo = process.env.GITHUB_REPO || '';
|
|
29
|
+
const token = process.env.GITHUB_TOKEN || '';
|
|
30
|
+
// Try to load from config.json
|
|
31
|
+
if (existsSync(configPath)) {
|
|
32
|
+
try {
|
|
33
|
+
const config = JSON.parse(readFileSync(configPath, 'utf-8'));
|
|
34
|
+
// Method 1: sync.github
|
|
35
|
+
if (config.sync?.github?.owner && config.sync?.github?.repo) {
|
|
36
|
+
owner = config.sync.github.owner;
|
|
37
|
+
repo = config.sync.github.repo;
|
|
38
|
+
}
|
|
39
|
+
// Method 2: multiProject.projects[activeProject].externalTools.github
|
|
40
|
+
else if (config.multiProject?.enabled && config.multiProject?.activeProject) {
|
|
41
|
+
const activeProject = config.multiProject.activeProject;
|
|
42
|
+
const projectConfig = config.multiProject.projects?.[activeProject];
|
|
43
|
+
if (projectConfig?.externalTools?.github?.repository) {
|
|
44
|
+
const parts = projectConfig.externalTools.github.repository.split('/');
|
|
45
|
+
if (parts.length === 2) {
|
|
46
|
+
owner = parts[0];
|
|
47
|
+
repo = parts[1];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// Method 3: sync.profiles[activeProfile]
|
|
52
|
+
else if (config.sync?.activeProfile && config.sync?.profiles) {
|
|
53
|
+
const profile = config.sync.profiles[config.sync.activeProfile];
|
|
54
|
+
if (profile?.config?.owner && profile?.config?.repo) {
|
|
55
|
+
owner = profile.config.owner;
|
|
56
|
+
repo = profile.config.repo;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.error('β οΈ Failed to parse config.json:', error);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Fallback: detect from git remote
|
|
65
|
+
if (!owner || !repo) {
|
|
66
|
+
try {
|
|
67
|
+
const { execSync } = await import('child_process');
|
|
68
|
+
const remoteUrl = execSync('git remote get-url origin 2>/dev/null', {
|
|
69
|
+
encoding: 'utf-8',
|
|
70
|
+
cwd: projectRoot
|
|
71
|
+
}).trim();
|
|
72
|
+
// Parse GitHub URL (HTTPS or SSH)
|
|
73
|
+
const match = remoteUrl.match(/github\.com[:/]([^/]+)\/([^/.]+)/);
|
|
74
|
+
if (match) {
|
|
75
|
+
owner = owner || match[1];
|
|
76
|
+
repo = repo || match[2];
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
// Git detection failed, continue with what we have
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
if (!token) {
|
|
84
|
+
console.error('β GITHUB_TOKEN not set');
|
|
85
|
+
console.error(' Set it in .env file or export GITHUB_TOKEN=ghp_xxx');
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
if (!owner || !repo) {
|
|
89
|
+
console.error('β Could not detect GitHub owner/repo');
|
|
90
|
+
console.error(' Set sync.github.owner and sync.github.repo in .specweave/config.json');
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
return { owner, repo, token };
|
|
94
|
+
}
|
|
95
|
+
async function main() {
|
|
96
|
+
const args = process.argv.slice(2);
|
|
97
|
+
if (args.length === 0 || args[0] === '--help' || args[0] === '-h') {
|
|
98
|
+
console.log('Usage: node github-feature-sync-cli.js <feature-id>');
|
|
99
|
+
console.log('');
|
|
100
|
+
console.log('Arguments:');
|
|
101
|
+
console.log(' feature-id Feature ID (e.g., FS-062)');
|
|
102
|
+
console.log('');
|
|
103
|
+
console.log('Environment:');
|
|
104
|
+
console.log(' GITHUB_TOKEN Required - GitHub personal access token');
|
|
105
|
+
console.log('');
|
|
106
|
+
console.log('Example:');
|
|
107
|
+
console.log(' GITHUB_TOKEN=ghp_xxx node github-feature-sync-cli.js FS-062');
|
|
108
|
+
process.exit(args.length === 0 ? 1 : 0);
|
|
109
|
+
}
|
|
110
|
+
const featureId = args[0];
|
|
111
|
+
// Validate feature ID format
|
|
112
|
+
if (!featureId.match(/^FS-\d+$/i)) {
|
|
113
|
+
console.error(`β Invalid feature ID: ${featureId}`);
|
|
114
|
+
console.error(' Expected format: FS-XXX (e.g., FS-062)');
|
|
115
|
+
process.exit(1);
|
|
116
|
+
}
|
|
117
|
+
console.log(`\nπ GitHub Feature Sync CLI`);
|
|
118
|
+
console.log(` Feature: ${featureId}`);
|
|
119
|
+
// Load config
|
|
120
|
+
const config = await loadGitHubConfig();
|
|
121
|
+
if (!config) {
|
|
122
|
+
process.exit(1);
|
|
123
|
+
}
|
|
124
|
+
console.log(` Repository: ${config.owner}/${config.repo}`);
|
|
125
|
+
// Create client and sync
|
|
126
|
+
const projectRoot = process.cwd();
|
|
127
|
+
const specsDir = path.join(projectRoot, '.specweave/docs/internal/specs');
|
|
128
|
+
const profile = {
|
|
129
|
+
provider: 'github',
|
|
130
|
+
displayName: 'GitHub',
|
|
131
|
+
config: {
|
|
132
|
+
owner: config.owner,
|
|
133
|
+
repo: config.repo,
|
|
134
|
+
token: config.token
|
|
135
|
+
},
|
|
136
|
+
timeRange: {
|
|
137
|
+
default: '1M',
|
|
138
|
+
max: '3M'
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
const client = new GitHubClientV2(profile);
|
|
142
|
+
const sync = new GitHubFeatureSync(client, specsDir, projectRoot);
|
|
143
|
+
try {
|
|
144
|
+
console.log(`\nπ Syncing ${featureId} to GitHub...`);
|
|
145
|
+
const result = await sync.syncFeatureToGitHub(featureId);
|
|
146
|
+
console.log(`\nβ
Sync complete!`);
|
|
147
|
+
console.log(` π― Milestone: #${result.milestoneNumber}`);
|
|
148
|
+
console.log(` π Issues created: ${result.issuesCreated}`);
|
|
149
|
+
console.log(` π Issues updated: ${result.issuesUpdated}`);
|
|
150
|
+
console.log(` π User stories processed: ${result.userStoriesProcessed}`);
|
|
151
|
+
if (result.milestoneUrl) {
|
|
152
|
+
console.log(` π ${result.milestoneUrl}`);
|
|
153
|
+
}
|
|
154
|
+
process.exit(0);
|
|
155
|
+
}
|
|
156
|
+
catch (error) {
|
|
157
|
+
console.error(`\nβ Sync failed:`, error);
|
|
158
|
+
process.exit(1);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// Run CLI
|
|
162
|
+
main().catch(error => {
|
|
163
|
+
console.error('Fatal error:', error);
|
|
164
|
+
process.exit(1);
|
|
165
|
+
});
|
|
166
|
+
//# sourceMappingURL=github-feature-sync-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-feature-sync-cli.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/github-feature-sync-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,7 +97,7 @@ export declare class RepoStructureManager {
|
|
|
97
97
|
*/
|
|
98
98
|
createRepositories(config: RepoStructureConfig): Promise<void>;
|
|
99
99
|
/**
|
|
100
|
-
* Generate .env file with GitHub
|
|
100
|
+
* Generate .env file with GitHub token (only when gh CLI not available)
|
|
101
101
|
*/
|
|
102
102
|
private generateEnvFile;
|
|
103
103
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-structure-manager.d.ts","sourceRoot":"","sources":["../../../../src/core/repo-structure/repo-structure-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGtE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/E,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,gBAAgB,CAAC;IAC/B,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC;QACjC,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;IACF,YAAY,EAAE,KAAK,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC;QACjC,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAoB;gBAE5B,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IASrD;;;;OAIG;IACG,eAAe,CAAC,uBAAuB,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkGjG;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAWpC;;OAEG;YACW,WAAW;IAgCzB;;OAEG;YACW,mBAAmB;IAwIjC;;;;;;;;;;;OAWG;YACW,kBAAkB;IAmsBhC;;OAEG;YACW,cAAc;IAQ5B;;OAEG;YACW,iBAAiB;IAmF/B;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiFpE;;OAEG;YACW,eAAe;
|
|
1
|
+
{"version":3,"file":"repo-structure-manager.d.ts","sourceRoot":"","sources":["../../../../src/core/repo-structure/repo-structure-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,OAAO,EAML,KAAK,kBAAkB,EACxB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGtE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/E,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,gBAAgB,CAAC;IAC/B,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC;QACjC,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;IACF,YAAY,EAAE,KAAK,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC;QACjC,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAoB;gBAE5B,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IASrD;;;;OAIG;IACG,eAAe,CAAC,uBAAuB,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkGjG;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAWpC;;OAEG;YACW,WAAW;IAgCzB;;OAEG;YACW,mBAAmB;IAwIjC;;;;;;;;;;;OAWG;YACW,kBAAkB;IAmsBhC;;OAEG;YACW,cAAc;IAQ5B;;OAEG;YACW,iBAAiB;IAmF/B;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiFpE;;OAEG;YACW,eAAe;IAwC7B;;OAEG;YACW,gBAAgB;IAgC9B;;OAEG;YACW,gBAAgB;IAmC9B;;OAEG;YACW,oBAAoB;IAmBlC;;OAEG;YACW,wBAAwB;IAmBtC;;;OAGG;YACW,qBAAqB;IAmEnC;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoEtE;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAyBhC;;;;;OAKG;IACG,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAwC3E"}
|
|
@@ -1115,26 +1115,20 @@ export class RepoStructureManager {
|
|
|
1115
1115
|
await this.stateManager.deleteState();
|
|
1116
1116
|
}
|
|
1117
1117
|
/**
|
|
1118
|
-
* Generate .env file with GitHub
|
|
1118
|
+
* Generate .env file with GitHub token (only when gh CLI not available)
|
|
1119
1119
|
*/
|
|
1120
1120
|
async generateEnvFile(config) {
|
|
1121
1121
|
const spinner = ora('Generating .env configuration...').start();
|
|
1122
1122
|
try {
|
|
1123
|
+
// .env now only contains secrets (token)
|
|
1124
|
+
// All other config goes to config.json
|
|
1123
1125
|
const envConfig = {
|
|
1124
1126
|
githubToken: this.githubToken,
|
|
1125
|
-
githubOwner: config.parentRepo?.owner || config.repositories[0]?.owner,
|
|
1126
|
-
repos: config.repositories.map(r => ({
|
|
1127
|
-
id: r.id,
|
|
1128
|
-
repo: r.name
|
|
1129
|
-
})),
|
|
1130
|
-
syncEnabled: true,
|
|
1131
|
-
autoCreateIssue: true,
|
|
1132
|
-
syncDirection: 'bidirectional'
|
|
1133
1127
|
};
|
|
1134
1128
|
await generateEnvFile(this.projectPath, envConfig);
|
|
1135
|
-
spinner.succeed('.env file created');
|
|
1129
|
+
spinner.succeed('.env file created (token only)');
|
|
1136
1130
|
console.log(chalk.gray(' File: .env (permissions: 0600)'));
|
|
1137
|
-
console.log(chalk.gray('
|
|
1131
|
+
console.log(chalk.gray(' TIP: gh CLI auth is recommended over tokens'));
|
|
1138
1132
|
console.log(chalk.yellow(' β οΈ DO NOT commit .env to git (contains secrets!)'));
|
|
1139
1133
|
// Save state: env created
|
|
1140
1134
|
await this.saveSetupState({
|