development-engine-vector 0.3.0__tar.gz → 0.5.0__tar.gz

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 (57) hide show
  1. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/PKG-INFO +89 -33
  2. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/changelog.md +55 -1
  3. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/contributing.md +18 -11
  4. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/__init__.py +1 -1
  5. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/cli/cli.py +201 -45
  6. development_engine_vector-0.5.0/dev/kernel/kernel_core.py +387 -0
  7. development_engine_vector-0.5.0/dev/kernel/otk_kernel.py +260 -0
  8. development_engine_vector-0.5.0/dev/kernel/pmf_kernel.py +24 -0
  9. development_engine_vector-0.5.0/dev/ui/actions.py +110 -0
  10. development_engine_vector-0.5.0/dev/ui/routes.py +282 -0
  11. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/static/web.js +344 -0
  12. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/templates.py +131 -0
  13. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/docs/architecture.md +28 -5
  14. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/pyproject.toml +1 -1
  15. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/readme.md +88 -32
  16. development_engine_vector-0.5.0/version +1 -0
  17. development_engine_vector-0.3.0/dev/kernel/pmf_kernel.py +0 -432
  18. development_engine_vector-0.3.0/dev/ui/actions.py +0 -47
  19. development_engine_vector-0.3.0/dev/ui/routes.py +0 -114
  20. development_engine_vector-0.3.0/version +0 -1
  21. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/.flake8 +0 -0
  22. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/.gitignore +0 -0
  23. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/__main__.py +0 -0
  24. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/cli/__init__.py +0 -0
  25. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/kernel/__init__.py +0 -0
  26. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/kernel/config.py +0 -0
  27. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/kernel/db.py +0 -0
  28. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/kernel/paths.py +0 -0
  29. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/kernel/selfcheck.py +0 -0
  30. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/__init__.py +0 -0
  31. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/__init__.py +0 -0
  32. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/base.py +0 -0
  33. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/checks.py +0 -0
  34. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/events.py +0 -0
  35. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/health.py +0 -0
  36. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/identity.py +0 -0
  37. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/manifest.py +0 -0
  38. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/overview.py +0 -0
  39. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/db/runs.py +0 -0
  40. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/static/__init__.py +0 -0
  41. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/static/web.css +0 -0
  42. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/ui/web.py +0 -0
  43. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/utils.py +0 -0
  44. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/vcs/__init__.py +0 -0
  45. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/vcs/git.py +0 -0
  46. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/vcs/github.py +0 -0
  47. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/__init__.py +0 -0
  48. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/cda.py +0 -0
  49. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/changelog.py +0 -0
  50. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/preflight.py +0 -0
  51. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/release.py +0 -0
  52. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev/workflow/versioning.py +0 -0
  53. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/dev-cli.toml.example +0 -0
  54. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/license +0 -0
  55. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/tests/__init__.py +0 -0
  56. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/tests/test_cda_preflight.py +0 -0
  57. {development_engine_vector-0.3.0 → development_engine_vector-0.5.0}/tests/test_dev_cli.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: development-engine-vector
3
- Version: 0.3.0
3
+ Version: 0.5.0
4
4
  Summary: Development Engine Vector — internal developer workflow CLI.
5
5
  Author-email: Ernie Butcher <ernie@fiosii.com>
6
6
  License-Expression: MIT
@@ -12,7 +12,7 @@ Description-Content-Type: text/markdown
12
12
  # Development Engine Vector
13
13
 
