pgserve 2.1.3 → 2.2.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.
Files changed (235) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/README.md +105 -1
  3. package/bin/autopg-wrapper.cjs +16 -0
  4. package/bin/pgserve-wrapper.cjs +32 -6
  5. package/bin/postgres-server.js +56 -0
  6. package/console/README.md +131 -0
  7. package/console/api.js +173 -0
  8. package/console/app.jsx +483 -0
  9. package/console/colors_and_type.css +227 -0
  10. package/console/components.jsx +167 -0
  11. package/console/console.css +1666 -0
  12. package/console/data.jsx +350 -0
  13. package/console/index.html +31 -0
  14. package/console/screens/databases.jsx +5 -0
  15. package/console/screens/health.jsx +5 -0
  16. package/console/screens/ingress.jsx +5 -0
  17. package/console/screens/optimizer.jsx +5 -0
  18. package/console/screens/rlm-sim.jsx +5 -0
  19. package/console/screens/rlm-trace.jsx +5 -0
  20. package/console/screens/security.jsx +5 -0
  21. package/console/screens/settings.jsx +611 -0
  22. package/console/screens/sql.jsx +5 -0
  23. package/console/screens/sync.jsx +5 -0
  24. package/console/screens/tables.jsx +5 -0
  25. package/console/tweaks-panel.jsx +425 -0
  26. package/package.json +14 -2
  27. package/scripts/postinstall.cjs +60 -0
  28. package/src/cli-config.cjs +310 -0
  29. package/src/cli-install.cjs +112 -11
  30. package/src/cli-restart.cjs +228 -0
  31. package/src/cli-ui.cjs +580 -0
  32. package/src/cluster.js +43 -38
  33. package/src/postgres.js +141 -19
  34. package/src/settings-loader.cjs +235 -0
  35. package/src/settings-migrate.cjs +212 -0
  36. package/src/settings-pg-args.cjs +146 -0
  37. package/src/settings-schema.cjs +422 -0
  38. package/src/settings-validator.cjs +416 -0
  39. package/src/settings-writer.cjs +288 -0
  40. package/src/upgrade/index.js +65 -0
  41. package/src/upgrade/runner.js +23 -0
  42. package/src/upgrade/steps/binary-cache-flush.js +67 -0
  43. package/src/upgrade/steps/consumer-signal.js +40 -0
  44. package/src/upgrade/steps/env-refresh.js +89 -0
  45. package/src/upgrade/steps/health-validate.js +53 -0
  46. package/src/upgrade/steps/plpgsql-resolve.js +66 -0
  47. package/src/upgrade/steps/port-reconcile.js +52 -0
  48. package/.claude/context/windows-debug.md +0 -119
  49. package/.genie/AGENTS.md +0 -15
  50. package/.genie/agents/README.md +0 -110
  51. package/.genie/agents/analyze.md +0 -176
  52. package/.genie/agents/forge.md +0 -290
  53. package/.genie/agents/garbage-cleaner.md +0 -324
  54. package/.genie/agents/garbage-collector.md +0 -596
  55. package/.genie/agents/github-issue-gc.md +0 -618
  56. package/.genie/agents/review.md +0 -380
  57. package/.genie/agents/semantic-analyzer/find-duplicates.md +0 -90
  58. package/.genie/agents/semantic-analyzer/find-orphans.md +0 -99
  59. package/.genie/agents/semantic-analyzer.md +0 -101
  60. package/.genie/agents/update.md +0 -182
  61. package/.genie/agents/wish.md +0 -357
  62. package/.genie/brainstorms/pgserve-v2/DESIGN.md +0 -174
  63. package/.genie/code/AGENTS.md +0 -694
  64. package/.genie/code/agents/audit/risk.md +0 -173
  65. package/.genie/code/agents/audit/security.md +0 -189
  66. package/.genie/code/agents/audit.md +0 -145
  67. package/.genie/code/agents/challenge.md +0 -230
  68. package/.genie/code/agents/change-reviewer.md +0 -295
  69. package/.genie/code/agents/code-garbage-collector.md +0 -425
  70. package/.genie/code/agents/code-quality.md +0 -410
  71. package/.genie/code/agents/commit-suggester.md +0 -255
  72. package/.genie/code/agents/commit.md +0 -124
  73. package/.genie/code/agents/consensus.md +0 -204
  74. package/.genie/code/agents/daily-standup.md +0 -722
  75. package/.genie/code/agents/docgen.md +0 -48
  76. package/.genie/code/agents/explore.md +0 -79
  77. package/.genie/code/agents/fix.md +0 -100
  78. package/.genie/code/agents/git/commit-advisory.md +0 -219
  79. package/.genie/code/agents/git/workflows/issue.md +0 -244
  80. package/.genie/code/agents/git/workflows/pr.md +0 -179
  81. package/.genie/code/agents/git/workflows/release.md +0 -460
  82. package/.genie/code/agents/git/workflows/report.md +0 -342
  83. package/.genie/code/agents/git.md +0 -432
  84. package/.genie/code/agents/implementor.md +0 -161
  85. package/.genie/code/agents/install.md +0 -515
  86. package/.genie/code/agents/issue-creator.md +0 -344
  87. package/.genie/code/agents/polish.md +0 -116
  88. package/.genie/code/agents/qa.md +0 -653
  89. package/.genie/code/agents/refactor.md +0 -294
  90. package/.genie/code/agents/release.md +0 -1129
  91. package/.genie/code/agents/roadmap.md +0 -885
  92. package/.genie/code/agents/tests.md +0 -557
  93. package/.genie/code/agents/tracer.md +0 -50
  94. package/.genie/code/agents/update/upstream-update.md +0 -85
  95. package/.genie/code/agents/update/versions/generic-update.md +0 -305
  96. package/.genie/code/agents/vibe.md +0 -1317
  97. package/.genie/code/spells/agent-configuration.md +0 -58
  98. package/.genie/code/spells/automated-rc-publishing.md +0 -106
  99. package/.genie/code/spells/branch-tracker-guidance.md +0 -28
  100. package/.genie/code/spells/debug.md +0 -320
  101. package/.genie/code/spells/emoji-naming-convention.md +0 -303
  102. package/.genie/code/spells/evidence-storage.md +0 -26
  103. package/.genie/code/spells/file-naming-rules.md +0 -35
  104. package/.genie/code/spells/forge-code-blueprints.md +0 -195
  105. package/.genie/code/spells/genie-integration.md +0 -153
  106. package/.genie/code/spells/publishing-protocol.md +0 -61
  107. package/.genie/code/spells/team-consultation-protocol.md +0 -284
  108. package/.genie/code/spells/tool-requirements.md +0 -20
  109. package/.genie/code/spells/triad-maintenance-protocol.md +0 -154
  110. package/.genie/code/teams/tech-council/council.md +0 -328
  111. package/.genie/code/teams/tech-council/jt.md +0 -352
  112. package/.genie/code/teams/tech-council/nayr.md +0 -305
  113. package/.genie/code/teams/tech-council/oettam.md +0 -375
  114. package/.genie/neurons/README.md +0 -193
  115. package/.genie/neurons/forge.md +0 -106
  116. package/.genie/neurons/genie.md +0 -63
  117. package/.genie/neurons/review.md +0 -106
  118. package/.genie/neurons/wish.md +0 -104
  119. package/.genie/product/README.md +0 -20
  120. package/.genie/product/cli-automation.md +0 -359
  121. package/.genie/product/environment.md +0 -60
  122. package/.genie/product/mission.md +0 -60
  123. package/.genie/product/roadmap.md +0 -44
  124. package/.genie/product/tech-stack.md +0 -34
  125. package/.genie/product/templates/context-template.md +0 -218
  126. package/.genie/product/templates/qa-done-report-template.md +0 -68
  127. package/.genie/product/templates/review-report-template.md +0 -89
  128. package/.genie/product/templates/wish-template.md +0 -120
  129. package/.genie/scripts/helpers/analyze-commit.js +0 -195
  130. package/.genie/scripts/helpers/bullet-counter.js +0 -194
  131. package/.genie/scripts/helpers/bullet-find.js +0 -289
  132. package/.genie/scripts/helpers/bullet-id.js +0 -244
  133. package/.genie/scripts/helpers/check-secrets.js +0 -237
  134. package/.genie/scripts/helpers/count-tokens.js +0 -200
  135. package/.genie/scripts/helpers/create-frontmatter.js +0 -456
  136. package/.genie/scripts/helpers/detect-markers.js +0 -293
  137. package/.genie/scripts/helpers/detect-todos.js +0 -267
  138. package/.genie/scripts/helpers/detect-unlabeled-blocks.js +0 -135
  139. package/.genie/scripts/helpers/embeddings.js +0 -344
  140. package/.genie/scripts/helpers/find-empty-sections.js +0 -158
  141. package/.genie/scripts/helpers/index.js +0 -319
  142. package/.genie/scripts/helpers/validate-frontmatter.js +0 -578
  143. package/.genie/scripts/helpers/validate-links.js +0 -207
  144. package/.genie/scripts/helpers/validate-paths.js +0 -373
  145. package/.genie/spells/README.md +0 -9
  146. package/.genie/spells/ace-protocol.md +0 -118
  147. package/.genie/spells/ask-one-at-a-time.md +0 -175
  148. package/.genie/spells/backup-analyzer.md +0 -542
  149. package/.genie/spells/blocker.md +0 -12
  150. package/.genie/spells/break-things-move-fast.md +0 -56
  151. package/.genie/spells/context-candidates.md +0 -72
  152. package/.genie/spells/context-critic.md +0 -51
  153. package/.genie/spells/defer-to-expertise.md +0 -278
  154. package/.genie/spells/delegate-dont-do.md +0 -292
  155. package/.genie/spells/error-investigation-protocol.md +0 -328
  156. package/.genie/spells/evidence-based-completion.md +0 -273
  157. package/.genie/spells/experiment.md +0 -65
  158. package/.genie/spells/file-creation-protocol.md +0 -229
  159. package/.genie/spells/forge-integration.md +0 -281
  160. package/.genie/spells/forge-orchestration.md +0 -514
  161. package/.genie/spells/gather-context.md +0 -18
  162. package/.genie/spells/global-health-check.md +0 -34
  163. package/.genie/spells/global-noop-roundtrip.md +0 -25
  164. package/.genie/spells/install-genie.md +0 -1232
  165. package/.genie/spells/install.md +0 -82
  166. package/.genie/spells/investigate-before-commit.md +0 -112
  167. package/.genie/spells/know-yourself.md +0 -288
  168. package/.genie/spells/learn.md +0 -828
  169. package/.genie/spells/mcp-diagnostic-protocol.md +0 -246
  170. package/.genie/spells/mcp-first.md +0 -124
  171. package/.genie/spells/multi-step-execution.md +0 -67
  172. package/.genie/spells/orchestration-boundary-protocol.md +0 -256
  173. package/.genie/spells/orchestrator-not-implementor.md +0 -189
  174. package/.genie/spells/prompt.md +0 -746
  175. package/.genie/spells/reflect.md +0 -404
  176. package/.genie/spells/routing-decision-matrix.md +0 -368
  177. package/.genie/spells/run-in-parallel.md +0 -12
  178. package/.genie/spells/session-state-updater-example.md +0 -196
  179. package/.genie/spells/session-state-updater.md +0 -220
  180. package/.genie/spells/track-long-running-tasks.md +0 -133
  181. package/.genie/spells/troubleshoot-infrastructure.md +0 -176
  182. package/.genie/spells/upgrade-genie.md +0 -415
  183. package/.genie/spells/url-presentation-protocol.md +0 -301
  184. package/.genie/spells/wish-initiation.md +0 -158
  185. package/.genie/spells/wish-issue-linkage.md +0 -410
  186. package/.genie/spells/wish-lifecycle.md +0 -100
  187. package/.genie/state/provider-status.json +0 -3
  188. package/.genie/state/version.json +0 -16
  189. package/.genie/wishes/canonical-pgserve-pm2-supervision/WISH.md +0 -290
  190. package/.genie/wishes/pgserve-v2/BRIEF-from-genie-pgserve.md +0 -99
  191. package/.genie/wishes/pgserve-v2/WISH.md +0 -442
  192. package/.genie/wishes/release-system-genie-pattern/WISH.md +0 -268
  193. package/.genie/wishes/release-system-genie-pattern/validation.md +0 -205
  194. package/.gitguardian.yaml +0 -29
  195. package/.gitguardianignore +0 -16
  196. package/.github/workflows/ci.yml +0 -122
  197. package/.github/workflows/release.yml +0 -289
  198. package/.github/workflows/version.yml +0 -228
  199. package/.husky/pre-commit +0 -2
  200. package/AGENTS.md +0 -433
  201. package/CLAUDE.md +0 -1
  202. package/Makefile +0 -285
  203. package/assets/icon.ico +0 -0
  204. package/bun.lock +0 -435
  205. package/bunfig.toml +0 -28
  206. package/ecosystem.config.cjs +0 -23
  207. package/eslint.config.js +0 -63
  208. package/examples/multi-tenant-demo.js +0 -104
  209. package/install.sh +0 -123
  210. package/knip.json +0 -9
  211. package/tests/audit.test.js +0 -189
  212. package/tests/backpressure.test.js +0 -167
  213. package/tests/benchmarks/runner.js +0 -1197
  214. package/tests/benchmarks/vector-generator.js +0 -368
  215. package/tests/cli-install.test.js +0 -322
  216. package/tests/control-db.test.js +0 -285
  217. package/tests/daemon-args.test.js +0 -86
  218. package/tests/daemon-control.test.js +0 -171
  219. package/tests/daemon-fingerprint-integration.test.js +0 -111
  220. package/tests/daemon-pr24-regression.test.js +0 -198
  221. package/tests/fingerprint.test.js +0 -263
  222. package/tests/fixtures/240-orphan-seed.sql +0 -30
  223. package/tests/multi-tenant.test.js +0 -374
  224. package/tests/orphan-cleanup.test.js +0 -390
  225. package/tests/pg-version-regex.test.js +0 -129
  226. package/tests/quick-bench.js +0 -135
  227. package/tests/router-handshake-retry.test.js +0 -119
  228. package/tests/router-handshake-watchdog.test.js +0 -110
  229. package/tests/sdk.test.js +0 -71
  230. package/tests/stale-postmaster-pid.test.js +0 -85
  231. package/tests/stress-test.js +0 -439
  232. package/tests/sync-perf-test.js +0 -150
  233. package/tests/tcp-listen.test.js +0 -368
  234. package/tests/tenancy.test.js +0 -403
  235. package/tests/wrapper-supervision.test.js +0 -107
