awesome-slash 3.8.0 → 3.8.2

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 (38) hide show
  1. package/.claude-plugin/marketplace.json +10 -10
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +18 -0
  4. package/README.md +1 -2
  5. package/adapters/opencode/install.sh +63 -4
  6. package/adapters/opencode-plugin/index.ts +1 -1
  7. package/bin/cli.js +3 -1
  8. package/lib/patterns/slop-patterns.js +18 -0
  9. package/meta/skills/maintain-cross-platform/SKILL.md +1 -3
  10. package/package.json +1 -1
  11. package/plugins/audit-project/.claude-plugin/plugin.json +1 -1
  12. package/plugins/audit-project/lib/patterns/slop-patterns.js +18 -0
  13. package/plugins/deslop/.claude-plugin/plugin.json +1 -1
  14. package/plugins/deslop/lib/patterns/slop-patterns.js +18 -0
  15. package/plugins/deslop/references/slop-categories.md +15 -0
  16. package/plugins/drift-detect/.claude-plugin/plugin.json +1 -1
  17. package/plugins/drift-detect/lib/patterns/slop-patterns.js +18 -0
  18. package/plugins/enhance/.claude-plugin/plugin.json +1 -1
  19. package/plugins/enhance/lib/patterns/slop-patterns.js +18 -0
  20. package/plugins/next-task/.claude-plugin/plugin.json +1 -1
  21. package/plugins/next-task/agents/implementation-agent.md +2 -2
  22. package/plugins/next-task/agents/simple-fixer.md +1 -1
  23. package/plugins/next-task/agents/test-coverage-checker.md +1 -1
  24. package/plugins/next-task/commands/next-task.md +125 -66
  25. package/plugins/next-task/hooks/hooks.json +1 -1
  26. package/plugins/next-task/lib/patterns/slop-patterns.js +18 -0
  27. package/plugins/next-task/skills/orchestrate-review/SKILL.md +1 -1
  28. package/plugins/perf/.claude-plugin/plugin.json +1 -1
  29. package/plugins/perf/lib/patterns/slop-patterns.js +18 -0
  30. package/plugins/repo-map/.claude-plugin/plugin.json +1 -1
  31. package/plugins/repo-map/lib/patterns/slop-patterns.js +18 -0
  32. package/plugins/ship/.claude-plugin/plugin.json +1 -1
  33. package/plugins/ship/commands/ship.md +1 -1
  34. package/plugins/ship/lib/patterns/slop-patterns.js +18 -0
  35. package/plugins/sync-docs/.claude-plugin/plugin.json +1 -1
  36. package/plugins/sync-docs/lib/patterns/slop-patterns.js +18 -0
  37. package/scripts/dev-install.js +116 -34
  38. package/scripts/validate-opencode-install.js +16 -2
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "awesome-slash",
3
3
  "description": "9 specialized plugins for AI workflow automation - task orchestration, PR workflow, slop detection, code review, drift detection, enhancement analysis, documentation sync, repo mapping, and perf investigations",
4
- "version": "3.8.0",
4
+ "version": "3.8.2",
5
5
  "owner": {
6
6
  "name": "Avi Fenesh",
7
7
  "url": "https://github.com/avifenesh"
@@ -26,63 +26,63 @@
26
26
  "name": "next-task",
27
27
  "source": "./plugins/next-task",
28
28
  "description": "Master workflow orchestrator: autonomous workflow with model optimization (opus/sonnet/haiku), two-file state management, workflow enforcement gates, 14 specialist agents",
29
- "version": "3.8.0",
29
+ "version": "3.8.2",
30
30
  "category": "productivity"
31
31
  },
32
32
  {
33
33
  "name": "ship",
34
34
  "source": "./plugins/ship",
35
35
  "description": "Complete PR workflow: commit to production, skips review when called from next-task, removes task from registry on cleanup, automatic rollback",
36
- "version": "3.8.0",
36
+ "version": "3.8.2",
37
37
  "category": "deployment"
38
38
  },
