@uluops/setup 0.2.0 → 0.4.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 (107) hide show
  1. package/README.md +56 -53
  2. package/assets/agents/anxiety-reader-agent.md +464 -0
  3. package/assets/commands/agents/anxiety-reader.md +160 -0
  4. package/assets/commands/agents/api-contract.md +1 -0
  5. package/assets/commands/agents/architect.md +1 -0
  6. package/assets/commands/agents/aristotle-analyst.md +1 -0
  7. package/assets/commands/agents/aristotle-explorer.md +1 -0
  8. package/assets/commands/agents/aristotle-forecaster.md +1 -0
  9. package/assets/commands/agents/aristotle-validator.md +1 -0
  10. package/assets/commands/agents/assumption-excavator.md +1 -0
  11. package/assets/commands/agents/audit.md +1 -0
  12. package/assets/commands/agents/{validate.md → code-validate.md} +6 -5
  13. package/assets/commands/agents/docs-validate.md +1 -0
  14. package/assets/commands/agents/frontend.md +1 -0
  15. package/assets/commands/agents/mcp-validate.md +1 -0
  16. package/assets/commands/agents/optimize.md +1 -0
  17. package/assets/commands/agents/pattern-analyzer.md +1 -0
  18. package/assets/commands/agents/prompt-quality.md +1 -0
  19. package/assets/commands/agents/prompt-validate.md +1 -0
  20. package/assets/commands/agents/public-interface.md +1 -0
  21. package/assets/commands/agents/release.md +1 -0
  22. package/assets/commands/agents/security.md +1 -0
  23. package/assets/commands/agents/test-review.md +1 -0
  24. package/assets/commands/agents/type-safety.md +1 -0
  25. package/assets/commands/agents/workflow-synthesis.md +1 -0
  26. package/assets/commands/pipelines/aristotle.md +143 -0
  27. package/assets/commands/pipelines/ship.md +188 -0
  28. package/assets/commands/workflows/prompt-audit.md +37 -747
  29. package/dist/cli.js +251 -207
  30. package/dist/harnesses/claude-code.d.ts +8 -0
  31. package/dist/harnesses/claude-code.js +72 -0
  32. package/dist/harnesses/codex.d.ts +15 -0
  33. package/dist/harnesses/codex.js +53 -0
  34. package/dist/harnesses/gemini-cli.d.ts +16 -0
  35. package/dist/harnesses/gemini-cli.js +54 -0
  36. package/dist/harnesses/index.d.ts +18 -0
  37. package/dist/harnesses/index.js +45 -0
  38. package/dist/harnesses/opencode.d.ts +14 -0
  39. package/dist/harnesses/opencode.js +130 -0
  40. package/dist/harnesses/types.d.ts +87 -0
  41. package/dist/harnesses/types.js +24 -0
  42. package/dist/lib/agent-transform.d.ts +12 -0
  43. package/dist/lib/agent-transform.js +129 -0
  44. package/dist/lib/asset-catalog.d.ts +9 -0
  45. package/dist/lib/asset-catalog.js +56 -0
  46. package/dist/lib/atomic-write.d.ts +11 -0
  47. package/dist/lib/atomic-write.js +28 -0
  48. package/dist/lib/config-merger.d.ts +7 -1
  49. package/dist/lib/config-merger.js +34 -5
  50. package/dist/lib/display.d.ts +14 -0
  51. package/dist/lib/display.js +66 -0
  52. package/dist/lib/file-ops.d.ts +6 -0
  53. package/dist/lib/file-ops.js +22 -1
  54. package/dist/lib/hash.d.ts +1 -0
  55. package/dist/lib/hash.js +1 -0
  56. package/dist/lib/health.d.ts +2 -0
  57. package/dist/lib/health.js +10 -0
  58. package/dist/lib/manifest.d.ts +22 -5
  59. package/dist/lib/manifest.js +148 -13
  60. package/dist/lib/paths.d.ts +15 -3
  61. package/dist/lib/paths.js +71 -13
  62. package/dist/lib/settings-merger.d.ts +9 -1
  63. package/dist/lib/settings-merger.js +45 -17
  64. package/dist/steps/agents.d.ts +5 -1
  65. package/dist/steps/agents.js +59 -9
  66. package/dist/steps/auth.js +26 -10
  67. package/dist/steps/commands.d.ts +6 -1
  68. package/dist/steps/commands.js +87 -9
  69. package/dist/steps/detect.d.ts +3 -0
  70. package/dist/steps/detect.js +7 -0
  71. package/dist/steps/mcp.d.ts +6 -2
  72. package/dist/steps/mcp.js +46 -21
  73. package/dist/steps/metrics.d.ts +14 -10
  74. package/dist/steps/metrics.js +59 -89
  75. package/dist/steps/shell.d.ts +2 -0
  76. package/dist/steps/shell.js +16 -9
  77. package/dist/steps/signup.d.ts +6 -3
  78. package/dist/steps/signup.js +26 -14
  79. package/dist/steps/verify.d.ts +2 -2
  80. package/dist/steps/verify.js +84 -117
  81. package/package.json +32 -7
  82. package/assets/commands/workflows/aristotle.md +0 -543
  83. package/assets/commands/workflows/ship.md +0 -721
  84. package/dist/test/auth.test.d.ts +0 -1
  85. package/dist/test/auth.test.js +0 -43
  86. package/dist/test/config-io.test.d.ts +0 -1
  87. package/dist/test/config-io.test.js +0 -56
  88. package/dist/test/config-merger.test.d.ts +0 -1
  89. package/dist/test/config-merger.test.js +0 -94
  90. package/dist/test/detect.test.d.ts +0 -1
  91. package/dist/test/detect.test.js +0 -25
  92. package/dist/test/file-ops.test.d.ts +0 -1
  93. package/dist/test/file-ops.test.js +0 -100
  94. package/dist/test/hash.test.d.ts +0 -1
  95. package/dist/test/hash.test.js +0 -14
  96. package/dist/test/manifest.test.d.ts +0 -1
  97. package/dist/test/manifest.test.js +0 -78
  98. package/dist/test/paths.test.d.ts +0 -1
  99. package/dist/test/paths.test.js +0 -30
  100. package/dist/test/settings-merger.test.d.ts +0 -1
  101. package/dist/test/settings-merger.test.js +0 -167
  102. package/dist/test/shell-profile.test.d.ts +0 -1
  103. package/dist/test/shell-profile.test.js +0 -40
  104. package/dist/test/shell.test.d.ts +0 -1
  105. package/dist/test/shell.test.js +0 -71
  106. package/dist/test/signup.test.d.ts +0 -1
  107. package/dist/test/signup.test.js +0 -83
