spidersan 0.4.3 ā 0.5.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.
- package/CHANGELOG.md +124 -0
- package/README.md +95 -23
- package/dist/bin/spidersan.d.ts.map +1 -1
- package/dist/bin/spidersan.js +22 -2
- package/dist/bin/spidersan.js.map +1 -1
- package/dist/commands/abandon.d.ts.map +1 -1
- package/dist/commands/abandon.js +4 -2
- package/dist/commands/abandon.js.map +1 -1
- package/dist/commands/auto.js +6 -6
- package/dist/commands/auto.js.map +1 -1
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +3 -8
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/config.d.ts +7 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +12 -0
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/conflicts.d.ts.map +1 -1
- package/dist/commands/conflicts.js +238 -34
- package/dist/commands/conflicts.js.map +1 -1
- package/dist/commands/cross-conflicts.d.ts +17 -0
- package/dist/commands/cross-conflicts.d.ts.map +1 -0
- package/dist/commands/cross-conflicts.js +305 -0
- package/dist/commands/cross-conflicts.js.map +1 -0
- package/dist/commands/daily.d.ts +7 -0
- package/dist/commands/daily.d.ts.map +1 -0
- package/dist/commands/daily.js +171 -0
- package/dist/commands/daily.js.map +1 -0
- package/dist/commands/dashboard.d.ts +22 -0
- package/dist/commands/dashboard.d.ts.map +1 -0
- package/dist/commands/dashboard.js +401 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/depends.js +2 -2
- package/dist/commands/depends.js.map +1 -1
- package/dist/commands/doctor.d.ts +22 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +215 -14
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/github-sync.d.ts +9 -0
- package/dist/commands/github-sync.d.ts.map +1 -0
- package/dist/commands/github-sync.js +180 -0
- package/dist/commands/github-sync.js.map +1 -0
- package/dist/commands/index.d.ts +11 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +17 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/log.d.ts +3 -4
- package/dist/commands/log.d.ts.map +1 -1
- package/dist/commands/log.js +102 -87
- package/dist/commands/log.js.map +1 -1
- package/dist/commands/merge-order.js +8 -1
- package/dist/commands/merge-order.js.map +1 -1
- package/dist/commands/merged.d.ts.map +1 -1
- package/dist/commands/merged.js +4 -2
- package/dist/commands/merged.js.map +1 -1
- package/dist/commands/pulse.d.ts +6 -2
- package/dist/commands/pulse.d.ts.map +1 -1
- package/dist/commands/pulse.js +152 -202
- package/dist/commands/pulse.js.map +1 -1
- package/dist/commands/queen.d.ts +25 -0
- package/dist/commands/queen.d.ts.map +1 -0
- package/dist/commands/queen.js +309 -0
- package/dist/commands/queen.js.map +1 -0
- package/dist/commands/ready-check.d.ts +1 -0
- package/dist/commands/ready-check.d.ts.map +1 -1
- package/dist/commands/ready-check.js +43 -28
- package/dist/commands/ready-check.js.map +1 -1
- package/dist/commands/rebase-helper.d.ts +3 -0
- package/dist/commands/rebase-helper.d.ts.map +1 -0
- package/dist/commands/rebase-helper.js +52 -0
- package/dist/commands/rebase-helper.js.map +1 -0
- package/dist/commands/register.d.ts +2 -0
- package/dist/commands/register.d.ts.map +1 -1
- package/dist/commands/register.js +66 -10
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/registry-sync.d.ts +9 -0
- package/dist/commands/registry-sync.d.ts.map +1 -0
- package/dist/commands/registry-sync.js +163 -0
- package/dist/commands/registry-sync.js.map +1 -0
- package/dist/commands/rescue.d.ts.map +1 -1
- package/dist/commands/rescue.js +69 -12
- package/dist/commands/rescue.js.map +1 -1
- package/dist/commands/stale.d.ts +16 -0
- package/dist/commands/stale.d.ts.map +1 -1
- package/dist/commands/stale.js +55 -21
- package/dist/commands/stale.js.map +1 -1
- package/dist/commands/sync-advisor.d.ts +14 -0
- package/dist/commands/sync-advisor.d.ts.map +1 -0
- package/dist/commands/sync-advisor.js +110 -0
- package/dist/commands/sync-advisor.js.map +1 -0
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +16 -5
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/torrent.d.ts.map +1 -1
- package/dist/commands/torrent.js +45 -22
- package/dist/commands/torrent.js.map +1 -1
- package/dist/commands/watch.d.ts.map +1 -1
- package/dist/commands/watch.js +198 -7
- package/dist/commands/watch.js.map +1 -1
- package/dist/lib/activity.d.ts +53 -0
- package/dist/lib/activity.d.ts.map +1 -0
- package/dist/lib/activity.js +267 -0
- package/dist/lib/activity.js.map +1 -0
- package/dist/lib/agent-errors.d.ts.map +1 -1
- package/dist/lib/agent-errors.js +3 -1
- package/dist/lib/agent-errors.js.map +1 -1
- package/dist/lib/ast.d.ts.map +1 -1
- package/dist/lib/ast.js +66 -19
- package/dist/lib/ast.js.map +1 -1
- package/dist/lib/colony-subscriber.d.ts +53 -0
- package/dist/lib/colony-subscriber.d.ts.map +1 -0
- package/dist/lib/colony-subscriber.js +184 -0
- package/dist/lib/colony-subscriber.js.map +1 -0
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +7 -3
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/crypto.d.ts.map +1 -1
- package/dist/lib/crypto.js +7 -3
- package/dist/lib/crypto.js.map +1 -1
- package/dist/lib/daily-bridge.d.ts +41 -0
- package/dist/lib/daily-bridge.d.ts.map +1 -0
- package/dist/lib/daily-bridge.js +185 -0
- package/dist/lib/daily-bridge.js.map +1 -0
- package/dist/lib/github.d.ts +83 -0
- package/dist/lib/github.d.ts.map +1 -0
- package/dist/lib/github.js +206 -0
- package/dist/lib/github.js.map +1 -0
- package/dist/lib/repo-scanner.d.ts +36 -0
- package/dist/lib/repo-scanner.d.ts.map +1 -0
- package/dist/lib/repo-scanner.js +159 -0
- package/dist/lib/repo-scanner.js.map +1 -0
- package/dist/lib/salvage-analyzer.d.ts +29 -0
- package/dist/lib/salvage-analyzer.d.ts.map +1 -0
- package/dist/lib/salvage-analyzer.js +122 -0
- package/dist/lib/salvage-analyzer.js.map +1 -0
- package/dist/lib/security.d.ts +15 -8
- package/dist/lib/security.d.ts.map +1 -1
- package/dist/lib/security.js +36 -1
- package/dist/lib/security.js.map +1 -1
- package/dist/lib/symbol-extractor.d.ts +41 -0
- package/dist/lib/symbol-extractor.d.ts.map +1 -0
- package/dist/lib/symbol-extractor.js +78 -0
- package/dist/lib/symbol-extractor.js.map +1 -0
- package/dist/storage/adapter.d.ts +1 -1
- package/dist/storage/adapter.d.ts.map +1 -1
- package/dist/storage/git-messages.d.ts.map +1 -1
- package/dist/storage/git-messages.js +57 -53
- package/dist/storage/git-messages.js.map +1 -1
- package/dist/storage/local.d.ts +1 -1
- package/dist/storage/local.d.ts.map +1 -1
- package/dist/storage/local.js +7 -5
- package/dist/storage/local.js.map +1 -1
- package/dist/storage/mycmail-adapter.d.ts.map +1 -1
- package/dist/storage/mycmail-adapter.js +11 -6
- package/dist/storage/mycmail-adapter.js.map +1 -1
- package/dist/storage/supabase.d.ts +21 -1
- package/dist/storage/supabase.d.ts.map +1 -1
- package/dist/storage/supabase.js +171 -6
- package/dist/storage/supabase.js.map +1 -1
- package/dist/tui/dashboard.d.ts.map +1 -1
- package/dist/tui/dashboard.js +15 -6
- package/dist/tui/dashboard.js.map +1 -1
- package/dist/types/cloud.d.ts +101 -0
- package/dist/types/cloud.d.ts.map +1 -0
- package/dist/types/cloud.js +13 -0
- package/dist/types/cloud.js.map +1 -0
- package/package.json +9 -6
- package/dist/commands/sync-all.d.ts +0 -9
- package/dist/commands/sync-all.d.ts.map +0 -1
- package/dist/commands/sync-all.js +0 -180
- package/dist/commands/sync-all.js.map +0 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.5.0] - 2026-03-24
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- **Ecosystem scan**: `spidersan conflicts --ecosystem` ā multi-repo aggregate conflict scan across all registered repos (29 repos in default sweep)
|
|
14
|
+
- **Colony integration**: `spidersan pulse` ā sync from Colony then show active conflicts; colony subscriber hooks; cross-machine cross-conflicts
|
|
15
|
+
- **Queen command**: `spidersan queen` ā Mode 3 Queen Spider; dispatches sub-spidersan jobs in parallel across repos
|
|
16
|
+
- **Activity log**: `spidersan log` ā structured activity event log; wired into `sync` and `conflicts` commands
|
|
17
|
+
- **Daily bridge**: `spidersan daily` ā branch-aware daily collab entry bridge (L2)
|
|
18
|
+
- **PR conflict detection**: `spidersan conflicts --pr <num>` ā detect conflicts against a specific open PR
|
|
19
|
+
- **Stale auto-cleanup**: `spidersan stale --auto-cleanup` ā non-interactive batch branch removal
|
|
20
|
+
- **Cross-machine registry sync**: `spidersan registry-sync` ā push/pull branch registry to/from Supabase (F1/F3)
|
|
21
|
+
- **GitHub branch inventory**: `spidersan github-sync` ā fetch branch/PR/CI status from GitHub (F2/F4)
|
|
22
|
+
- **Sync advisor**: `spidersan sync-advisor` ā scan repos and recommend push/pull actions
|
|
23
|
+
- **TUI Dashboard** (Phase A): 4-panel blessed UI with ecosystem overview, conflict map, activity feed, and merge queue
|
|
24
|
+
- **MCP Wave 3 ecosystem tools**: additional MCP server tools for ecosystem-level operations
|
|
25
|
+
- **Toak MCP**: toak MCP server now loads correctly in Copilot CLI via `scripts/toak-mcp-wrapper.sh`
|
|
26
|
+
- **Dawn script**: `bin/dawn.sh` ā fleet agent session startup (git sync, vault, colony, inbox)
|
|
27
|
+
- **Close script**: `bin/close.sh` ā session close ceremony with pending task generation
|
|
28
|
+
- **`.myctoak/registry.json`**: spidersan table ownership declaration for MycToak
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- **Dynamic path resolution** (Phase 2b): all hardcoded `/Users/freedbird/Dev/` paths replaced with `process.env.HOME` / `os.homedir()` fallbacks ā ecosystem repos, treetop repos, queen paths, MCP wrapper scripts all portable
|
|
32
|
+
- **Privacy**: `homedir()` fallback in `conflicts.ts`, `queen.ts`, `watch.ts` ā safe to publish to npm
|
|
33
|
+
- **TOAK_AGENT_ID**: now auto-injected via vault key ā no manual prefix required
|
|
34
|
+
- **ready-check**: WIP markers are advisory only; only branch file conflicts block merges
|
|
35
|
+
- **Colony vars**: falls back to `SUPABASE_URL`/`SUPABASE_KEY` if `COLONY_*` vars not set
|
|
36
|
+
- **Sync**: remote branches included in orphan detection
|
|
37
|
+
|
|
38
|
+
### Performance
|
|
39
|
+
- **O(1) file overlap**: Set pre-computation in `buildConflictGraph`, `watch`, `torrent`, `ready-check` (was O(n²))
|
|
40
|
+
- **AST traversal ~6Ć speedup**: TreeCursor-based traversal replacing recursive walk
|
|
41
|
+
- **N+1 elimination**: `conflicts --wake` branchMap pre-fetch; `cleanup` bulk patch
|
|
42
|
+
- **Batch Supabase**: `pushRegistry` batched upserts; stale notifications batched
|
|
43
|
+
- **`findByFiles` optimization**: Array intersection via Set lookup in local storage
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
- MCP: `isError: true` added to all 40 error response paths
|
|
47
|
+
- Dashboard: non-TTY guard prevents crash in CI; suppress console bleed in TUI; `padEnd`/`escapeBlessed` ordering fix
|
|
48
|
+
- Colony subscriber: TypeScript strict type fixes; `agent_label` added to `ColonySignalRow`
|
|
49
|
+
- Sync advisor: suppress git stderr noise; include remote branches
|
|
50
|
+
- Doctor: ignore comments in `.env` Supabase check; add `*.key` to `.gitignore`
|
|
51
|
+
- `rebase-helper` command registered in CLI
|
|
52
|
+
- Migrations: idempotent for shared DB deployment
|
|
53
|
+
- Conflicts: exclude `node_modules` and build dirs from scan
|
|
54
|
+
|
|
55
|
+
### Security
|
|
56
|
+
- **Path traversal**: `stale`, `rescue`, storage utilities ā second-order path validation
|
|
57
|
+
- **Command injection**: `git-messages.ts` hardened with `execFileSync`/argument arrays; `git shell executions` sanitized (#67)
|
|
58
|
+
- **TUI markup injection**: `escapeBlessed()` applied throughout dashboard
|
|
59
|
+
- **Input validation**: `register`, `conflicts --cleanup`, `rescue --symbols` ā all input sources validated
|
|
60
|
+
- **Prototype pollution**: `deepMerge` throws on `__proto__`/`constructor` keys
|
|
61
|
+
- **execSyncāexecFileSync**: `register.ts` fully refactored; remaining `execSync` instances replaced
|
|
62
|
+
|
|
63
|
+
## [0.4.5] - 2026-02-18
|
|
64
|
+
### Added
|
|
65
|
+
- **Fork Sync Use Case**: New documentation pattern for safely cherry-picking commits from a public fork into a private branch using spidersan conflict detection (`docs/USE_CASES.md` Use Case #8)
|
|
66
|
+
- **Fork Sync Best Practices**: Per-commit classification workflow (SAFE / NEEDS-REVIEW / SKIP) documented in `BEST_PRACTICES.md`
|
|
67
|
+
- **Task Torrenting Command**: `spidersan torrent` for branch-per-task workflow management (create, status, complete, merge-order, tree, decompose)
|
|
68
|
+
|
|
69
|
+
### Fixed
|
|
70
|
+
- **Security: Command injection in git adapter** ā `execSync` with string interpolation replaced with `execFileSync`/`spawnSync` with argument arrays across all git operations (PR #13)
|
|
71
|
+
- **Security: Arbitrary file read in rescue command** ā Path traversal vulnerability fixed in `rescue` command
|
|
72
|
+
- **Security: Input validation bypass in register** ā File path and agent ID validation now covers all input sources (flags, auto-detection, prompts) in `register` and `conflicts --cleanup` commands (PR #14, #16)
|
|
73
|
+
- **Security: Git command injection** ā Comprehensive fix for remaining injection vectors (PR #17)
|
|
74
|
+
- `_testable` export from `config.ts` for prototype pollution tests
|
|
75
|
+
- **Test: git_injection test mocks aligned with execFileSync** ā Test was mocking `execSync` but source code uses `execFileSync` exclusively; updated mocks to properly simulate branch operations
|
|
76
|
+
|
|
77
|
+
### Changed
|
|
78
|
+
- **npm audit fix**: Resolved high-severity vulnerability in `@isaacs/brace-expansion`
|
|
79
|
+
|
|
80
|
+
### Documentation
|
|
81
|
+
- Fork Sync use case with full spidersan workflow example
|
|
82
|
+
- Best practices: Fork Sync Workflow section
|
|
83
|
+
- Auto-register use cases guide (`AUTO_REGISTER_USE_CASES.md`)
|
|
84
|
+
- MCP integration config for Copilot
|
|
85
|
+
- GitOps session recap: Spidersan-assisted registry sync, branch cleanup, rebase, and publish workflow
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
### Added
|
|
89
|
+
- **GitHub Actions Auto-Register Workflow**: Automatic branch registration on every push
|
|
90
|
+
- Extracts agent name from branch prefix (e.g., `claude/feature` ā `claude`)
|
|
91
|
+
- Auto-detects changed files via git diff
|
|
92
|
+
- Runs conflict detection with TIER 2+ warnings
|
|
93
|
+
- Handles first push to new branches correctly
|
|
94
|
+
- Documented in `AUTO_REGISTER_USE_CASES.md` with 10 real-world scenarios
|
|
95
|
+
|
|
96
|
+
### Fixed
|
|
97
|
+
- GitHub workflow: Removed invalid `--branch` flag from `spidersan register` command
|
|
98
|
+
- GitHub workflow: Added `spidersan init` step to initialize environment
|
|
99
|
+
- GitHub workflow: Fixed file detection for first push to new branches (null SHA handling)
|
|
100
|
+
|
|
101
|
+
### Documentation
|
|
102
|
+
- Added comprehensive auto-register use cases guide
|
|
103
|
+
- Updated README with GitHub Actions auto-register section
|
|
104
|
+
- Added Lesson #12 to SPIDERSAN_LESSONS_LEARNED.md for workflow --branch flag issue
|
|
105
|
+
|
|
106
|
+
## [0.4.3] - 2026-01-27
|
|
107
|
+
### Added
|
|
108
|
+
- `spidersan welcome` onboarding command for core.
|
|
109
|
+
- `spidersan config` command with guided wizard, global/local config support, and ecosystem toggle.
|
|
110
|
+
- Config fields for `agent.name` and `autoWatch` presets.
|
|
111
|
+
- `spidersan auto start|stop|status` for background watch sessions.
|
|
112
|
+
- `spidersan watch --paths` and `--root` for scoped watching.
|
|
113
|
+
|
|
114
|
+
### Changed
|
|
115
|
+
- `spidersan register` and `spidersan watch` now default to `agent.name` from config when set.
|
|
116
|
+
- Ecosystem commands only load when enabled in config (or not disabled via env).
|
|
117
|
+
|
|
118
|
+
## [0.4.2] - 2026-01-26
|
|
119
|
+
|
|
120
|
+
### Changed
|
|
121
|
+
- README updated with Support section.
|
|
122
|
+
|
|
123
|
+
### Fixed
|
|
124
|
+
- npm `bin` field normalized to avoid publish warnings.
|
package/README.md
CHANGED
|
@@ -19,13 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
## šÆ The Problem
|
|
21
21
|
|
|
22
|
-
**
|
|
23
|
-
|
|
24
|
-
In our experience:
|
|
25
|
-
- ā±ļø ~51 min to complete 1 shared file
|
|
26
|
-
- š„ 12 conflicts
|
|
27
|
-
- š„ 2 build breaks pushed to main
|
|
28
|
-
- š° Frustration level: 5/5
|
|
22
|
+
**A multi coders or agents and multi branch work can result in a merging nightmare**
|
|
29
23
|
|
|
30
24
|
## š·ļø The Solution
|
|
31
25
|
|
|
@@ -46,10 +40,8 @@ spidersan ready-check
|
|
|
46
40
|
```
|
|
47
41
|
|
|
48
42
|
**Results with Spidersan (same team):**
|
|
49
|
-
- ā±ļø ~5 min (about 10x faster
|
|
43
|
+
- ā±ļø ~5 min (about 10x faster)
|
|
50
44
|
- ā
0 conflicts
|
|
51
|
-
- šÆ Recommended merge sequence
|
|
52
|
-
- š Confidence: 5/5
|
|
53
45
|
|
|
54
46
|
---
|
|
55
47
|
|
|
@@ -95,32 +87,76 @@ spidersan merge-order
|
|
|
95
87
|
| `spidersan init` | Initialize Spidersan in the current project |
|
|
96
88
|
| `spidersan register --files` | Register a branch with the files being modified |
|
|
97
89
|
| `spidersan list` | List all registered branches and their file ownership |
|
|
98
|
-
| `spidersan conflicts` |
|
|
90
|
+
| `spidersan conflicts` | Detect file conflicts between branches (tiered: T1/T2/T3) |
|
|
91
|
+
| `spidersan conflicts --ecosystem` | Aggregate conflict scan across all repos in your dev folder |
|
|
99
92
|
| `spidersan merge-order` | Get topologically-sorted optimal merge order |
|
|
100
93
|
| `spidersan ready-check` | Verify branch is ready to merge (no WIP, no conflicts) |
|
|
101
94
|
| `spidersan depends` | Set/show branch dependencies (Supabase only) |
|
|
102
95
|
| `spidersan stale` | Find stale branches |
|
|
103
|
-
| `spidersan cleanup` |
|
|
104
|
-
| `spidersan rescue` |
|
|
96
|
+
| `spidersan cleanup` | Remove stale branches from registry |
|
|
97
|
+
| `spidersan rescue` | Rescue mode ā scan for and salvage rogue/unregistered work |
|
|
105
98
|
| `spidersan abandon` | Abandon a branch (mark inactive) |
|
|
106
99
|
| `spidersan merged` | Mark a branch merged |
|
|
107
|
-
| `spidersan sync` | Sync registry
|
|
100
|
+
| `spidersan sync` | Sync registry with actual git branches |
|
|
108
101
|
| `spidersan watch` | Daemon mode: watch files and auto-register |
|
|
109
102
|
| `spidersan doctor` | Diagnose local state and registry health |
|
|
110
103
|
| `spidersan config` | View/edit configuration + guided wizard |
|
|
111
104
|
| `spidersan auto` | Auto-watch start/stop/status (config-based) |
|
|
112
105
|
| `spidersan welcome` | Onboarding and quick start |
|
|
106
|
+
| `spidersan log` | Show branch operation history (local activity log) |
|
|
107
|
+
| `spidersan daily` | Show branch-relevant entries from daily collab logs |
|
|
108
|
+
| `spidersan rebase-helper` | Detect and guide through local git rebase states |
|
|
109
|
+
|
|
110
|
+
### š Multi-Repo & Cloud Commands
|
|
111
|
+
|
|
112
|
+
| Command | Description |
|
|
113
|
+
|---------|-------------|
|
|
114
|
+
| `spidersan sync-advisor` | Scan all repos and recommend push/pull/cleanup actions |
|
|
115
|
+
| `spidersan registry-sync` | Sync local branch registry to/from Supabase (cross-machine) |
|
|
116
|
+
| `spidersan cross-conflicts` | Detect file conflicts across machines via Supabase |
|
|
117
|
+
| `spidersan github-sync` | Fetch branch/PR/CI status from GitHub for configured repos |
|
|
118
|
+
| `spidersan pulse` | Sync from Colony then show active conflicts (quick health-check) |
|
|
119
|
+
|
|
120
|
+
### š Queen Mode (Parallel Dispatch)
|
|
121
|
+
|
|
122
|
+
Dispatch sub-spidersans to run ground jobs across multiple repos in parallel:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# Spawn sub-spidersans for a task (generates fire-complete-dissolve scripts)
|
|
126
|
+
spidersan queen spawn --task "morning sync" --type sync --repos "repo1,repo2"
|
|
127
|
+
|
|
128
|
+
# Dry-run: preview scripts without emitting colony signals
|
|
129
|
+
spidersan queen spawn --task "conflict scan" --type conflicts --dry-run
|
|
130
|
+
|
|
131
|
+
# Monitor active sub-spidersans via the colony gradient
|
|
132
|
+
spidersan queen status --queen-signal-id <id>
|
|
133
|
+
|
|
134
|
+
# Manually dissolve a stuck sub-spidersan
|
|
135
|
+
spidersan queen dissolve <signal-id>
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Job types: `sync` | `conflicts` | `cleanup` | `custom`
|
|
139
|
+
|
|
140
|
+
### š Task Torrenting (Branch-per-Task)
|
|
113
141
|
|
|
114
|
-
|
|
142
|
+
Create and manage parallel task branches with conflict-aware merge ordering:
|
|
115
143
|
|
|
116
|
-
|
|
144
|
+
```bash
|
|
145
|
+
spidersan torrent create DASH-001 --agent myagent
|
|
146
|
+
spidersan torrent status
|
|
147
|
+
spidersan torrent tree
|
|
148
|
+
spidersan torrent complete DASH-001
|
|
149
|
+
spidersan torrent merge-order
|
|
150
|
+
spidersan torrent decompose DASH --into "DASH-A,DASH-B,DASH-C"
|
|
151
|
+
```
|
|
117
152
|
|
|
118
|
-
|
|
119
|
-
- Symbol locking (`lock`) and semantic analysis (`semantic`)
|
|
120
|
-
- Intent scanning, active windows, and realtime monitoring (`intent-scan`, `active-windows`, `monitor`, `radar`)
|
|
121
|
-
- Task torrenting, multi-repo sync, and messaging (`torrent`, `sync-all`, `send`, `inbox`)
|
|
122
|
-
- Security pipeline + MCP health (`tension`, `audit-mark`, `mcp-health`, `mcp-restart`)
|
|
153
|
+
### š TUI Dashboard
|
|
123
154
|
|
|
155
|
+
Real-time 4-panel terminal UI ā ecosystem overview, conflict map, activity feed, merge queue:
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
spidersan dashboard
|
|
159
|
+
```
|
|
124
160
|
|
|
125
161
|
### Watch Mode (Daemon)
|
|
126
162
|
|
|
@@ -156,6 +192,44 @@ spidersan auto status
|
|
|
156
192
|
spidersan auto stop
|
|
157
193
|
```
|
|
158
194
|
|
|
195
|
+
### š¤ GitHub Actions Auto-Register (NEW!)
|
|
196
|
+
|
|
197
|
+
**Zero-effort branch registration via GitHub workflow**
|
|
198
|
+
|
|
199
|
+
When enabled, every push to a branch automatically:
|
|
200
|
+
- ā
Registers the branch with Spidersan
|
|
201
|
+
- ā
Detects changed files via git diff
|
|
202
|
+
- ā
Checks for conflicts with other branches
|
|
203
|
+
- ā
Reports TIER 2+ conflicts as workflow warnings
|
|
204
|
+
- ā
Extracts agent name from branch prefix (e.g., `claude/feature` ā `claude`)
|
|
205
|
+
|
|
206
|
+
**Setup:**
|
|
207
|
+
1. Workflow is already included: `.github/workflows/auto-register.yml`
|
|
208
|
+
2. Just push to any branch (except main/staging)
|
|
209
|
+
3. View results in GitHub Actions tab
|
|
210
|
+
|
|
211
|
+
**Example:**
|
|
212
|
+
```bash
|
|
213
|
+
git checkout -b yourname/new-feature
|
|
214
|
+
git add src/api.ts
|
|
215
|
+
git commit -m "feat: add new endpoint"
|
|
216
|
+
git push origin yourname/new-feature
|
|
217
|
+
# ā
Auto-registered in ~15 seconds!
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
**Benefits:**
|
|
221
|
+
- No manual `spidersan register` needed
|
|
222
|
+
- Works across all contributors and AI agents
|
|
223
|
+
- Conflict warnings appear in CI checks
|
|
224
|
+
- Perfect for multi-agent repositories
|
|
225
|
+
|
|
226
|
+
**Note:** This complements (doesn't replace) local `spidersan watch` for real-time file monitoring.
|
|
227
|
+
|
|
228
|
+
**Installation:**
|
|
229
|
+
- [š Complete Installation Guide ā](./INSTALL_AUTO_REGISTER.md)
|
|
230
|
+
- [šÆ Use Cases & Examples ā](./AUTO_REGISTER_USE_CASES.md)
|
|
231
|
+
- [š¤ Claude Code Skill ā](./.claude/skills/install-auto-register.md)
|
|
232
|
+
|
|
159
233
|
### 𦺠Rescue Mode
|
|
160
234
|
|
|
161
235
|
Got a repo with 10+ abandoned branches? Let Spidersan clean up the mess:
|
|
@@ -178,9 +252,7 @@ spidersan rescue --abandon path/to/file.ts
|
|
|
178
252
|
## š Documentation
|
|
179
253
|
|
|
180
254
|
- [Core Guide](docs/CORE.md) - Public feature set and core workflows
|
|
181
|
-
- Ecosystem Overview (internal; see spidersan-ecosystem repo)
|
|
182
255
|
- Usage (internal; see spidersan-ecosystem repo)
|
|
183
|
-
- [One Pager](docs/ONE_PAGER.md) - Product overview
|
|
184
256
|
- [Data Collection](docs/DATA_COLLECTION.md) - Privacy & data practices
|
|
185
257
|
|
|
186
258
|
---
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spidersan.d.ts","sourceRoot":"","sources":["../../src/bin/spidersan.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"spidersan.d.ts","sourceRoot":"","sources":["../../src/bin/spidersan.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,OAAO,eAAe,CAAC;AA8CvB,eAAO,MAAM,WAAW,eAAkB,CAAC"}
|
package/dist/bin/spidersan.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import 'dotenv/config';
|
|
8
8
|
import { Command } from 'commander';
|
|
9
9
|
import { createRequire } from 'module';
|
|
10
|
-
import { initCommand, registerCommand, listCommand, conflictsCommand, mergeOrderCommand, readyCheckCommand, dependsCommand, staleCommand, cleanupCommand, rescueCommand, abandonCommand, mergedCommand, syncCommand, watchCommand, doctorCommand, configCommand, autoCommand, welcomeCommand, loadEcosystemCommands, getEcosystemStatus, } from '../commands/index.js';
|
|
10
|
+
import { initCommand, registerCommand, listCommand, conflictsCommand, mergeOrderCommand, readyCheckCommand, dependsCommand, staleCommand, cleanupCommand, rescueCommand, abandonCommand, mergedCommand, syncCommand, watchCommand, doctorCommand, configCommand, autoCommand, welcomeCommand, registrySyncCommand, crossConflictsCommand, pulseCommand, torrentCommand, queenCommand, githubSyncCommand, syncAdvisorCommand, dashboardCommand, rebaseHelperCommand, logCommand, dailyCommand, loadEcosystemCommands, getEcosystemStatus, } from '../commands/index.js';
|
|
11
11
|
import { checkForUpdates } from '../lib/update-check.js';
|
|
12
12
|
// Read version from package.json dynamically
|
|
13
13
|
const require = createRequire(import.meta.url);
|
|
@@ -70,9 +70,29 @@ program.addCommand(doctorCommand);
|
|
|
70
70
|
program.addCommand(configCommand);
|
|
71
71
|
program.addCommand(autoCommand);
|
|
72
72
|
program.addCommand(welcomeCommand);
|
|
73
|
+
program.addCommand(registrySyncCommand);
|
|
74
|
+
program.addCommand(crossConflictsCommand);
|
|
75
|
+
program.addCommand(pulseCommand);
|
|
76
|
+
program.addCommand(torrentCommand);
|
|
77
|
+
program.addCommand(queenCommand);
|
|
78
|
+
program.addCommand(githubSyncCommand);
|
|
79
|
+
program.addCommand(syncAdvisorCommand());
|
|
80
|
+
program.addCommand(dashboardCommand);
|
|
81
|
+
program.addCommand(rebaseHelperCommand);
|
|
82
|
+
logCommand(program);
|
|
83
|
+
dailyCommand(program);
|
|
73
84
|
async function main() {
|
|
74
85
|
const ecosystemCommands = await loadEcosystemCommands();
|
|
75
|
-
ecosystemCommands.forEach((command) =>
|
|
86
|
+
ecosystemCommands.forEach((command) => {
|
|
87
|
+
const existing = program.commands.find(c => c.name() === command.name());
|
|
88
|
+
if (existing) {
|
|
89
|
+
if (isDebugMode()) {
|
|
90
|
+
console.log(`ā ļø Skipping duplicate ecosystem command: ${command.name()}`);
|
|
91
|
+
}
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
program.addCommand(command);
|
|
95
|
+
});
|
|
76
96
|
const ecosystemStatus = getEcosystemStatus();
|
|
77
97
|
if (ecosystemStatus.versionMismatch && ecosystemStatus.requiredRange && ecosystemStatus.coreVersion) {
|
|
78
98
|
console.warn(`ā ļø Ecosystem expects spidersan@${ecosystemStatus.requiredRange}, but core is ${ecosystemStatus.coreVersion}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spidersan.js","sourceRoot":"","sources":["../../src/bin/spidersan.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"spidersan.js","sourceRoot":"","sources":["../../src/bin/spidersan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abandon.d.ts","sourceRoot":"","sources":["../../src/commands/abandon.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"abandon.d.ts","sourceRoot":"","sources":["../../src/commands/abandon.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,eAAO,MAAM,cAAc,SAqCrB,CAAC"}
|
package/dist/commands/abandon.js
CHANGED
|
@@ -4,11 +4,12 @@
|
|
|
4
4
|
* Mark a branch as abandoned.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from 'commander';
|
|
7
|
-
import {
|
|
7
|
+
import { execFileSync } from 'child_process';
|
|
8
8
|
import { getStorage } from '../storage/index.js';
|
|
9
|
+
import { logActivity } from '../lib/activity.js';
|
|
9
10
|
function getCurrentBranch() {
|
|
10
11
|
try {
|
|
11
|
-
return
|
|
12
|
+
return execFileSync('git', ['rev-parse', '--abbrev-ref', 'HEAD'], { encoding: 'utf-8' }).trim();
|
|
12
13
|
}
|
|
13
14
|
catch {
|
|
14
15
|
throw new Error('Not in a git repository');
|
|
@@ -39,6 +40,7 @@ export const abandonCommand = new Command('abandon')
|
|
|
39
40
|
}
|
|
40
41
|
const success = await storage.unregister(branchName);
|
|
41
42
|
if (success) {
|
|
43
|
+
logActivity({ event: 'abandon', branch: branchName, details: {} });
|
|
42
44
|
console.log(`š·ļø Abandoned: ${branchName}`);
|
|
43
45
|
}
|
|
44
46
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abandon.js","sourceRoot":"","sources":["../../src/commands/abandon.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"abandon.js","sourceRoot":"","sources":["../../src/commands/abandon.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,SAAS,gBAAgB;IACrB,IAAI,CAAC;QACD,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACpG,CAAC;IAAC,MAAM,CAAC;QACL,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KAC/C,WAAW,CAAC,4BAA4B,CAAC;KACzC,QAAQ,CAAC,UAAU,EAAE,sCAAsC,CAAC;KAC5D,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;KAC1C,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,SAA6B,EAAE,OAAO,EAAE,EAAE;IACrD,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IAEnC,IAAI,CAAC,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,IAAI,gBAAgB,EAAE,CAAC;IAEnD,yBAAyB;IACzB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,aAAa,UAAU,0BAA0B,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;QAC9D,OAAO;IACX,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAErD,IAAI,OAAO,EAAE,CAAC;QACV,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,wBAAwB,UAAU,IAAI,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/commands/auto.js
CHANGED
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
* Start/stop auto-watch sessions based on config.
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from 'commander';
|
|
7
|
-
import {
|
|
7
|
+
import { execFileSync, spawn } from 'child_process';
|
|
8
8
|
import { existsSync, readFileSync, writeFileSync, mkdirSync, rmSync } from 'fs';
|
|
9
9
|
import { join } from 'path';
|
|
10
10
|
import { loadConfig } from '../lib/config.js';
|
|
11
11
|
function getRepoRoot() {
|
|
12
12
|
try {
|
|
13
|
-
return
|
|
13
|
+
return execFileSync('git', ['rev-parse', '--show-toplevel'], { encoding: 'utf-8' }).trim();
|
|
14
14
|
}
|
|
15
15
|
catch {
|
|
16
16
|
return process.cwd();
|
|
@@ -91,13 +91,13 @@ autoCommand
|
|
|
91
91
|
if (!configEnabled && cliPaths.length === 0 && !options.force) {
|
|
92
92
|
console.error('ā Auto-watch is disabled in config.');
|
|
93
93
|
console.error(' Enable it in .spidersanrc or pass --paths / --force.');
|
|
94
|
-
|
|
94
|
+
process.exit(1);
|
|
95
95
|
}
|
|
96
96
|
const paths = cliPaths.length > 0 ? cliPaths : autoConfig.paths;
|
|
97
97
|
if (paths.length === 0) {
|
|
98
98
|
console.error('ā No auto-watch paths configured.');
|
|
99
99
|
console.error(' Set autoWatch.paths in .spidersanrc or pass --paths.');
|
|
100
|
-
|
|
100
|
+
process.exit(1);
|
|
101
101
|
}
|
|
102
102
|
const configuredAgent = config.agent.name?.trim();
|
|
103
103
|
const agent = (options.agent || process.env.SPIDERSAN_AGENT || configuredAgent || 'unknown').trim();
|
|
@@ -108,7 +108,7 @@ autoCommand
|
|
|
108
108
|
const script = process.argv[1];
|
|
109
109
|
if (!script) {
|
|
110
110
|
console.error('ā Could not resolve CLI script path.');
|
|
111
|
-
|
|
111
|
+
process.exit(1);
|
|
112
112
|
}
|
|
113
113
|
const args = [
|
|
114
114
|
script,
|
|
@@ -136,7 +136,7 @@ autoCommand
|
|
|
136
136
|
});
|
|
137
137
|
if (!child.pid) {
|
|
138
138
|
console.error('ā Failed to start auto-watch.');
|
|
139
|
-
|
|
139
|
+
process.exit(1);
|
|
140
140
|
}
|
|
141
141
|
child.unref();
|
|
142
142
|
const state = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto.js","sourceRoot":"","sources":["../../src/commands/auto.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"auto.js","sourceRoot":"","sources":["../../src/commands/auto.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,cAAc,SAiCrB,CAAC"}
|
package/dist/commands/cleanup.js
CHANGED
|
@@ -29,13 +29,8 @@ export const cleanupCommand = new Command('cleanup')
|
|
|
29
29
|
stale.forEach(b => console.log(` - ${b.name}`));
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
removed++;
|
|
36
|
-
console.log(` šļø Removed: ${branch.name}`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
console.log(`\nš·ļø Cleaned up ${removed} branch(es).`);
|
|
32
|
+
const removedNames = await storage.cleanup(threshold);
|
|
33
|
+
removedNames.forEach(name => console.log(` šļø Removed: ${name}`));
|
|
34
|
+
console.log(`\nš·ļø Cleaned up ${removedNames.length} branch(es).`);
|
|
40
35
|
});
|
|
41
36
|
//# sourceMappingURL=cleanup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KAC/C,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,CAAC;KAC3C,MAAM,CAAC,WAAW,EAAE,6CAA6C,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACtB,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IAEnC,IAAI,CAAC,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC;IAEzE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO;IACX,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,MAAM,sBAAsB,CAAC,CAAC;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO;IACX,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KAC/C,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,CAAC;KAC3C,MAAM,CAAC,WAAW,EAAE,6CAA6C,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACtB,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IAEnC,IAAI,CAAC,MAAM,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC;IAEzE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO;IACX,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,CAAC,MAAM,sBAAsB,CAAC,CAAC;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO;IACX,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtD,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,oBAAoB,YAAY,CAAC,MAAM,cAAc,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC"}
|
|
@@ -4,5 +4,12 @@
|
|
|
4
4
|
* Manage Spidersan configuration (.spidersanrc).
|
|
5
5
|
*/
|
|
6
6
|
import { Command } from 'commander';
|
|
7
|
+
declare function setNestedValue(obj: Record<string, unknown>, path: string, value: unknown): void;
|
|
8
|
+
declare function getNestedValue(obj: unknown, path: string): unknown;
|
|
7
9
|
export declare const configCommand: Command;
|
|
10
|
+
export declare const _testable: {
|
|
11
|
+
setNestedValue: typeof setNestedValue;
|
|
12
|
+
getNestedValue: typeof getNestedValue;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
8
15
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgEpC,iBAAS,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAmBxF;AAED,iBAAS,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAW3D;AA4HD,eAAO,MAAM,aAAa,SAC+B,CAAC;AAG1D,eAAO,MAAM,SAAS;;;CAGrB,CAAC"}
|
package/dist/commands/config.js
CHANGED
|
@@ -68,6 +68,10 @@ function setNestedValue(obj, path, value) {
|
|
|
68
68
|
const parts = path.split('.').filter(Boolean);
|
|
69
69
|
if (parts.length === 0)
|
|
70
70
|
return;
|
|
71
|
+
// Security: Prevent prototype pollution
|
|
72
|
+
if (parts.some(p => p === '__proto__' || p === 'constructor' || p === 'prototype')) {
|
|
73
|
+
throw new Error('Invalid config path: contains forbidden keys');
|
|
74
|
+
}
|
|
71
75
|
let current = obj;
|
|
72
76
|
for (let i = 0; i < parts.length - 1; i++) {
|
|
73
77
|
const key = parts[i];
|
|
@@ -83,6 +87,9 @@ function getNestedValue(obj, path) {
|
|
|
83
87
|
const parts = path.split('.').filter(Boolean);
|
|
84
88
|
let current = obj;
|
|
85
89
|
for (const part of parts) {
|
|
90
|
+
// Security: Prevent accessing prototype properties
|
|
91
|
+
if (part === '__proto__' || part === 'constructor' || part === 'prototype')
|
|
92
|
+
return undefined;
|
|
86
93
|
if (typeof current !== 'object' || current === null)
|
|
87
94
|
return undefined;
|
|
88
95
|
current = current[part];
|
|
@@ -204,6 +211,11 @@ async function runWizard() {
|
|
|
204
211
|
}
|
|
205
212
|
export const configCommand = new Command('config')
|
|
206
213
|
.description('View and edit Spidersan configuration');
|
|
214
|
+
// Internal helper exported for prototype pollution tests. Should only be used in test environments.
|
|
215
|
+
export const _testable = {
|
|
216
|
+
setNestedValue,
|
|
217
|
+
getNestedValue,
|
|
218
|
+
};
|
|
207
219
|
async function printConfig(options = {}) {
|
|
208
220
|
const result = await loadConfigWithSources();
|
|
209
221
|
const envDisable = isEnvDisabled(process.env.SPIDERSAN_ECOSYSTEM) ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|