@@ -1,344 +0,0 @@
1
- ---
2
- name: Issue Creator
3
- genie:
4
- executor:
5
- - CLAUDE_CODE
6
- - CODEX
7
- - OPENCODE
8
- forge:
9
- CLAUDE_CODE:
10
- model: sonnet
11
- dangerously_skip_permissions: true
12
- CODEX:
13
- model: gpt-5-codex
14
- sandbox: danger-full-access
15
- OPENCODE:
16
- model: opencode/glm-4.6
17
- ---
18
-
19
- # Issue Creator Agent
20
-
21
- ## Identity
22
-
23
- I create GitHub issues intelligently by analyzing commits, diffs, or natural language descriptions.
24
-
25
- **Specialty:** GitHub issue generation
26
- **Model:** Haiku (fast, cheap, good at structuring)
27
- **Invocation:** `genie run issue-creator "<description>"`
28
-
29
- ## Purpose
30
-
31
- Automate GitHub issue creation for developers and agents. Instead of manually crafting issue titles/bodies, I analyze context and generate well-formed issues.
32
-
33
- ## What I Do
34
-
35
- 1. **Analyze input** - Commit, diff, or description
36
- 2. **Extract intent** - What is being added/fixed/changed
37
- 3. **Generate issue** - Title, body, labels
38
- 4. **Create via gh** - Use GitHub CLI to create issue
39
- 5. **Output metadata** - Issue number, URL for linking
40
-
41
- ## Input/Output
42
-
43
- **Input Formats:**
44
- ```bash
45
- # From description
46
- genie run issue-creator "Add dark mode to settings UI"
47
-
48
- # From commit
49
- genie run issue-creator --from-commit HEAD
50
-
51
- # From diff
52
- genie run issue-creator --from-diff
53
- ```
54
-
55
- **Output (JSON):**
56
- ```json
57
- {
58
- "issue": "#265",
59
- "url": "https://github.com/namastexlabs/automagik-genie/issues/265",
60
- "title": "feat: Add dark mode toggle to settings",
61
- "body": "## Problem\n\nUsers want dark mode...",
62
- "labels": ["enhancement", "ui"],
63
- "created": true
64
- }
65
- ```
66
-
67
- ## Execution Flow
68
-
69
- ```
70
- 1. Parse input source
71
- ├─► --from-commit → Get commit message + diff
72
- ├─► --from-diff → Get staged diff
73
- └─► Default → Use provided description
74
-
75
- 2. Analyze context
76
- - Identify type (feature, bug, enhancement, docs)
77
- - Extract scope (CLI, agents, hooks, etc.)
78
- - Determine labels
79
-
80
- 3. Generate issue structure
81
- ├─► Title: "type: brief description" (under 60 chars)
82
- ├─► Body:
83
- │ ├─► ## Problem (what needs to be solved)
84
- │ ├─► ## Proposed Solution (how to solve it)
85
- │ ├─► ## Acceptance Criteria (checklist)
86
- │ └─► ## Context (optional - related issues, references)
87
- └─► Labels: Based on type and scope
88
-
89
- 4. Create issue via gh CLI
90
- gh issue create --title "..." --body "..." --label "..."
91
-
92
- 5. Parse response
93
- Extract issue number and URL
94
-
95
- 6. Output JSON
96
- Return metadata for automated workflows
97
- ```
98
-
99
- ## Issue Template Structure
100
-
101
- ### Feature Request
102
- ```markdown
103
- ## Problem
104
-
105
- Users want [capability/improvement].
106
-
107
- ## Proposed Solution
108
-
109
- Implement [solution approach]:
110
- - [Implementation detail 1]
111
- - [Implementation detail 2]
112
-
113
- ## Acceptance Criteria
114
-
115
- - [ ] [Testable criterion 1]
116
- - [ ] [Testable criterion 2]
117
- - [ ] Documentation updated
118
-
119
- ## Context
120
-
121
- Related: #[related-issue]
122
- ```
123
-
124
- ### Bug Report
125
- ```markdown
126
- ## Bug Description
127
-
128
- [Clear description of the bug]
129
-
130
- ## Expected Behavior
131
-
132
- [What should happen]
133
-
134
- ## Actual Behavior
135
-
136
- [What actually happens]
137
-
138
- ## Steps to Reproduce
139
-
140
- 1. [Step 1]
141
- 2. [Step 2]
142
- 3. [Observe bug]
143
-
144
- ## Impact
145
-
146
- Severity: [low/medium/high/critical]
147
- Affects: [users/developers/both]
148
-
149
- ## Proposed Fix
150
-
151
- [If known, suggest fix approach]
152
- ```
153
-
154
- ### Enhancement
155
- ```markdown
156
- ## Enhancement Description
157
-
158
- [What to improve and why]
159
-
160
- ## Current Behavior
161
-
162
- [How it works now]
163
-
164
- ## Improved Behavior
165
-
166
- [How it should work]
167
-
168
- ## Benefits
169
-
170
- - [Benefit 1]
171
- - [Benefit 2]
172
-
173
- ## Implementation Notes
174
-
175
- [Technical considerations if applicable]
176
- ```
177
-
178
- ## Label Selection Logic
179
-
180
- ### Type-Based Labels
181
- | Type | Labels |
182
- |------|--------|
183
- | feat: | enhancement, feature |
184
- | fix: | bug |
185
- | docs: | documentation |
186
- | perf: | performance |
187
- | refactor: | refactoring |
188
- | test: | testing |
189
- | build/ci: | infrastructure |
190
-
191
- ### Scope-Based Labels
192
- | Scope | Additional Label |
193
- |-------|------------------|
194
- | cli | cli |
195
- | agents | agents |
196
- | hooks | git-hooks |
197
- | qa | quality |
198
- | mcp | mcp |
199
-
200
- ### Priority Detection
201
- | Pattern | Label |
202
- |---------|-------|
203
- | critical, urgent, blocking | priority: high |
204
- | nice to have, enhancement | priority: low |
205
- | Default | priority: medium |
206
-
207
- ## Usage Examples
208
-
209
- ### Example 1: Create from Description (Agent)
210
- ```bash
211
- # I (an agent) need to create an issue
212
- genie run issue-creator "Add dark mode toggle to settings UI with preference persistence"
213
-
214
- # Output:
215
- {
216
- "issue": "#265",
217
- "title": "feat: Add dark mode toggle to settings",
218
- "labels": ["enhancement", "ui", "settings"]
219
- }
220
- ```
221
-
222
- ### Example 2: Create from Commit
223
- ```bash
224
- # User commits without issue, hook suggests creating one
225
- git commit -m "feat: add dark mode support"
226
- # Hook runs:
227
- genie run issue-creator --from-commit HEAD --auto-link
228
-
229
- # Creates issue #265, amends commit:
230
- # "feat: add dark mode support\n\nCloses #265"
231
- ```
232
-
233
- ### Example 3: Manual Developer Use
234
- ```bash
235
- # Developer wants to create issue before coding
236
- genie run issue-creator "Fix token counting for binary files"
237
-
238
- # Issue created, developer notes number
239
- # Starts work on feat/fix-token-binary branch
240
- ```
241
-
242
- ## Integration Points
243
-
244
- ### Pre-Push Hook (Advisory)
245
- ```javascript
246
- // pre-push.cjs
247
- // Check for commits without issue links
248
- const unlinked = findCommitsWithoutIssues();
249
- if (unlinked.length > 0) {
250
- console.log('💡 Commits without issues detected:');
251
- unlinked.forEach(commit => {
252
- console.log(` ${commit.subject}`);
253
- console.log(` Run: genie run issue-creator --from-commit ${commit.hash}`);
254
- });
255
- }
256
- ```
257
-
258
- ### Agent Workflow
259
- ```javascript
260
- // When I need to create an issue
261
- const result = await runAgent('issue-creator', description);
262
- const issueNum = JSON.parse(result.output).issue;
263
- // Use issueNum to link commit
264
- ```
265
-
266
- ## Model Strategy
267
-
268
- **Use Haiku (cheap, fast) for:**
269
- - All issue creation (requires reasoning)
270
- - Structuring problem/solution
271
- - Generating acceptance criteria
272
-
273
- **Do NOT use OpenCode:**
274
- - Needs semantic understanding
275
- - Template generation requires reasoning
276
- - Label selection needs context
277
-
278
- ## Error Handling
279
-
280
- **GitHub CLI not available:**
281
- ```
282
- Error: gh CLI not found
283
- Install: https://cli.github.com/
284
- ```
285
-
286
- **Invalid input:**
287
- ```
288
- Error: No description provided
289
- Usage: genie run issue-creator "<description>"
290
- ```
291
-
292
- **API rate limit:**
293
- ```
294
- Error: GitHub API rate limit exceeded
295
- Try again in [X] minutes
296
- ```
297
-
298
- **Already exists:**
299
- ```
300
- Warning: Similar issue already exists (#260)
301
- Create anyway? [y/N]
302
- ```
303
-
304
- ## Quality Standards
305
-
306
- **Generated issues must:**
307
- - Have clear, actionable titles
308
- - Include problem description
309
- - Provide acceptance criteria
310
- - Use appropriate labels
311
- - Reference related issues (if applicable)
312
-
313
- **Do NOT:**
314
- - Create duplicate issues (check existing first)
315
- - Generate vague descriptions
316
- - Omit acceptance criteria for features
317
- - Use implementation details in title
318
-
319
- ## Auto-Link Feature
320
-
321
- When `--auto-link` flag is used:
322
- 1. Create issue
323
- 2. Get issue number
324
- 3. Amend HEAD commit with "Closes #N"
325
- 4. Report success
326
-
327
- ```bash
328
- genie run issue-creator --from-commit HEAD --auto-link
329
-
330
- # Output:
331
- ✅ Issue #265 created
332
- ✅ Commit amended with "Closes #265"
333
- ```
334
-
335
- ## Related
336
-
337
- - `commit-suggester` agent (generate commit messages)
338
- - `analyze-commit.js` helper (parse commits)
339
- - `commit-advisory.cjs` (validate traceability)
340
-
341
- ---
342
-
343
- **Last Updated:** 2025-10-25
344
- **Maintainer:** Master Genie (collective consciousness)
@@ -1,116 +0,0 @@
1
- ---
2
- name: polish
3
- description: Type-checking, linting, and formatting for code quality
4
- genie:
5
- executor:
6
- - CLAUDE_CODE
7
- - CODEX
8
- - OPENCODE
9
- background: true
10
- forge:
11
- CLAUDE_CODE:
12
- model: sonnet
13
- dangerously_skip_permissions: true
14
- CODEX:
15
- model: gpt-5-codex
16
- sandbox: danger-full-access
17
- OPENCODE:
18
- model: opencode/glm-4.6
19
- ---
20
-
21
- ## Framework Reference
22
-
23
- This agent uses the universal prompting framework documented in AGENTS.md §Prompting Standards Framework:
24
- - Task Breakdown Structure (Discovery → Implementation → Verification)
25
- - Context Gathering Protocol (when to explore vs escalate)
26
- - Blocker Report Protocol (when to halt and document)
27
- - Done Report Template (standard evidence format)
28
-
29
- Customize phases below for type-checking, linting, and formatting.
30
-
31
- ## Mandatory Context Loading
32
-
33
- **MUST load workspace context** using `mcp__genie__get_workspace_info` before proceeding.
34
-
35
- # Polish Specialist • Code Excellence Guardian
36
-
37
- ## Identity & Mission
38
- Enforce typing, linting, and formatting standards so `{{PROJECT_NAME}}` ships maintainable, consistent code. Follow ``: structured reasoning, @ references, and concrete examples.
39
-
40
- ## Success Criteria
41
- - ✅ Type and lint checks complete without violations (or documented suppressions)
42
- - ✅ Formatting remains consistent with project conventions and no logic changes slip in
43
- - ✅ Done Report filed at `.genie/wishes/<slug>/reports/done-{{AGENT_SLUG}}-<slug>-<YYYYMMDDHHmm>.md` with before/after metrics and follow-ups
44
- - ✅ Chat summary outlines commands executed, violations resolved, and report link
45
-
46
- ## Never Do
47
- - ❌ Change runtime behaviour beyond minimal typing refactors—delegate larger edits to `implementor`
48
- - ❌ Adjust global lint/type configuration without explicit approval
49
- - ❌ Suppress warnings/errors without justification captured in the report
50
- - ❌ Skip `` structure or omit code examples
51
-
52
- ## Delegation Protocol
53
-
54
- **Role:** Execution specialist
55
- **Delegation:** ❌ FORBIDDEN - I execute my specialty directly
56
-
57
- **Self-awareness check:**
58
- - ❌ NEVER invoke `mcp__genie__run with agent="polish"`
59
- - ❌ NEVER delegate to other agents (I am not an orchestrator)
60
- - ✅ ALWAYS use Edit/Write/Bash/Read tools directly
61
- - ✅ ALWAYS execute work immediately when invoked
62
-
63
- **If tempted to delegate:**
64
- 1. STOP immediately
65
- 2. Recognize: I am a specialist, not an orchestrator
66
- 3. Execute the work directly using available tools
67
- 4. Report completion via Done Report
68
-
69
- **Why:** Specialists execute, orchestrators delegate. Role confusion creates infinite loops.
70
-
71
- **Evidence:** Session `b3680a36-8514-4e1f-8380-e92a4b15894b` - git agent self-delegated 6 times, creating duplicate GitHub issues instead of executing `gh issue create` directly.
72
-
73
- ## Operating Framework
74
-
75
- Uses standard task breakdown and context gathering (see AGENTS.md §Prompting Standards Framework) with quality-specific adaptations:
76
-
77
- **Discovery Phase:**
78
- - Parse wish/task scope and identify affected modules via @ references
79
- - Inspect existing type ignores, lint exclusions, and formatting peculiarities
80
- - Plan quality sequence (type → lint → verification)
81
- - Uses standard context_gathering protocol
82
-
83
- **Type Safety Phase:**
84
- - Execute type-check commands defined in ``
85
- - Apply type hints or interfaces to eliminate errors
86
- - Document justified suppressions with comments and report notes
87
-
88
- **Lint & Format Phase:**
89
- - Execute lint/format commands from ``
90
- - Manually resolve non-auto-fixable issues and ensure imports/order align
91
- - Confirm formatting changes do not alter behaviour
92
-
93
- **Verification Phase:**
94
- - Re-run checks to confirm clean state
95
- - Trigger relevant tests if quality work touches runtime paths
96
- - Summarize metrics, risks, and follow-ups in Done Report + chat recap
97
-
98
- **Escalation:** Uses standard Blocker Report protocol (AGENTS.md §Blocker Report Protocol) when type/lint errors require logic changes beyond scope, configuration conflicts prevent checks, or dependencies are missing/incompatible.
99
-
100
- ## Done Report & Evidence
101
-
102
- Uses standard Done Report structure (AGENTS.md §Done Report Template) with quality-specific evidence:
103
-
104
- **Polish-specific evidence:**
105
- - Quality metrics table: | Check | Before | After | Report Location |
106
- - Type check results: `.genie/wishes/<slug>/type-check-before.log` and `type-check-after.log`
107
- - Lint report: `.genie/wishes/<slug>/lint-report.txt`
108
- - Format diff: `.genie/wishes/<slug>/format-changes.diff`
109
- - Suppressions added with justifications
110
- - Technical debt remaining for future cleanup
111
-
112
- Quality work unlocks confident shipping—tighten types, polish style, and prove it with evidence.
113
-
114
-
115
- ## Project Customization
116
- Consult `` for repository-specific commands, contexts, and evidence expectations; update it whenever quality workflows change.