esedre 0.1.9 → 0.1.11

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 ADDED
@@ -0,0 +1,74 @@
1
+ # Changelog
2
+
3
+ All notable changes to Esedre are 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
+ ## [0.1.11] - 2026-09-26
9
+
10
+ ### Fixed
11
+ - **Prevent Project Query Leak in Embedded Mode**: Guarded `window.history.replaceState` behind `!isEmbedded` in `PlannedWorkView` when switching project filters, added an explicit `isEmbedded` prop to `PlannedWorkViewProps`, and introduced `detectIsEmbedded` and `updateProjectUrlSearchParam` helpers to ensure embedded planners never mutate the host window's URL search parameters.
12
+ - **Published Version Collision Guard**: Added upfront registry version pre-check to `scripts/publish.js` to immediately detect and reject attempts to republish already-published versions before running the full build/test lifecycle.
13
+
14
+ ## [0.1.10] - 2026-09-26
15
+
16
+ ### Added
17
+ - **Single-Step Ticket Creation (`--detail` & `--file`)**: `ese create` accepts `--detail "<md>"` and `--file <path>` to populate `detail.md` specifications during ticket creation without requiring a secondary `ese plan` call.
18
+ - **MCP `esedre_create_ticket` Specification Markdown**: Added optional `detail` parameter to the MCP create tool for agents to mint tickets with full specifications in a single turn.
19
+ - **`ese refresh` CLI Alias**: Added `refresh` as a direct alias for `ese snapshot` to regenerate the `.esedre/snapshot.json` projection.
20
+
21
+ ### Fixed
22
+ - **Windows CMD Batch Label Syntax Error**: Refactored `WRAPPER_CMD` (`ese.cmd` / `esedre.cmd`) to eliminate parenthesized `if (...)` blocks around `goto` statements, converted jump points to top-level labels, and prefixed all batch script invocations with `call` to prevent `'The system cannot find the batch label specified - done'` crashes on Windows.
23
+ - **PowerShell Console Stream UTF-8 Encoding**: Enforced `[Console]::OutputEncoding`, `[Console]::InputEncoding`, and `$OutputEncoding = UTF-8` in `ese.ps1` to prevent Unicode characters (en-dashes, quotes) from rendering as mojibake.
24
+ - **Structured JSON Output for `ese plan --json`**: Corrected `ese plan <id> --json` to emit a machine-readable JSON payload (`{ success, ticketId, project, planMarkdown, sha1 }`) instead of ANSI terminal text.
25
+
26
+ ## [0.1.9] - 2026-09-25
27
+
28
+ ### Added
29
+ - **Smart npm Publish Lifecycle Wrapper (`npm run pub`)**: Upfront authentication pre-check (`npm whoami`) with automatic interactive login before compilation, executing full prepublish test/lint/build lifecycle.
30
+ - **Multi-Layer Zero-Crawl Protection**: Edge and Vite middleware security preventing search spiders and AI crawler cataloging on development tunnels (`esedre.aroomwithamoose.com`).
31
+ - **Canonical Apex Ecosystem Links**: Standardized all portfolio ecosystem references to canonical apex `https://arwam.com`.
32
+
33
+ ## [0.1.8] - 2026-09-11
34
+
35
+ ### Added
36
+ - **Dynamic Configuration & Manifest Reloading**: 3-second TTL polling (`ensureFreshConfig`) reloading external hubs and manifests in real time without daemon restarts.
37
+
38
+ ### Changed
39
+ - **Gateway Server Portfolio Decoupling**: Background daemon and gateway cluster (`ese start`) serve unconstrained portfolio views across all registered data hubs regardless of which workspace directory the server was launched from.
40
+ - **Slug Normalization**: Removed redundant `slug` field from `ProjectDescriptor`, manifests, and storage adapters in favor of canonical case-remembering `code`.
41
+
42
+ ## [0.1.7] - 2026-09-11
43
+
44
+ ### Added
45
+ - **Case-Remembering Project Resolution**: Preserves canonical casing for project codes up to 8 characters on disk and manifests while supporting case-insensitive lookups across CLI, MCP, and REST endpoints.
46
+ - **Workspaceless & Multi-Hub Project Init**: `ese init --project <Code> [--hub <name|path>]` creates projects directly in configured hubs without overwriting existing workspace configurations.
47
+
48
+ ## [0.1.6] - 2026-09-10
49
+
50
+ ### Added
51
+ - **Multi-Manifest Detection in `ese init`**: Auto-detects project codes and names from `Cargo.toml`, `pyproject.toml`, `settings.gradle.kts`, `app/build.gradle.kts`, and `go.mod`.
52
+ - **Global Port Settings**: Centralized port configuration in `~/.esedre/config.json` with CLI overrides and workspace inheritance.
53
+ - **Agent Project Allow-List Isolation**: Multi-tenant workspace scoping strictly limiting CLI and MCP access to declared `allowedProjects`.
54
+
55
+ ## [0.1.5] - 2026-09-09
56
+
57
+ ### Added
58
+ - **Interactive Web UI Assets & Previews**: Standalone React 19 web dashboard assets, dark and light preview cards, and documentation guides.
59
+
60
+ ## [0.1.4] - 2026-09-08
61
+
62
+ ### Added
63
+ - **MPL-2.0 License Transition**: Open source licensing under Mozilla Public License 2.0.
64
+ - **LLM Agent Long-Term Grounding Mission**: Formalized ground-truth architecture providing persistent context across compaction events.
65
+
66
+ ## [0.1.1] - 2026-09-08
67
+
68
+ ### Added
69
+ - **Project Onboarding & Configuration Tools**: Initial interactive setup via `ese configure` and `ese init`.
70
+
71
+ ## [0.1.0] - 2026-09-08
72
+
73
+ ### Added
74
+ - Initial release of the Esedre ticketing engine, CLI (`ese` / `esedre`), background daemon, and Model Context Protocol (MCP) server.
package/README.md CHANGED
@@ -281,6 +281,7 @@ npm run build
281
281
 