14
14
  [![Python Version](https://img.shields.io/badge/python-3.9%2B-blue.svg)](https://www.python.org/downloads/)
15
- [![PyPI](https://img.shields.io/pypi/v/dev-cli.svg)](https://pypi.org/project/dev-cli)
15
+ [![PyPI](https://img.shields.io/pypi/v/development-engine-vector.svg)](https://pypi.org/project/development-engine-vector)
16
16
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
17
17
 
18
18
  **Development Engine Vector** (`dev`) is the developer workflow coordination CLI for goCosmix systems. It provides a consistent, scriptable interface for preflight checks, version management, changelog automation, release orchestration, and git/GitHub operations — usable across every system in the federation.
@@ -51,10 +51,10 @@ Description-Content-Type: text/markdown
51
51
  ### Install from PyPI
52
52
 
53
53
  ```bash
54
- pip install dev-cli
54
+ pip install development-engine-vector
55
55
  ```
56
56
 
57
- > **macOS / system Python note**: pip installs the `dev` binary to `~/Library/Python/3.x/bin/` which may not be on `PATH` by default.
57
+ > **macOS / system Python note**: pip installs the `dev` binary to `~/Library/Python/3.9/bin/` which may not be on `PATH` by default.
58
58
  >
59
59
  > ```bash
60
60
  > export PATH="$HOME/Library/Python/3.9/bin:$PATH"
@@ -62,30 +62,38 @@ pip install dev-cli
62
62
  >
63
63
  > Add this line to `~/.zprofile` for persistence.
64
64
 
65
- ### Install from source
65
+ ### First-time setup (recommended)
66
+
67
+ After install, run the onboarding wizard — it creates your home directory, registers the macOS LaunchAgent, and opens the dashboard:
66
68
 
67
69
  ```bash
68
- git clone https://github.com/goCosmix/dev.git
69
- cd dev/source
70
- pip install -e .
70
+ dev setup
71
71
  ```
72
72
 
73
- ### Install development dependencies
73
+ ### Install from source
74
74
 
75
75
  ```bash
76
- pip install -e ".[dev]"
76
+ git clone https://github.com/goCosmix/dev.git
77
+ cd dev/source
78
+ pip install -e .
77
79
  ```
78
80
 
79
81
  ## ⚡ Quick Start
80
82
 
81
83
  ```bash
82
- pip install dev-cli
84
+ pip install development-engine-vector
83
85
  export PATH="$HOME/Library/Python/3.9/bin:$PATH"
84
86
 
87
+ # Full onboarding (creates ~/Library/goCosmix/tools/dev/, registers launchd, opens UI)
88
+ dev setup
89
+
90
+ # Or just start the dashboard manually
91
+ dev ui start
92
+
85
93
  # Point at any goCosmix project
86
- dev pf --project /Volumes/intel/systems/cda/source # preflight check
87
- dev version show --project /Volumes/intel/systems/cda/source
88
- dev release --project /Volumes/intel/systems/cda/source --dry-run
94
+ dev pf --project /path/to/project # preflight check
95
+ dev version show --project /path/to/project
96
+ dev release --project /path/to/project --dry-run
89
97
  ```
90
98
 
91
99
  ## 🔧 CLI Reference
@@ -167,6 +175,58 @@ Checks: version consistency, install path, DB state, required tools on PATH, Pyt
167
175
  dev config show --project <path> # display active config and resolved settings
168
176
  ```
169
177
 
178
+ ### `dev ui`
179
+
180
+ Manage the embedded web dashboard (port 9001).
181
+
182
+ ```bash
183
+ dev ui start # start dashboard, open browser
184
+ dev ui start --no-browser # start without opening browser
185
+ dev ui stop # stop dashboard
186
+ dev ui status # show pid, started time, log path
187
+ dev ui restart # restart
188
+ ```
189
+
190
+ ### `dev otk`
191
+
192
+ Manage the **Ops Tool Kernel (OTK)** and background services/tasks.
193
+
194
+ ```bash
195
+ dev otk services # list services/tasks and status
196
+ dev otk status [service_id] # detailed status for one or all
197
+ dev otk start ui # start daemon service
198
+ dev otk start preflight --project <path> # run preflight task service
199
+ dev otk start vet # run control vet task service
200
+ dev otk start build --project <path> # run build task service
201
+ dev otk start publish-check # run dry-run publish validation
202
+ dev otk start release-dryrun --project <path> # run full dry-run release workflow
203
+ dev otk stop ui # stop daemon service
204
+ dev otk restart ui # restart daemon service
205
+ dev otk logs vet --tail 100 # tail service/task logs
206
+ dev otk events --tail 20 # inspect kernel event journal
207
+ dev otk up # start default runtime services
208
+ dev otk install # register macOS LaunchAgent (auto-start)
209
+ dev otk uninstall # remove LaunchAgent
210
+ ```
211
+
212
+ `dev pmf ...` remains available as a legacy alias for backward compatibility.
213
+
214
+ ### `dev setup`
215
+
216
+ Full onboarding wizard — run once after install.
217
+
218
+ ```bash
219
+ dev setup # init dirs + otk install + ui start + open browser
220
+ dev setup --no-browser # same, skip browser
221
+ dev setup --run-otk-chain # also run the OTK preflight → vet chain
222
+ ```
223
+
224
+ Steps:
225
+ 1. **Init** — create `~/Library/goCosmix/tools/dev/` and all runtime subdirs; patch `~/.zprofile` if `dev` is not on PATH
226
+ 2. **OTK install** — register `com.gocosmix.dev` LaunchAgent so `dev` starts automatically on every login
227
+ 3. **Up** — start the web UI via OTK kernel, open browser at `http://127.0.0.1:9001`
228
+ 4. **Phase 2** — optionally run `preflight → vet` against the dev source tree for a fresh post-setup validation pass
229
+
170
230
  ## ⚙️ Configuration
171
231
 
172
232
  Add a `.dev-cli.toml` or `dev-cli.toml` at any project root:
@@ -197,16 +257,19 @@ dev --config ./custom.dev-cli.toml release --project /Volumes/intel/systems/cda/
197
257
 
198
258
  ## 🏗 Architecture
199
259
 
200
- `dev` is organized into four layers:
260
+ `dev` is organized into five layers:
201
261
 
202
262
  ```
203
263
  dev/
204
- ├── kernel/ — runtime foundation (paths, DB, config, self-check)
264
+ ├── kernel/ — runtime foundation (OTK kernel, shared core, paths, DB, config, self-check)
205
265
  ├── workflow/ — business logic (versioning, changelog, preflight, release)
206
266
  ├── vcs/ — version control ops (git, GitHub API)
267
+ ├── ui/ — embedded WSGI dashboard (port 9001, indigo theme)
207
268
  └── cli/ — thin click wrappers
208
269
  ```
209
270
 
271
+ Runtime home: `~/Library/goCosmix/tools/dev/` (tools tier — `9000` namespace)
272
+
210
273
  See [docs/architecture.md](docs/architecture.md) for the full design.
211
274
 
212
275
  ## 🛠 Development
@@ -216,31 +279,24 @@ cd /Volumes/intel/systems/dev/source
216
279
  pip install -e .
217
280
  export PATH="$HOME/Library/Python/3.9/bin:$PATH"
218
281
 
219
- # Run checks
282
+ # Run all checks (lint + typecheck + tests)
283
+ python3 /Volumes/intel/systems/dev/control/scripts/vet.py
284
+
285
+ # Or individually
220
286
  python3 -m flake8 dev/
221
287
  python3 -m mypy dev/
222
288
  python3 -m pytest tests/ -q
223
-
224
- # Or via the control plane
225
- python3 ../control/scripts/vet.py
226
- python3 ../control/cli.py health
227
289
  ```
228
290
 
229
291
  ### Control plane
230
292
 
231
- ```bash
232
- python3 control/cli.py --help
293
+ The control plane manages the `dev` system itself (not for managing other projects).
233
294
 
234
- dev-control status # version, paths, DB state
235
- dev-control vet # run lint + typecheck + tests, write history to DB
236
- dev-control health # show vet run history
237
- dev-control health --checks # list defined check definitions
238
- dev-control push # build + publish to PyPI
239
- dev-control seed # re-seed control.db
240
- dev-control selfcheck # engine self-diagnostics
241
- dev-control runs # show run history from dev.db
242
- dev-control projects # show registered projects
243
- dev-control manifest # query file manifest from control.db
295
+ ```bash
296
+ # Vet, seed, and publish
297
+ python3 /Volumes/intel/systems/dev/control/scripts/vet.py # lint + typecheck + tests
298
+ python3 /Volumes/intel/systems/dev/control/scripts/seed.py # re-seed control.db
299
+ python3 /Volumes/intel/systems/dev/control/scripts/push.py # vet + git push + PyPI publish
244
300
  ```
245
301
 
246
302
  ## 🤝 Contributing
@@ -5,7 +5,61 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [0.3.0] - 2026-05-12
8
+ ## [0.5.0] - 2026-05-11
9
+
10
+ ### Added
11
+ - **Full UI expansion** — 7 new dashboard pages surfacing the entire `dev` command surface:
12
+ - **OTK** — live service/task table with Start / Stop / Restart controls per service
13
+ - **Selfcheck** — editable install path, DB state, tool availability, dependency status
14
+ - **Version** — version file vs package version, sync target map
15
+ - **Release** — release run history, registered project registry, one-click workflow buttons (Preflight, Vet, Build, Publish Check, Release Dry-Run)
16
+ - **Project** — project dir, config file, package/changelog sync state
17
+ - **Git** — branch, last tag, dirty state, remote URL, commits since tag
18
+ - **Setup** — DEV_HOME, launch agent install status, all runtime path table
19
+ - New backend summary APIs: `/api/dev/selfcheck`, `/api/dev/version`, `/api/dev/changelog`, `/api/dev/git`, `/api/dev/project`, `/api/dev/release`, `/api/dev/setup`
20
+ - Background action runner now distinguishes task vs daemon services: tasks run synchronously to completion and capture full output before updating action state
21
+ - Navigation expanded with new groups: OTK under Core; Selfcheck/Version/Release under Config; Project/Git under Inventory; Setup under System
22
+
23
+ ## [0.4.1] - 2026-05-11
24
+
25
+ ### Added
26
+ - Optional Phase 2 onboarding flow: `dev setup --run-otk-chain` runs the OTK preflight → vet task chain after startup
27
+ - Dashboard now renders the OTK kernel brain directly on the default page:
28
+ - runtime service table
29
+ - recent kernel event feed
30
+ - Added synchronous task execution support in the shared kernel core for onboarding and orchestration
31
+
32
+ ### Changed
33
+ - Dashboard overview now includes kernel-state visibility in addition to vet stats
34
+ - OTK task events are recorded in the runtime journal and surfaced through the UI
35
+
36
+ ## [0.4.0] - 2026-05-11
37
+
38
+ ### Added
39
+ - **Ops Tool Kernel (OTK)** architecture for `dev`:
40
+ - `kernel_core.py` shared kernel base (service lifecycle, persistent runtime state, event journal)
41
+ - `otk_kernel.py` system-adapted kernel (daemon + task service catalog)
42
+ - `pmf_kernel.py` compatibility shim preserving PMF imports
43
+ - New OTK task services: `preflight`, `vet`, `build`, `publish-check`, `release-dryrun`
44
+ - New runtime events command: `dev otk events` (also available through legacy `dev pmf events`)
45
+ - New web API endpoints for kernel state and actions:
46
+ - `GET /api/kernel/services`, `GET /api/kernel/status`, `GET /api/kernel/events`
47
+ - `POST /api/kernel/start`, `POST /api/kernel/stop`, `POST /api/kernel/restart`
48
+ - `GET /api/actions`, `GET /api/action/status`
49
+
50
+ ### Changed
51
+ - LaunchAgent now calls `dev otk up` (legacy `dev pmf ...` remains as an alias)
52
+ - `dev setup` language updated from PMF-first to OTK-first flow
53
+ - Control data seed metadata updated for PyPI package name: `development-engine-vector`
54
+
55
+ ## [0.3.1] - 2026-05-11
56
+
57
+ ### Changed
58
+ - PyPI package renamed from `dev-cli` (taken) to **`development-engine-vector`** — matching the `code-data-ark` naming convention
59
+ - `--version` now resolves from `development-engine-vector` package metadata
60
+ - Docs updated: readme, architecture, contributing — correct DEV_HOME path (`tools/dev`), port 9001, `ui`/`pmf`/`setup` command reference, `ui/` layer in architecture diagram
61
+
62
+ ## [0.3.0] - 2026-05-11
9
63
 
10
64
  ### Added
11
65
  - **Embedded web UI** — full WSGI dashboard on port 9001 (`dev ui start/stop/status/restart`)
@@ -1,6 +1,6 @@
1
1
  # Contributing to Development Engine Vector
2
2
 
3
- We welcome contributions. This document provides guidelines for working on `dev-cli`.
3
+ We welcome contributions. This document provides guidelines for working on `development-engine-vector`.
4
4
 
5
5
  ## Code of Conduct
6
6
 
@@ -20,7 +20,7 @@ cd dev/source
20
20
  ### Setup development environment
21
21
 
22
22
  ```bash
23
- pip install -e ".[dev]"
23
+ pip install -e .
24
24
  export PATH="$HOME/Library/Python/3.9/bin:$PATH"
25
25
  ```
26
26
 
@@ -86,7 +86,10 @@ dev/
86
86
  ├── source/ # all tracked code lives here
87
87
  │ ├── dev/ # Python package
88
88
  │ │ ├── kernel/ # runtime foundation
89
- │ │ │ ├── paths.py # DEV_HOME, path constants
89
+ │ │ │ ├── paths.py # DEV_HOME = ~/Library/goCosmix/tools/dev
90
+ │ │ │ ├── kernel_core.py # shared kernel DNA (service lifecycle + events)
91
+ │ │ │ ├── otk_kernel.py # Ops Tool Kernel (dev-specific services/tasks)
92
+ │ │ │ ├── pmf_kernel.py # compatibility shim over OTK symbols
90
93
  │ │ │ ├── db.py # WAL SQLite — runs + projects
91
94
  │ │ │ ├── config.py # DevConfig — reads .dev-cli.toml
92
95
  │ │ │ └── selfcheck.py # engine self-diagnostics
@@ -99,6 +102,13 @@ dev/
99
102
  │ │ ├── vcs/ # version control
100
103
  │ │ │ ├── git.py
101
104
  │ │ │ └── github.py
105
+ │ │ ├── ui/ # embedded WSGI dashboard (port 9001)
106
+ │ │ │ ├── web.py
107
+ │ │ │ ├── routes.py
108
+ │ │ │ ├── templates.py
109
+ │ │ │ ├── actions.py
110
+ │ │ │ ├── static/ # web.css (indigo theme), web.js
111
+ │ │ │ └── db/ # per-page query modules
102
112
  │ │ └── cli/
103
113
  │ │ └── cli.py # click entry point
104
114
  │ ├── tests/
@@ -108,15 +118,9 @@ dev/
108
118
  │ ├── readme.md
109
119
  │ └── version
110
120
  ├── local/ # runtime state (gitignored)
111
- │ ├── data/ # dev.db lives at ~/Library/goCosmix/apps/dev/
112
- │ └── logs/
113
121
  └── control/ # management artifacts (gitignored)
114
- ├── cli.py # dev-control CLI
115
- ├── ops.py # reusable status helpers
116
122
  ├── data/ # control.db
117
- ├── scripts/ # seed.py, vet.py, push.py
118
- ├── audit/ # audit engine output JSONs
119
- └── docs/ # control system documentation
123
+ └── scripts/ # seed.py, vet.py, push.py
120
124
  ```
121
125
 
122
126
  ## Key components
@@ -125,7 +129,10 @@ dev/
125
129
  Thin click wrappers. All logic delegates to `workflow/` and `vcs/` modules.
126
130
 
127
131
  ### Kernel (`dev/kernel/`)
128
- - `paths.py` — canonical path constants; `DEV_HOME = ~/Library/goCosmix/apps/dev`
132
+ - `paths.py` — canonical path constants; `DEV_HOME = ~/Library/goCosmix/tools/dev`
133
+ - `kernel_core.py` — shared kernel base (`ServiceSpec`, lifecycle, state persistence, event journal)
134
+ - `otk_kernel.py` — `OTKKernel`: Ops Tool Kernel service/task catalog (`ui`, `preflight`, `vet`, `build`, `publish-check`, `release-dryrun`) and launchd integration
135
+ - `pmf_kernel.py` — backward-compatible alias layer for existing PMF imports
129
136
  - `db.py` — WAL SQLite; `record_run`, `finish_run`, `upsert_project`, `get_recent_runs`
130
137
  - `config.py` — loads `.dev-cli.toml` / `dev-cli.toml` from project root
131
138
  - `selfcheck.py` — five checks: version, install path, DB, tools, dependencies
@@ -1,3 +1,3 @@
1
1
  """dev — Development Engine Vector."""
2
2
 
3
- __version__ = "0.3.0"
3
+ __version__ = "0.5.0"