39
39
  {
40
40
  "name": "deslop",
41
41
  "source": "./plugins/deslop",
42
42
  "description": "3-phase AI slop detection: regex patterns (HIGH), multi-pass analyzers (MEDIUM), CLI tools (LOW)",
43
- "version": "3.8.0",
43
+ "version": "3.8.2",
44
44
  "category": "development"
45
45
  },
46
46
  {
47
47
  "name": "audit-project",
48
48
  "source": "./plugins/audit-project",
49
49
  "description": "Multi-agent iterative code review until zero issues remain",
50
- "version": "3.8.0",
50
+ "version": "3.8.2",
51
51
  "category": "development"
52
52
  },
53
53
  {
54
54
  "name": "drift-detect",
55
55
  "source": "./plugins/drift-detect",
56
56
  "description": "Deep repository analysis to realign project plans with code reality - detects drift, gaps, and creates prioritized reconstruction plans",
57
- "version": "3.8.0",
57
+ "version": "3.8.2",
58
58
  "category": "productivity"
59
59
  },
60
60
  {
61
61
  "name": "enhance",
62
62
  "source": "./plugins/enhance",
63
63
  "description": "Master enhancement orchestrator: parallel analyzer execution for plugins, agents, docs, CLAUDE.md, and prompts with unified reporting",
64
- "version": "3.8.0",
64
+ "version": "3.8.2",
65
65
  "category": "development"
66
66
  },
67
67
  {
68
68
  "name": "sync-docs",
69
69
  "source": "./plugins/sync-docs",
70
70
  "description": "Standalone documentation sync: find outdated refs, update CHANGELOG, flag stale examples based on code changes",
71
- "version": "3.8.0",
71
+ "version": "3.8.2",
72
72
  "category": "development"
73
73
  },
74
74
  {
75
75
  "name": "repo-map",
76
76
  "source": "./plugins/repo-map",
77
77
  "description": "AST-based repository map generation using ast-grep with incremental updates for faster drift analysis",
78
- "version": "3.8.0",
78
+ "version": "3.8.2",
79
79
  "category": "development"
80
80
  },
81
81
  {
82
82
  "name": "perf",
83
83
  "source": "./plugins/perf",
84
84
  "description": "Rigorous performance investigation workflow with baselines, profiling, hypotheses, and evidence-backed decisions",
85
- "version": "3.8.0",
85
+ "version": "3.8.2",
86
86
  "category": "development"
87
87
  }
