oreshnik-cli 0.1.0-alpha
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 +57 -0
- package/LICENSE +21 -0
- package/README.md +126 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +6269 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +2338 -0
- package/dist/index.js +3286 -0
- package/dist/index.js.map +1 -0
- package/package.json +59 -0
- package/src/templates/central-doc.template.md +29 -0
- package/src/templates/task-board.template.json +6 -0
- package/src/templates/zone-map.template.json +13 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [0.1.0-alpha] — 2026-06-13
|
|
4
|
+
|
|
5
|
+
### S-ORESHNIK-07: Close fix + Tests
|
|
6
|
+
- Close command no longer fails when no files to commit
|
|
7
|
+
- 5 checkpoint/timeline unit tests added (81 total tests, 10 test files)
|
|
8
|
+
- TaskHistoryEntry schema leniency: operator optional, supports from/to for reassignments
|
|
9
|
+
|
|
10
|
+
### S-ORESHNIK-06: Dashboard Operators & Locks
|
|
11
|
+
- Per-operator task breakdown (ready/active/done/blocked/pending)
|
|
12
|
+
- Active lock display per project from LockService
|
|
13
|
+
- `--detail` flag for per-task listing with dependencies
|
|
14
|
+
- Task status legend visible in dashboard output
|
|
15
|
+
|
|
16
|
+
### S-ORESHNIK-05: HeptaCore Validation
|
|
17
|
+
- Holistic multi-project start command with context detection
|
|
18
|
+
- Sprint dependency validation: detects [BLOCKED] sprints, offers blocker resolution
|
|
19
|
+
- Oreshnik installed as dependency in HeptaCore
|
|
20
|
+
- 11 npm scripts migrated to CLI wrappers
|
|
21
|
+
- Canonical docs (central, status board, operator state) created for both repos
|
|
22
|
+
|
|
23
|
+
### S-ORESHNIK-04: Integration Pipeline
|
|
24
|
+
- Conflict prediction and smart JSON merge
|
|
25
|
+
- Validation gates integration
|
|
26
|
+
|
|
27
|
+
### S-ORESHNIK-03: Init Command
|
|
28
|
+
- Stack-aware templates (nextjs, vite, astro, monorepo, fullstack, typescript, node)
|
|
29
|
+
- Auto-detection of project name, operator, and stack
|
|
30
|
+
- `--interactive` guided setup mode
|
|
31
|
+
- Stack-specific zone maps and validation gates
|
|
32
|
+
|
|
33
|
+
### S-ORESHNIK-02: Distributed Locks
|
|
34
|
+
- Zone locks via atomic git tags (`oreshnik-lock/*`)
|
|
35
|
+
- TTL-based auto-expiration (default 3600s)
|
|
36
|
+
- Lock check integrated into preflight step 4
|
|
37
|
+
- `oreshnik lock --acquire|--release|--status`
|
|
38
|
+
|
|
39
|
+
### S-ORESHNIK-01: Core Engine
|
|
40
|
+
- Git-native sprint management engine
|
|
41
|
+
- Result types, Zod schemas, CLI with Commander
|
|
42
|
+
- Portfolio service, injection service, ingestion service
|
|
43
|
+
- Evidence gates, canonical alignment, vault guard
|
|
44
|
+
- Zone engine, audit, rollback, timeline, checkpoints
|
|
45
|
+
|
|
46
|
+
### MT-01 to MT-10: Multi-Tenant
|
|
47
|
+
- Portfolio management across 6 projects (Oreshnik, HeptaCore, TurpialSound, TurpialMarket, DropSocial, SMSMantis)
|
|
48
|
+
- Meeting notes ingestion → classification → task injection
|
|
49
|
+
- Bootstrap, dashboard, zone-check, audit, secret scan
|
|
50
|
+
- HeptaCore integration with task distribution (Jean, Manuel, Architect)
|
|
51
|
+
|
|
52
|
+
### Foundation
|
|
53
|
+
- TypeScript CLI with tsup build
|
|
54
|
+
- Vitest test suite
|
|
55
|
+
- `npm run typecheck`, `npm run build`, `npm run test`
|
|
56
|
+
- CRLF/LF consistency, BOM handling
|
|
57
|
+
- Shell:true for Windows .cmd compatibility
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Oreshnik Team
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# Oreshnik
|
|
2
|
+
|
|
3
|
+
**Git-native sprint management system — CLI-first, dashboard-optional.**
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/oreshnik)
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
[](https://nodejs.org)
|
|
8
|
+
|
|
9
|
+
## One command. Zero config.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx oreshnik init
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Detects your stack (Next.js, Vite, Astro, monorepo, TypeScript, Node), creates zone-map, task-board, vault, and operator config.
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx oreshnik
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Interactive start — detects your operator from `git config user.name`, shows your tasks, validates dependencies, and optionally resolves blockers.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Commands
|
|
26
|
+
|
|
27
|
+
### Core Workflow
|
|
28
|
+
|
|
29
|
+
| Command | Description |
|
|
30
|
+
|---|---|
|
|
31
|
+
| `oreshnik` | Interactive start: operator detection, sprint selection, blocker resolution |
|
|
32
|
+
| `oreshnik init` | Initialize Oreshnik in current git repo (`--force`, `--template`, `--interactive`) |
|
|
33
|
+
| `oreshnik preflight` | 11-step validation: sync, vault, zone-check, locks, canonical, tasks, secrets, build |
|
|
34
|
+
| `oreshnik close` | Close sprint: validates evidence, runs gates, creates MADRE branch |
|
|
35
|
+
| `oreshnik status` | Show project state, branch, checkpoints |
|
|
36
|
+
|
|
37
|
+
### Multi-Project
|
|
38
|
+
|
|
39
|
+
| Command | Description |
|
|
40
|
+
|---|---|
|
|
41
|
+
| `oreshnik portfolio` | Inspect multi-project portfolio configuration |
|
|
42
|
+
| `oreshnik dashboard` | Multi-project dashboard with operator breakdown and lock status (`--detail`, `--json`, `--markdown`) |
|
|
43
|
+
| `oreshnik ingest` | Ingest meeting notes markdown into classified backlog |
|
|
44
|
+
| `oreshnik inject` | Inject classified tasks into project task-boards |
|
|
45
|
+
| `oreshnik bootstrap` | Initialize Oreshnik structure across portfolio projects |
|
|
46
|
+
|
|
47
|
+
### Validation
|
|
48
|
+
|
|
49
|
+
| Command | Description |
|
|
50
|
+
|---|---|
|
|
51
|
+
| `oreshnik zone-check` | Validate zone-map compliance across projects |
|
|
52
|
+
| `oreshnik evidence` | Validate task evidence before sprint closure (`--check`) |
|
|
53
|
+
| `oreshnik gate` | Run validation suite (typecheck, build, tests) |
|
|
54
|
+
| `oreshnik audit` | Cross-project audit: git history, checkpoints, secrets |
|
|
55
|
+
|
|
56
|
+
### Locking & Recovery
|
|
57
|
+
|
|
58
|
+
| Command | Description |
|
|
59
|
+
|---|---|
|
|
60
|
+
| `oreshnik lock` | Distributed zone locks via git tags (`--acquire`, `--release`, `--status`) |
|
|
61
|
+
| `oreshnik checkpoint` | Create manual checkpoint tag |
|
|
62
|
+
| `oreshnik rollback` | Restore to previous checkpoint |
|
|
63
|
+
| `oreshnik timeline` | Show checkpoint and sprint timeline |
|
|
64
|
+
| `oreshnik integrate` | Merge sprint into main with zone checks |
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Architecture
|
|
69
|
+
|
|
70
|
+
Oreshnik is **Git-native**. All state lives in files tracked by git:
|
|
71
|
+
|
|
72
|
+
| Artifact | Location |
|
|
73
|
+
|---|---|
|
|
74
|
+
| Task board | `var/oreshnik/task-board.json` |
|
|
75
|
+
| Zone map | `docs/07_handoffs/zone-map.json` |
|
|
76
|
+
| Portfolio | `.oreshnik.portfolio.json` |
|
|
77
|
+
| Config | `.oreshnik.json` |
|
|
78
|
+
| Locks | `refs/tags/oreshnik-lock/*` |
|
|
79
|
+
| Checkpoints | `refs/tags/oreshnik/*` |
|
|
80
|
+
| Vault | `docs/obsidian-vault/` |
|
|
81
|
+
|
|
82
|
+
**No database. No external service. No cloud dependency.** The source of truth is the git repo.
|
|
83
|
+
|
|
84
|
+
## Concepts
|
|
85
|
+
|
|
86
|
+
### Zones
|
|
87
|
+
Filesystem paths controlled by operators. Zone maps define who can modify which files during which sprints. Violations are detected by `zone-check` and surfaced in preflight.
|
|
88
|
+
|
|
89
|
+
### Locks
|
|
90
|
+
Atomic distributed locks via git tags. When an operator starts a sprint on a zone, they acquire a lock. Other operators see `[LOCK]` warnings in preflight. Locks auto-expire (TTL, default 1 hour).
|
|
91
|
+
|
|
92
|
+
### Task Board
|
|
93
|
+
A JSON file tracking all tasks: ID, title, owner, status (ready/active/blocked/done/pending), dependencies, acceptance criteria, and history.
|
|
94
|
+
|
|
95
|
+
### Canonical Docs
|
|
96
|
+
Derived markdown documents regenerated from the task board on each close. Includes central dashboard, operator status files, and status board. Preflight validates they match the task board.
|
|
97
|
+
|
|
98
|
+
### Evidence Gates
|
|
99
|
+
Tasks marked `done` must have verifiable evidence: file changes, typecheck success, test results. Preflight and close validate this.
|
|
100
|
+
|
|
101
|
+
## Operators
|
|
102
|
+
|
|
103
|
+
Multiple operators collaborate on the same repo via git branches:
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
MADRE/v5-s-oreshnik-07-... → mother branch (source of truth)
|
|
107
|
+
Architect/s-oreshnik-07-... → architect's work branch
|
|
108
|
+
Jean/s-hc-prod-02-... → Jean's work branch
|
|
109
|
+
Manuel/s-hc-prod-03-... → Manuel's work branch
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Oreshnik detects divergence, backs up local work, and aligns on each session start.
|
|
113
|
+
|
|
114
|
+
## Install
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
npm install -g oreshnik
|
|
118
|
+
# or
|
|
119
|
+
npx oreshnik init
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Requirements**: Node.js >= 20, git >= 2.30
|
|
123
|
+
|
|
124
|
+
## License
|
|
125
|
+
|
|
126
|
+
MIT © 2026 Oreshnik Team
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
#!/usr/bin/env node
|