282
282
  ---
283
283
 
284
- ## 📄 License
284
+ ## 📄 License & Changelog
285
285
 
286
- [Mozilla Public License 2.0 (MPL-2.0)](LICENSE) © [ARWAM](https://arwam.com)
286
+ - **License**: [Mozilla Public License 2.0 (MPL-2.0)](LICENSE) © [ARWAM](https://arwam.com)
287
+ - **Changelog**: See [CHANGELOG.md](CHANGELOG.md) for detailed release notes and version history.
package/dist/esedre.mjs CHANGED
@@ -9,7 +9,7 @@ import fs3 from "node:fs";
9
9
  import path3 from "node:path";
10
10
 
11
11
  // src/types.ts
12
- var CURRENT_ESEDRE_VERSION = "0.1.9";
12
+ var CURRENT_ESEDRE_VERSION = "0.1.11";
13
13
  var EsedreConflictError = class extends Error {
14
14
  constructor(ticketId, currentHash, lastHash) {
15
15
  super(
@@ -2829,33 +2829,44 @@ function classifyContent(currentContent, latestTemplate, historicHashes) {
2829
2829
  var WRAPPER_CMD = `@echo off
2830
2830
  REM Esedre Autonomous Ticketing & Project Planning Engine Wrapper (Windows CMD)
2831
2831
  setlocal
2832
+
2832
2833
  where ese >nul 2>nul
2833
- if %ERRORLEVEL% equ 0 (
2834
- ese %*
2835
- goto :done
2836
- )
2834
+ if %ERRORLEVEL% equ 0 goto use_ese
2835
+
2837
2836
  where esedre >nul 2>nul
2838
- if %ERRORLEVEL% equ 0 (
2839
- esedre %*
2840
- goto :done
2841
- )
2842
- if exist "%~dp0..\\..\\esedre\\dist\\esedre.mjs" (
2843
- node "%~dp0..\\..\\esedre\\dist\\esedre.mjs" %*
2844
- goto :done
2845
- )
2846
- if exist "%~dp0..\\esedre\\dist\\esedre.mjs" (
2847
- node "%~dp0..\\esedre\\dist\\esedre.mjs" %*
2848
- goto :done
2849
- )
2850
- if exist "%~dp0..\\node_modules\\.bin\\ese.cmd" (
2851
- call "%~dp0..\\node_modules\\.bin\\ese.cmd" %*
2852
- goto :done
2853
- )
2854
- if exist "%~dp0..\\node_modules\\.bin\\esedre.cmd" (
2855
- call "%~dp0..\\node_modules\\.bin\\esedre.cmd" %*
2856
- goto :done
2857
- )
2858
- npx --yes esedre %*
2837
+ if %ERRORLEVEL% equ 0 goto use_esedre
2838
+
2839
+ if exist "%~dp0..\\..\\esedre\\dist\\esedre.mjs" goto use_sibling_dist
2840
+ if exist "%~dp0..\\esedre\\dist\\esedre.mjs" goto use_local_dist
2841
+ if exist "%~dp0..\\node_modules\\.bin\\ese.cmd" goto use_node_modules_ese
2842
+ if exist "%~dp0..\\node_modules\\.bin\\esedre.cmd" goto use_node_modules_esedre
2843
+
2844
+ call npx --yes esedre %*
2845
+ goto done
2846
+
2847
+ :use_ese
2848
+ call ese %*
2849
+ goto done
2850
+
2851
+ :use_esedre
2852
+ call esedre %*
2853
+ goto done
2854
+
2855
+ :use_sibling_dist
2856
+ node "%~dp0..\\..\\esedre\\dist\\esedre.mjs" %*
2857
+ goto done
2858
+
2859
+ :use_local_dist
2860
+ node "%~dp0..\\esedre\\dist\\esedre.mjs" %*
2861
+ goto done
2862
+
2863
+ :use_node_modules_ese
2864
+ call "%~dp0..\\node_modules\\.bin\\ese.cmd" %*
2865
+ goto done
2866
+
2867
+ :use_node_modules_esedre
2868
+ call "%~dp0..\\node_modules\\.bin\\esedre.cmd" %*
2869
+ goto done
2859
2870
 
2860
2871
  :done
2861
2872
  endlocal
@@ -2932,6 +2943,7 @@ exec npx --yes esedre "$@"
2932
2943
  var ESE_WRAPPER_CMD = `@echo off
2933
2944
  REM Ese CLI short alias wrapper for Esedre (Windows CMD)
2934
2945
  call "%~dp0esedre.cmd" %*
2946
+ exit /b %ERRORLEVEL%
2935
2947
  `;
2936
2948
  var ESE_WRAPPER_PS1 = `# Ese CLI short alias wrapper for Esedre (PowerShell)
2937
2949
  try {