88
88
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awesome-slash",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "Professional-grade slash commands for Claude Code with cross-platform support",
5
5
  "keywords": [
6
6
  "workflow",
package/CHANGELOG.md CHANGED
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [3.8.2] - 2026-02-04
11
+
12
+ ### Fixed
13
+ - **Policy Questions Enforcement** - /next-task Phase 1 now explicitly requires all 3 policy questions (Source, Priority, Stop Point) with table and forbidden actions
14
+ - **Codex CLI Installer** - Fixed undefined `configPath` variable (should be `configDir`)
15
+
16
+ ### Changed
17
+ - **XML Tag Consistency** - All 12 workflow phases now wrapped in consistent `<phase-N>` tags
18
+ - **Constructive Language** - Replaced "you are wrong" with guidance pointing to consequences table
19
+ - **Redundancy Reduction** - Consolidated duplicate forbidden actions lists
20
+
21
+ ## [3.8.1] - 2026-02-04
22
+
23
+ ### Fixed
24
+ - **Stop Point Options** - Restored missing "Deployed" and "Production" options in OpenCode embedded policy
25
+ - **Phase 9 Review Loop** - Rewrote instructions to explicitly require spawning 4 parallel reviewer agents (code-quality, security, performance, test-coverage) instead of single generic reviewer
26
+ - **Agent Naming Consistency** - Standardized all references from legacy `deslop-work` to `deslop:deslop-agent` across 12 files (docs, configs, agent prompts)
27
+
10
28
  ## [3.8.0] - 2026-02-02
11
29
 
12
30
  ### Added
package/README.md CHANGED
@@ -603,7 +603,7 @@ Every command works standalone. [`/deslop`](#deslop) cleans code without needing
603
603
 
604
604
  ## Installation
605
605
 
606
- ### Claude Code (Recommended)
606
+ ### Claude Code (Recommended way)
607
607
 
608
608
  ```bash
609
609
  /plugin marketplace add avifenesh/awesome-slash
@@ -700,7 +700,6 @@ This project is built on research, not guesswork.
700
700
  |-------|------|
701
701
  | Slop Patterns | [docs/reference/SLOP-PATTERNS.md](./docs/reference/SLOP-PATTERNS.md) |
702
702
  | Agent Reference | [docs/reference/AGENTS.md](./docs/reference/AGENTS.md) |
703
- | MCP Tools | [docs/reference/MCP-TOOLS.md](./docs/reference/MCP-TOOLS.md) |
704
703
 
705
704
  ---
706
705
 
@@ -12,10 +12,22 @@ REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
12
12
 
13
13
  # Use $HOME which works correctly on all platforms including Git Bash on Windows
14
14
  # (Git Bash sets HOME to Unix-style path like /c/Users/username)
15
- OPENCODE_CONFIG_DIR="${HOME}/.opencode"
16
- OPENCODE_COMMANDS_DIR="${OPENCODE_CONFIG_DIR}/commands/awesome-slash"
15
+ # OpenCode global config follows XDG Base Directory Specification:
16
+ # - Default: ~/.config/opencode/
17
+ # - Override: $XDG_CONFIG_HOME/opencode/ (if XDG_CONFIG_HOME is set and not empty/whitespace)
18
+ # Note: Must match logic in scripts/dev-install.js getOpenCodeConfigDir()
19
+ if [[ -n "${XDG_CONFIG_HOME}" && "${XDG_CONFIG_HOME}" =~ [^[:space:]] ]]; then
20
+ OPENCODE_CONFIG_DIR="${XDG_CONFIG_HOME}/opencode"
21
+ else
22
+ OPENCODE_CONFIG_DIR="${HOME}/.config/opencode"
23
+ fi
24
+ # OpenCode expects commands directly in commands/, not a subdirectory
25
+ OPENCODE_COMMANDS_DIR="${OPENCODE_CONFIG_DIR}/commands"
17
26
  LIB_DIR="${OPENCODE_COMMANDS_DIR}/lib"
18
27
 
28
+ # Legacy path for cleanup (incorrect, pre-XDG location)
29
+ LEGACY_OPENCODE_DIR="${HOME}/.opencode"
30
+
19
31
  # Detect OS for platform-specific notes
20
32
  if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" || "$OSTYPE" == "cygwin" ]]; then
21
33
  IS_WINDOWS=true
@@ -235,17 +247,64 @@ else
235
247
  fi
236
248
  echo
237
249
 
250
+ # Clean up legacy paths (~/.opencode/ - incorrect, pre-XDG location)
251
+ echo "[CLEANUP] Checking for legacy installations..."
252
+ LEGACY_COMMANDS_DIR="${LEGACY_OPENCODE_DIR}/commands/awesome-slash"
253
+ LEGACY_PLUGINS_DIR="${LEGACY_OPENCODE_DIR}/plugins/awesome-slash"
254
+ LEGACY_AGENTS_DIR="${LEGACY_OPENCODE_DIR}/agents"
255
+
256
+ cleaned_legacy=false
257
+ if [ -d "$LEGACY_COMMANDS_DIR" ]; then
258
+ rm -rf "$LEGACY_COMMANDS_DIR"
259
+ echo " [DEL] Removed legacy ~/.opencode/commands/awesome-slash"
260
+ cleaned_legacy=true
261
+ fi
262
+ if [ -d "$LEGACY_PLUGINS_DIR" ]; then
263
+ rm -rf "$LEGACY_PLUGINS_DIR"
264
+ echo " [DEL] Removed legacy ~/.opencode/plugins/awesome-slash"
265
+ cleaned_legacy=true
266
+ fi
267
+ if [ -d "$LEGACY_AGENTS_DIR" ]; then
268
+ # Only remove known agent files, not the whole directory
269
+ # Must match list in scripts/dev-install.js knownAgents array
270
+ # Generated from: ls plugins/*/agents/*.md | xargs basename | sort -u
271
+ known_agents=(
272
+ 'agent-enhancer.md' 'ci-fixer.md' 'ci-monitor.md' 'claudemd-enhancer.md'
273
+ 'delivery-validator.md' 'deslop-agent.md' 'docs-enhancer.md' 'enhancement-orchestrator.md'
274
+ 'enhancement-reporter.md' 'exploration-agent.md' 'hooks-enhancer.md' 'implementation-agent.md'
275
+ 'map-validator.md' 'perf-analyzer.md' 'perf-code-paths.md' 'perf-investigation-logger.md'
276
+ 'perf-orchestrator.md' 'perf-theory-gatherer.md' 'perf-theory-tester.md' 'plan-synthesizer.md'
277
+ 'planning-agent.md' 'plugin-enhancer.md' 'prompt-enhancer.md' 'simple-fixer.md'
278
+ 'skills-enhancer.md' 'sync-docs-agent.md' 'task-discoverer.md' 'test-coverage-checker.md'
279
+ 'worktree-manager.md'
280
+ )
281
+ for agent in "${known_agents[@]}"; do
282
+ if [ -f "$LEGACY_AGENTS_DIR/$agent" ]; then
283
+ rm "$LEGACY_AGENTS_DIR/$agent"
284
+ cleaned_legacy=true
285
+ fi
286
+ done
287
+ if [ "$cleaned_legacy" = true ]; then
288
+ echo " [DEL] Removed legacy agent files from ~/.opencode/agents"
289
+ fi
290
+ fi
291
+ if [ "$cleaned_legacy" = false ]; then
292
+ echo " [OK] No legacy installations found"
293
+ fi
294
+ echo
295
+
238
296
  # Success message
239
297
  echo "[OK] Installation complete!"
240
298
  echo
241
299
  echo "[LIST] Installed Commands:"
242
- for cmd in "${COMMANDS[@]}"; do
300
+ for mapping in "${COMMAND_MAPPINGS[@]}"; do
301
+ IFS=':' read -r cmd _ _ <<< "$mapping"
243
302
  echo " • /$cmd"
244
303
  done
245
304
  echo
246
305
  echo "[NEXT] Next Steps:"
247
306
  echo " 1. Start OpenCode TUI: opencode"
248
- echo " 2. Use commands: /$cmd"
307
+ echo " 2. Use commands: /next-task, /ship, etc."
249
308
  echo " 3. See help: cat $OPENCODE_COMMANDS_DIR/README.md"
250
309
  echo
251
310
  echo "[TIP] OpenCode Pro Tips:"
@@ -28,7 +28,7 @@ const AGENT_THINKING_CONFIG: Record<string, { budget: number; description: strin
28
28
 
29
29
  // Analysis tier - moderate thinking (12k)
30
30
  "exploration-agent": { budget: 12000, description: "Codebase exploration" },
31
- "deslop-work": { budget: 12000, description: "Slop detection" },
31
+ "deslop-agent": { budget: 12000, description: "Slop detection" },
32
32
  "test-coverage-checker": { budget: 12000, description: "Coverage analysis" },
33
33
  "ci-fixer": { budget: 12000, description: "CI problem solving" },
34
34
 
package/bin/cli.js CHANGED
@@ -513,6 +513,8 @@ Ask the user these questions using AskUserQuestion:
513
513
  - Merged - Until PR is merged to main
514
514
  - PR Created - Stop after creating PR
515
515
  - Implemented - Stop after local implementation
516
+ - Deployed - Deploy to staging
517
+ - Production - Full production deployment
516
518
 
517
519
  After user answers, proceed to Phase 2 with the selected policy.
518
520
 
@@ -795,7 +797,7 @@ function installForCodex(installDir) {
795
797
  }
796
798
 
797
799
  console.log('\n[OK] Codex CLI installation complete!');
798
- console.log(` Config: ${configPath}`);
800
+ console.log(` Config: ${configDir}`);
799
801
  console.log(` Skills: ${skillsDir}`);
800
802
  console.log(' Access via: $next-task, $ship, $deslop, etc.\n');
801
803
  return true;
@@ -275,6 +275,24 @@ const slopPatterns = {
275
275
  description: 'Rust panic!("TODO: ...") placeholder'
276
276
  },
277
277
 
278
+ /**
279
+ * Rust: Bare .unwrap() calls without error context
280
+ * Can cause panics in production - prefer:
281
+ * - .unwrap_or(default) / .unwrap_or_else(|| ...)
282
+ * - .unwrap_or_default()
283
+ * - .expect("descriptive message")
284
+ * - ? operator for propagation
285
+ * - .ok() / .map() / .and_then() for transformation
286
+ */
287
+ rust_bare_unwrap: {
288
+ pattern: /\.unwrap\(\s*\)(?!\s*\.)/,
289
+ exclude: ['*_test.rs', '*_tests.rs', '**/tests/**', '**/examples/**', '**/benches/**'],
290
+ severity: 'medium',
291
+ autoFix: 'flag',
292
+ language: 'rust',
293
+ description: 'Bare .unwrap() can panic - use .expect(), .unwrap_or(), or ? operator'
294
+ },
295
+
278
296
  /**
279
297
  * Python: raise NotImplementedError
280
298
  */
@@ -274,8 +274,7 @@ Same as RC but:
274
274
  1. **mcp-server/index.js** - Add to TOOLS array and toolHandlers
275
275
  2. **.claude-plugin/marketplace.json** - Add to `mcpServer.tools` array
276
276
  3. **bin/cli.js** - Update MCP tools console output (OpenCode + Codex)
277
- 4. **docs/reference/MCP-TOOLS.md** - Document the tool
278
- 5. **README.md** - Add to MCP tools table if user-facing
277
+ 4. **README.md** - Add to MCP tools table if user-facing
279
278
 
280
279
  ### If Library Module Changed
281
280
 
@@ -693,7 +692,6 @@ const toolHandlers = {
693
692
  ```
694
693
 
695
694
  **3. Update docs:**
696
- - `docs/reference/MCP-TOOLS.md` - Full tool documentation
697
695
  - `README.md` - Add to features if user-facing
698
696
 
699
697
  ---
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awesome-slash",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "9 specialized plugins for AI workflow automation (drift detection + AST repo maps) - works with Claude Code, OpenCode, and Codex CLI",
5
5
  "main": "lib/platform/detect-platform.js",
6
6
  "type": "commonjs",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "audit-project",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "Multi-agent iterative code review until zero issues remain",
5
5
  "author": {
6
6
  "name": "Avi Fenesh",
@@ -275,6 +275,24 @@ const slopPatterns = {
275
275
  description: 'Rust panic!("TODO: ...") placeholder'
276
276
  },
277
277
 
278
+ /**
279
+ * Rust: Bare .unwrap() calls without error context
280
+ * Can cause panics in production - prefer:
281
+ * - .unwrap_or(default) / .unwrap_or_else(|| ...)
282
+ * - .unwrap_or_default()
283
+ * - .expect("descriptive message")
284
+ * - ? operator for propagation
285
+ * - .ok() / .map() / .and_then() for transformation
286
+ */
287
+ rust_bare_unwrap: {
288
+ pattern: /\.unwrap\(\s*\)(?!\s*\.)/,
289
+ exclude: ['*_test.rs', '*_tests.rs', '**/tests/**', '**/examples/**', '**/benches/**'],
290
+ severity: 'medium',
291
+ autoFix: 'flag',
292
+ language: 'rust',
293
+ description: 'Bare .unwrap() can panic - use .expect(), .unwrap_or(), or ? operator'
294
+ },
295
+
278
296
  /**
279
297
  * Python: raise NotImplementedError
280
298
  */
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deslop",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "AI slop cleanup with minimal diffs and behavior preservation",
5
5
  "author": {
6
6
  "name": "Avi Fenesh",
@@ -275,6 +275,24 @@ const slopPatterns = {
275
275
  description: 'Rust panic!("TODO: ...") placeholder'
276
276
  },
277
277
 
278
+ /**
279
+ * Rust: Bare .unwrap() calls without error context
280
+ * Can cause panics in production - prefer:
281
+ * - .unwrap_or(default) / .unwrap_or_else(|| ...)
282
+ * - .unwrap_or_default()
283
+ * - .expect("descriptive message")
284
+ * - ? operator for propagation
285
+ * - .ok() / .map() / .and_then() for transformation
286
+ */
287
+ rust_bare_unwrap: {
288
+ pattern: /\.unwrap\(\s*\)(?!\s*\.)/,
289
+ exclude: ['*_test.rs', '*_tests.rs', '**/tests/**', '**/examples/**', '**/benches/**'],
290
+ severity: 'medium',
291
+ autoFix: 'flag',
292
+ language: 'rust',
293
+ description: 'Bare .unwrap() can panic - use .expect(), .unwrap_or(), or ? operator'
294
+ },
295
+
278
296
  /**
279
297
  * Python: raise NotImplementedError
280
298
  */
@@ -14,6 +14,21 @@ Detailed reference for all slop patterns detected by the pipeline.
14
14
 
15
15
  **Excludes**: Test files, CLI entry points, config files
16
16
 
17
+ ### Unsafe Error Handling (Rust)
18
+
19
+ | Pattern | Severity | Better Alternatives |
20
+ |---------|----------|---------------------|
21
+ | `.unwrap()` | medium | `.expect("msg")`, `.unwrap_or(default)`, `?` operator |
22
+
23
+ Bare `.unwrap()` calls can cause panics in production. Prefer:
24
+ - `.expect("descriptive message")` - panic with context
25
+ - `.unwrap_or(default)` / `.unwrap_or_default()` - provide fallback
26
+ - `.unwrap_or_else(\|\| ...)` - lazy fallback computation
27
+ - `?` operator - propagate errors to caller
28
+ - `.ok()` / `.map()` / `.and_then()` - transform Result/Option
29
+
30
+ **Excludes**: Test files, examples, benchmarks
31
+
17
32
  ### Placeholder Code
18
33
 
19
34
  | Pattern | Language | Severity |
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drift-detect",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "Deep repository analysis to realign project plans with actual code reality - discovers drift, gaps, and produces prioritized reconstruction plans",
5
5
  "author": {
6
6
  "name": "Avi Fenesh",
@@ -275,6 +275,24 @@ const slopPatterns = {
275
275
  description: 'Rust panic!("TODO: ...") placeholder'
276
276
  },
277
277
 
278
+ /**
279
+ * Rust: Bare .unwrap() calls without error context
280
+ * Can cause panics in production - prefer:
281
+ * - .unwrap_or(default) / .unwrap_or_else(|| ...)
282
+ * - .unwrap_or_default()
283
+ * - .expect("descriptive message")
284
+ * - ? operator for propagation
285
+ * - .ok() / .map() / .and_then() for transformation
286
+ */
287
+ rust_bare_unwrap: {
288
+ pattern: /\.unwrap\(\s*\)(?!\s*\.)/,
289
+ exclude: ['*_test.rs', '*_tests.rs', '**/tests/**', '**/examples/**', '**/benches/**'],
290
+ severity: 'medium',
291
+ autoFix: 'flag',
292
+ language: 'rust',
293
+ description: 'Bare .unwrap() can panic - use .expect(), .unwrap_or(), or ? operator'
294
+ },
295
+
278
296
  /**
279
297
  * Python: raise NotImplementedError
280
298
  */
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "enhance",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "Plugin structure and tool use analyzer - validates plugin.json, MCP tools, and security patterns",
5
5
  "author": {
6
6
  "name": "Avi Fenesh",
@@ -275,6 +275,24 @@ const slopPatterns = {
275
275
  description: 'Rust panic!("TODO: ...") placeholder'
276
276
  },
277
277
 
278
+ /**
279
+ * Rust: Bare .unwrap() calls without error context
280
+ * Can cause panics in production - prefer:
281
+ * - .unwrap_or(default) / .unwrap_or_else(|| ...)
282
+ * - .unwrap_or_default()
283
+ * - .expect("descriptive message")
284
+ * - ? operator for propagation
285
+ * - .ok() / .map() / .and_then() for transformation
286
+ */
287
+ rust_bare_unwrap: {
288
+ pattern: /\.unwrap\(\s*\)(?!\s*\.)/,
289
+ exclude: ['*_test.rs', '*_tests.rs', '**/tests/**', '**/examples/**', '**/benches/**'],
290
+ severity: 'medium',
291
+ autoFix: 'flag',
292
+ language: 'rust',
293
+ description: 'Bare .unwrap() can panic - use .expect(), .unwrap_or(), or ? operator'
294
+ },
295
+
278
296
  /**
279
297
  * Python: raise NotImplementedError
280
298
  */
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "next-task",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "Master workflow orchestrator with autonomous task-to-production automation, quality gates, and multi-agent review",
5
5
  "author": {
6
6
  "name": "Avi Fenesh",
@@ -377,7 +377,7 @@ implementation-agent (YOU ARE HERE)
377
377
 
378
378
  SubagentStop hook triggers automatically
379
379
 
380
- Pre-review gates: deslop-work + test-coverage-checker
380
+ Pre-review gates: deslop:deslop-agent + test-coverage-checker
381
381
 
382
382
  Phase 9 review loop (must approve)
383
383
 
@@ -424,7 +424,7 @@ ${gitLog}
424
424
 
425
425
  ---
426
426
  [STOP] STOPPING HERE - SubagentStop hook will trigger pre-review gates
427
- → deslop-work + test-coverage-checker (parallel)
427
+ → deslop:deslop-agent + test-coverage-checker (parallel)
428
428
  → Phase 9 review loop
429
429
  → delivery-validator
430
430
  → sync-docs:sync-docs-agent
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: simple-fixer
3
- description: Execute simple, pre-defined code fixes. Use this agent when deslop-work or sync-docs:sync-docs-agent has a list of straightforward edits to apply.
3
+ description: Execute simple, pre-defined code fixes. Use this agent when deslop:deslop-agent or sync-docs:sync-docs-agent has a list of straightforward edits to apply.
4
4
  tools: Read, Edit, Bash(git:*)
5
5
  model: haiku
6
6
  ---
@@ -423,7 +423,7 @@ ${summary.recommendation}
423
423
  ## Integration Points
424
424
 
425
425
  This agent is called:
426
- 1. **Before first review round** - In parallel with deslop-work
426
+ 1. **Before first review round** - In parallel with deslop:deslop-agent
427
427
  2. Results passed to Phase 9 review loop for context
428
428
 
429
429
  ## Success Criteria