@@ -0,0 +1,188 @@
1
+ ---
2
+ name: ship
3
+ description: Final ship gate. Runs 7 core phases (Validate, Type Safety, Test Architect, Code Auditor, Public Interface, Anxiety Reader, Security) plus conditional API Contract and Release Readiness. Persists all recommendations to tracker.
4
+ tools: Read, Grep, Glob, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # Ship Pipeline
9
+
10
+ > Final ship gate. Runs 7 core phases (Validate, Type Safety, Test Architect, Code Auditor, Public Interface, Anxiety Reader, Security) plus conditional API Contract and Release Readiness. Persists all recommendations to tracker.
11
+
12
+ | Field | Value |
13
+ |-------|-------|
14
+ | Name | `ship` |
15
+ | Version | 1.1.0 |
16
+ | Domain | software |
17
+ | Subdomain | release |
18
+ | Tags | `ship`, `validation`, `release`, `ci-cd` |
19
+
20
+ ## Triggers
21
+
22
+ - **Manual**
23
+ - Parameters:
24
+ - `target`: string
25
+
26
+ ## Stage Dependency Graph
27
+
28
+ ```
29
+ preflight (Pre-Flight Detection) [parallel]
30
+ -> validate (Code Validation)
31
+ -> parallel-validation (Parallel Validation) [parallel]
32
+ -> code-auditor (Runtime Correctness Audit)
33
+ -> anxiety-reader (Resilience Anxiety Reading)
34
+ -> security (Security Audit)
35
+ -> final-checks (Final Checks) [parallel]
36
+ ```
37
+
38
+ ## Stages
39
+
40
+ ### Stage 1: Pre-Flight Detection
41
+
42
+ - **ID:** `preflight`
43
+ - **Execution:** parallel
44
+
45
+ **Steps:**
46
+
47
+ 1. **Detect TypeScript** [continue-on-error]
48
+ ```bash
49
+ test -f tsconfig.json && echo "DETECTED" || echo "NOT_DETECTED"
50
+ ```
51
+ 1. **Detect API routes** [continue-on-error]
52
+ ```bash
53
+ grep -rqE --include="*.ts" --include="*.js" --exclude-dir=node_modules 'router\.|app\.get|app\.post|app\.put|app\.delete' . 2>/dev/null && echo "DETECTED" || echo "NOT_DETECTED"
54
+ ```
55
+ 1. **Detect private package** [continue-on-error]
56
+ ```bash
57
+ node -e "try{const p=require('./package.json');console.log(p.private===true?'DETECTED':'NOT_DETECTED')}catch(e){console.log('NOT_DETECTED')}"
58
+ ```
59
+
60
+ **Gate:**
61
+ - On failure: warn
62
+
63
+ ### Stage 2: Code Validation
64
+
65
+ - **ID:** `validate`
66
+ - **Depends on:** `preflight`
67
+
68
+ **Agents:**
69
+ - `code-validator`
70
+
71
+ **Gate:**
72
+ - Threshold: 70
73
+ - On failure: abort
74
+
75
+ ### Stage 3: Parallel Validation
76
+
77
+ - **ID:** `parallel-validation`
78
+ - **Depends on:** `validate`
79
+ - **Execution:** parallel
80
+
81
+ **Agents:**
82
+ - `type-safety-validator` (if `stages.preflight.steps['Detect TypeScript'].output == 'DETECTED'`)
83
+ - `test-architect`
84
+ - `public-interface-validator`
85
+
86
+ **Gate:**
87
+ - Threshold: 70
88
+ - Aggregate: min
89
+ - On failure: abort
90
+
91
+ ### Stage 4: Runtime Correctness Audit
92
+
93
+ - **ID:** `code-auditor`
94
+ - **Depends on:** `parallel-validation`
95
+
96
+ **Agents:**
97
+ - `code-auditor`
98
+
99
+ **Gate:**
100
+ - Threshold: 80
101
+ - On failure: abort
102
+
103
+ ### Stage 5: Resilience Anxiety Reading
104
+
105
+ - **ID:** `anxiety-reader`
106
+ - **Depends on:** `code-auditor`
107
+
108
+ **Agents:**
109
+ - `anxiety-reader`
110
+
111
+ **Gate:**
112
+ - Threshold: 70
113
+ - On failure: abort
114
+
115
+ ### Stage 6: Security Audit
116
+
117
+ - **ID:** `security`
118
+ - **Depends on:** `anxiety-reader`
119
+
120
+ **Agents:**
121
+ - `security-analyst`
122
+
123
+ **Gate:**
124
+ - Threshold: 85
125
+ - On failure: abort
126
+
127
+ ### Stage 7: Final Checks
128
+
129
+ - **ID:** `final-checks`
130
+ - **Depends on:** `security`
131
+ - **Execution:** parallel
132
+
133
+ **Agents:**
134
+ - `api-contract-validator` (if `stages.preflight.steps['Detect API routes'].output == 'DETECTED'`)
135
+ - `release-readiness` (if `stages.preflight.steps['Detect private package'].output == 'NOT_DETECTED'`)
136
+
137
+ **Gate:**
138
+ - Threshold: 80
139
+ - Aggregate: min
140
+ - On failure: abort
141
+
142
+ ## Postflight
143
+
144
+ ### Tracker Persistence
145
+
146
+ After all stages complete, save results to the tracker using `save_features_list`:
147
+
148
+ - **definition_type:** `pipeline`
149
+ - **definition_name:** `ship`
150
+ - **definition_version:** `1.1.0`
151
+ - **workflow_type:** `ship`
152
+ - **project:** `$ARGUMENTS` (the target project name)
153
+ - **validators:** Collect each validator/agent result with name, score, status, model, and token usage
154
+ - **recommendations:** Collect ALL issues from ALL stages into a single recommendations array with validator, title, priority, severity, failure_code, file_path, line_number, description, and type
155
+ - **summary:** `{ all_gates_passed: <true if all abort-gates passed>, average_score: <mean of all validator scores> }`
156
+
157
+ This MUST be a single bulk call — do NOT create individual issues. The `save_features_list` tool auto-increments the run number and detects regressions from prior runs.
158
+
159
+ **Token Metrics:**
160
+
161
+ Get token metrics from the agent-metrics buffer before saving:
162
+ ```bash
163
+ agent-metrics buffer list --since 15m -f tracker
164
+ ```
165
+
166
+ Map buffer fields to tracker: `input_tokens`, `output_tokens`, `cache_creation_tokens`, `cache_read_tokens`, `total_effective_tokens`, and `model`.
167
+
168
+ **Field Mappings:**
169
+
170
+ | Source | Tracker Field | Notes |
171
+ |--------|---------------|-------|
172
+ | `stage.gate.score` | `agents[].score` | Total score |
173
+ | `stage.gate.decision` | `agents[].decision` | Agent decision |
174
+ | `agent-metrics` | `agents[].model` | Model identifier |
175
+ | `stage.output.issues` | `recommendations[]` | Flatten nested structure |
176
+
177
+ **Verification:** After saving, compare `json.summary.total_issues` with the saved count. Alert if mismatch.
178
+
179
+ ### On Success
180
+
181
+ - **SHIP IT — All gates passed. Results persisted.**
182
+
183
+ ### On Failure
184
+
185
+ - **NOT READY — Blocking issues found. Fix and re-run.**
186
+
187
+ ---
188
+ *Generated from PDL v1.1.0 | Pipeline: ship*