@letterblack/lbe-core 1.3.5 → 1.3.7

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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.3.7 — 2026-06-24
4
+
5
+ ### Fixed
6
+ - Fixed internal linting errors preventing clean CI execution.
7
+ - Restored and aligned the GitHub Actions release workflow.
8
+
3
9
  ## 1.3.3 — 2026-06-23
4
10
 
5
11
  ### Fixed
package/README.md CHANGED
@@ -1,167 +1,182 @@
1
- # @letterblack/lbe-core
2
-
3
- LBE Core is **local execution control for AI agents**.
4
-
5
- It evaluates file and shell actions routed through its execution boundary, records local evidence, and returns an allow/deny/proof outcome before agent work is treated as complete.
6
-
7
- LBE is not an AI model, IDE, full OS sandbox, cloud monitor, or hosted control plane. It only controls actions that are routed through LBE.
8
-
9
- ```text
10
- Agent wants to act
11
-
12
- LBE validates workspace, policy, target, and evidence
13
-
14
- allow / deny / weak proof / error
15
-
16
- Host executes only if LBE approved
17
-
18
- Audit and proof records are written locally
19
- ```
20
-
21
- ---
22
-
23
- ## Install and start
24
-
25
- ```bash
26
- npm install @letterblack/lbe-core
27
- npx lbe init
28
- npx lbe status
29
- npx lbe logs
30
- npx lbe proof --public
31
- npx lbe open-state
32
- ```
33
-
34
- Requires Node.js `>= 20.9.0`.
35
-
36
- Command summary:
37
-
38
- | Command | Purpose |
39
- |---|---|
40
- | `npx lbe init` | Initialize LBE state for the current workspace |
41
- | `npx lbe status` | Show workspace policy, state, and proof status |
42
- | `npx lbe logs` | Show recent local LBE audit events |
43
- | `npx lbe open-state` | Open the central local state folder for this workspace |
44
- | `npx lbe proof` | Show the latest private proof result |
45
- | `npx lbe proof --json` | Print the latest proof as JSON |
46
- | `npx lbe proof --public` | Print a redacted proof safe for public sharing |
47
- | `npx lbe status --all` | List known local workspaces from the workspace registry |
48
-
49
- ---
50
-
51
- ## What LBE does
52
-
53
- LBE gives agent builders a local execution boundary:
54
-
55
- - validates requested file and shell actions before execution
56
- - keeps governed actions inside the intended workspace
57
- - records local audit evidence
58
- - tracks intent, target, file-index snapshots, and proof results
59
- - supports private proof and public/redacted proof output
60
- - preserves legacy `.lbe/events.jsonl` logs while using central local state
61
-
62
- Most systems ask only:
63
-
64
- ```text
65
- Did the user approve this?
66
- ```
67
-
68
- LBE asks a stricter question:
69
-
70
- ```text
71
- Is this exact action allowed to reach the filesystem or terminal, and can we prove what happened?
72
- ```
73
-
74
- ---
75
-
76
- ## Local state and proof
77
-
78
- LBE keeps state locally in a central per-user state folder. Each workspace has a stable workspace ID and its own event log.
79
-
80
- In v1.3, an existing `.lbe/events.jsonl` remains local fallback truth and is imported into central state once. The source file is preserved.
81
-
82
- Proof combines:
83
-
84
- ```text
85
- intent
86
-
87
- target
88
-
89
- file-index before action
90
-
91
- LBE audit event
92
-
93
- file-index after action
94
-
95
- proof/latest.json
96
- ```
97
-
98
- Proof results:
99
-
100
- | Result | Meaning |
101
- |---|---|
102
- | `PASS` | Evidence is complete and actual changes match declared intent |
103
- | `FAIL` | Evidence violates intent, policy, or expected file changes |
104
- | `WEAK_PROOF` | Target evidence was uncertain or required user confirmation |
105
-
106
- Use:
107
-
108
- ```bash
109
- npx lbe proof --public
110
- ```
111
-
112
- for a redacted proof summary. Public proof redacts private paths, raw internal IDs, full diffs, hashes, and sensitive failure details.
113
-
114
- ---
115
-
116
- ## What ships
117
-
118
- The npm package ships the packaged runtime boundary, not the private source tree.
119
-
120
- ```text
121
- bin/lbe.js CLI shim
122
- dist/cli/lbe.js Bundled CLI runtime
123
- dist/hooks/register.cjs Hook preload runtime
124
- dist/state/index.cjs Packaged CJS state resolver
125
- dist/state/appendCentral.cjs Packaged central JSONL append helper
126
- README.md
127
- Release-README.md
128
- CHANGELOG.md
129
- LICENSE
130
- package.json
131
- ```
132
-
133
- The npm package must not include private implementation folders such as `src/core/**`, tests, local `.lbe/**` state, AppData state, diagnostic helpers, private keys, or workspace-local proof artifacts.
134
-
135
- ---
136
-
137
- ## Limits
138
-
139
- LBE controls only actions routed through its execution boundary.
140
-
141
- It does not provide:
142
-
143
- - kernel-level process isolation
144
- - network-egress control
145
- - multi-tenant separation
146
- - hosted monitoring
1
+ # @letterblack/lbe-core
2
+
3
+ LBE Core is **local execution control for AI agents**.
4
+
5
+ It evaluates file and shell actions routed through its execution boundary, records local evidence, and returns an allow/deny/proof outcome before agent work is treated as complete.
6
+
7
+ LBE is not an AI model, IDE, full OS sandbox, cloud monitor, or hosted control plane. It only controls actions that are routed through LBE.
8
+
9
+ ```text
10
+ Agent wants to act
11
+
12
+ LBE validates workspace, policy, target, and evidence
13
+
14
+ allow / deny / weak proof / error
15
+
16
+ Host executes only if LBE approved
17
+
18
+ Audit and proof records are written locally
19
+ ```
20
+
21
+ ---
22
+
23
+ ## Recommended install
24
+
25
+ Use the current clean release:
26
+
27
+ ```bash
28
+ npm install @letterblack/lbe-core@1.3.5
29
+ npx lbe init
30
+ npx lbe assert-consumer
31
+ npx lbe proof --public
32
+ ```
33
+
34
+ `assert-consumer` confirms this project is using LBE as an installed package dependency.
35
+
36
+ It does not certify LBE release safety.
37
+
38
+ ## Install and start
39
+
40
+ ```bash
41
+ npm install @letterblack/lbe-core@1.3.5
42
+ npx lbe init
43
+ npx lbe status
44
+ npx lbe logs
45
+ npx lbe proof --public
46
+ npx lbe open-state
47
+ ```
48
+
49
+ Requires Node.js `>= 20.9.0`.
50
+
51
+ Command summary:
52
+
53
+ | Command | Purpose |
54
+ |---|---|
55
+ | `npx lbe init` | Initialize LBE state for the current workspace |
56
+ | `npx lbe status` | Show workspace policy, state, and proof status |
57
+ | `npx lbe logs` | Show recent local LBE audit events |
58
+ | `npx lbe open-state` | Open the central local state folder for this workspace |
59
+ | `npx lbe proof` | Show the latest private proof result |
60
+ | `npx lbe proof --json` | Print the latest proof as JSON |
61
+ | `npx lbe proof --public` | Print a redacted proof safe for public sharing |
62
+ | `npx lbe status --all` | List known local workspaces from the workspace registry |
63
+
64
+ ---
65
+
66
+ ## What LBE does
67
+
68
+ LBE gives agent builders a local execution boundary:
69
+
70
+ - validates requested file and shell actions before execution
71
+ - keeps governed actions inside the intended workspace
72
+ - records local audit evidence
73
+ - tracks intent, target, file-index snapshots, and proof results
74
+ - supports private proof and public/redacted proof output
75
+ - preserves legacy `.lbe/events.jsonl` logs while using central local state
76
+
77
+ Most systems ask only:
78
+
79
+ ```text
80
+ Did the user approve this?
81
+ ```
82
+
83
+ LBE asks a stricter question:
84
+
85
+ ```text
86
+ Is this exact action allowed to reach the filesystem or terminal, and can we prove what happened?
87
+ ```
88
+
89
+ ---
90
+
91
+ ## Local state and proof
92
+
93
+ LBE keeps state locally in a central per-user state folder. Each workspace has a stable workspace ID and its own event log.
94
+
95
+ In v1.3, an existing `.lbe/events.jsonl` remains local fallback truth and is imported into central state once. The source file is preserved.
96
+
97
+ Proof combines:
98
+
99
+ ```text
100
+ intent
101
+
102
+ target
103
+
104
+ file-index before action
105
+
106
+ LBE audit event
107
+
108
+ file-index after action
109
+
110
+ proof/latest.json
111
+ ```
112
+
113
+ Proof results:
114
+
115
+ | Result | Meaning |
116
+ |---|---|
117
+ | `PASS` | Evidence is complete and actual changes match declared intent |
118
+ | `FAIL` | Evidence violates intent, policy, or expected file changes |
119
+ | `WEAK_PROOF` | Target evidence was uncertain or required user confirmation |
120
+
121
+ Use:
122
+
123
+ ```bash
124
+ npx lbe proof --public
125
+ ```
126
+
127
+ for a redacted proof summary. Public proof redacts private paths, raw internal IDs, full diffs, hashes, and sensitive failure details.
128
+
129
+ ---
130
+
131
+ ## What ships
132
+
133
+ The npm package ships the packaged runtime boundary, not the private source tree.
134
+
135
+ ```text
136
+ bin/lbe.js CLI shim
137
+ dist/cli/lbe.js Bundled CLI runtime
138
+ dist/hooks/register.cjs Hook preload runtime
139
+ dist/state/index.cjs Packaged CJS state resolver
140
+ dist/state/appendCentral.cjs Packaged central JSONL append helper
141
+ README.md
142
+ Release-README.md
143
+ CHANGELOG.md
144
+ LICENSE
145
+ package.json
146
+ ```
147
+
148
+ The npm package must not include private implementation folders such as `src/core/**`, tests, local `.lbe/**` state, AppData state, diagnostic helpers, private keys, or workspace-local proof artifacts.
149
+
150
+ ---
151
+
152
+ ## Limits
153
+
154
+ LBE controls only actions routed through its execution boundary.
155
+
156
+ It does not provide:
157
+
158
+ - kernel-level process isolation
159
+ - network-egress control
160
+ - multi-tenant separation
161
+ - hosted monitoring
147
162
  - universal control over tools outside LBE's execution boundary
148
-
149
- Central writes are best-effort. Local logs remain local.
150
-
151
- ---
152
-
153
- ## Release status
154
-
155
- Current aligned release:
156
-
157
- ```text
158
- @letterblack/lbe-core@1.3.3
159
- ```
160
-
161
- Earlier `1.3.0`, `1.3.1`, and `1.3.2` builds are superseded by `1.3.3`.
162
-
163
- ---
164
-
165
- ## One-sentence summary
166
-
167
- LBE Core does not make the agent smarter. It makes the agent's execution path controlled, evidence-backed, and locally auditable.
163
+
164
+ Central writes are best-effort. Local logs remain local.
165
+
166
+ ---
167
+
168
+ ## Release status
169
+
170
+ Current aligned release:
171
+
172
+ ```text
173
+ @letterblack/lbe-core@1.3.5
174
+ ```
175
+
176
+ Earlier `1.3.0`, `1.3.1`, `1.3.2`, and `1.3.3` builds are superseded by `1.3.5`.
177
+
178
+ ---
179
+
180
+ ## One-sentence summary
181
+
182
+ LBE Core does not make the agent smarter. It makes the agent's execution path controlled, evidence-backed, and locally auditable.
@@ -1,110 +1,179 @@
1
- # LBE Release Workspace Rules
2
-
3
- This file defines what can and cannot be used as LBE release proof.
4
-
5
- ## Release authority boundary
6
-
7
- Only the designated LBE release workspace may certify LBE release safety.
8
-
9
- A downstream project, integration lab, copied repository, downloaded folder, worktree, or consumer app is not release authority for LBE.
10
-
11
- Consumer projects may prove only their own integration behavior with the installed LBE package.
12
-
13
- They must not claim:
14
-
15
- - LBE release-ready
16
- - LBE published
17
- - full LBE proof passed
18
- - npm/GitHub release alignment
19
- - package release correctness
20
-
21
- ## Consumer dependency rule
22
-
23
- Other projects must consume LBE as an installed package dependency from the public registry.
24
-
25
- Allowed consumer model:
26
-
27
- ```bash
28
- npm install @letterblack/lbe-core
29
- npx lbe init
30
- npx lbe status
31
- npx lbe proof --public
32
- ```
33
-
34
- Do not use a copied LBE source tree as the authority for consumer projects.
35
-
36
- Do not point consumer projects at LBE through:
37
-
38
- - `file:`
39
- - `link:`
40
- - `workspace:`
41
- - `git+`
42
- - `github:`
43
- - local relative paths
44
- - local absolute paths
45
- - symlinked `node_modules` packages
46
-
47
- ## assert-consumer rule
48
-
49
- `npx lbe assert-consumer` is a downstream consumer-safety guard.
50
-
51
- It answers:
52
-
53
- - Is this project using `@letterblack/lbe-core` as an installed dependency?
54
- - Is this project accidentally pointing at a copied source tree, workspace link, git dependency, local path, or symlink?
55
-
56
- It must always report consumer status only.
57
-
58
- It is not release proof.
59
-
60
- It is not package provenance proof.
61
-
62
- It is not a substitute for:
63
-
64
- - full test suite
65
- - `npm run proof`
66
- - package runtime verification
67
- - packed tarball inspection
68
- - npm `gitHead` check
69
- - GitHub tag alignment
70
- - GitHub Release verification
71
- - fresh install smoke from the registry
72
-
73
- Expected classification for a valid consumer project:
74
-
75
- ```txt
76
- consumer-project-using-installed-registry-dependency
77
- releaseClaimsAllowed: false
78
- ```
79
-
80
- If a project passes `assert-consumer`, the only valid conclusion is:
81
-
82
- ```txt
83
- This project consumes LBE from an installed package dependency.
84
- This does not certify LBE release safety.
85
- ```
86
-
87
- ## Hard stop conditions
88
-
89
- Stop and report if:
90
-
91
- - a consumer project is used to certify an LBE release
92
- - focused integration tests are used as release proof
93
- - a copied/lab workspace is treated as package authority
94
- - local path, git, workspace, or symlink dependencies are used for LBE in a consumer project
95
- - release claims are made without npm/GitHub/package provenance checks
96
-
97
- ## Agent report format
98
-
99
- Before making any LBE-related release claim, report:
100
-
101
- ```txt
102
- Workspace classification:
103
- - Path:
104
- - Type: LBE release workspace / consumer project / local lab / copied workspace / unknown
105
- - npm run proof available: yes/no
106
- - full suite exit code:
107
- - release claims allowed: yes/no
108
- ```
109
-
110
- If the workspace is a consumer project, local lab, copied workspace, or unknown, release claims are not allowed.
1
+ # LBE Release Workspace Rules
2
+
3
+ This file defines what can and cannot be used as LBE release proof.
4
+
5
+ ## Release authority boundary
6
+
7
+ Only the designated LBE release workspace may certify LBE release safety.
8
+
9
+ A downstream project, integration lab, copied repository, downloaded folder, worktree, or consumer app is not release authority for LBE.
10
+
11
+ Consumer projects may prove only their own integration behavior with the installed LBE package.
12
+
13
+ They must not claim:
14
+
15
+ - LBE release-ready
16
+ - LBE published
17
+ - full LBE proof passed
18
+ - npm/GitHub release alignment
19
+ - package release correctness
20
+
21
+ ## Consumer dependency rule
22
+
23
+ Other projects must consume LBE as an installed package dependency from the public registry.
24
+
25
+ Allowed consumer model:
26
+
27
+ ```bash
28
+ npm install @letterblack/lbe-core
29
+ npx lbe init
30
+ npx lbe status
31
+ npx lbe proof --public
32
+ ```
33
+
34
+ Do not use a copied LBE source tree as the authority for consumer projects.
35
+
36
+ Do not point consumer projects at LBE through:
37
+
38
+ - `file:`
39
+ - `link:`
40
+ - `workspace:`
41
+ - `git+`
42
+ - `github:`
43
+ - local relative paths
44
+ - local absolute paths
45
+ - symlinked `node_modules` packages
46
+
47
+ ## assert-consumer rule
48
+
49
+ `npx lbe assert-consumer` is a downstream consumer-safety guard.
50
+
51
+ It answers:
52
+
53
+ - Is this project using `@letterblack/lbe-core` as an installed dependency?
54
+ - Is this project accidentally pointing at a copied source tree, workspace link, git dependency, local path, or symlink?
55
+
56
+ It must always report consumer status only.
57
+
58
+ It is not release proof.
59
+
60
+ It is not package provenance proof.
61
+
62
+ It is not a substitute for:
63
+
64
+ - full test suite
65
+ - `npm run proof`
66
+ - package runtime verification
67
+ - packed tarball inspection
68
+ - npm `gitHead` check
69
+ - GitHub tag alignment
70
+ - GitHub Release verification
71
+ - fresh install smoke from the registry
72
+
73
+ Expected classification for a valid consumer project:
74
+
75
+ ```txt
76
+ consumer-project-using-installed-registry-dependency
77
+ releaseClaimsAllowed: false
78
+ ```
79
+
80
+ If a project passes `assert-consumer`, the only valid conclusion is:
81
+
82
+ ```txt
83
+ This project consumes LBE from an installed package dependency.
84
+ This does not certify LBE release safety.
85
+ ```
86
+
87
+ ## Release workflow stale-guard
88
+
89
+ The release workflow is the authority for public repo sync and release automation.
90
+
91
+ Agents must not manually patch the public `Letterblack-Sentinel` repo to make it look released.
92
+
93
+ If the public repo is stale, the correct fix is:
94
+
95
+ 1. inspect the release workflow
96
+ 2. verify it targets the current package: `@letterblack/lbe-core`
97
+ 3. repair stale workflow steps
98
+ 4. run the workflow or its explicit `sync-public-only` mode
99
+ 5. verify public repo, tag, GitHub Release, npm `gitHead`, and fresh install smoke
100
+
101
+ ## Blocked stale workflow patterns
102
+
103
+ Stop immediately if the workflow still treats these as the current release packages:
104
+
105
+ ```txt
106
+ @letterblack/lbe-sdk
107
+ @letterblack/lbe-exec
108
+ ```
109
+
110
+ These may appear only as legacy/deprecated notes, not active publish/sync/release jobs.
111
+
112
+ ## Required workflow gates
113
+
114
+ The workflow must include:
115
+
116
+ ```txt
117
+ node --test
118
+ npm run proof
119
+ npm run audit:public-docs
120
+ npm run verify:package-runtime
121
+ npm pack --dry-run
122
+ npm gitHead verification
123
+ GitHub tag target verification
124
+ fresh npm install smoke
125
+ public repo sync
126
+ sync-public-only mode for already-published versions
127
+ ```
128
+
129
+ ## Hard stop message
130
+
131
+ If the workflow is stale, report exactly:
132
+
133
+ ```txt
134
+ RELEASE WORKFLOW STALE — BLOCKED
135
+ Do not publish manually.
136
+ Do not sync the public repo manually.
137
+ Fix workflow first.
138
+ ```
139
+
140
+ ## Agent report format
141
+
142
+ Before touching release automation, report:
143
+
144
+ ```txt
145
+ Release workflow classification:
146
+ - Workflow path:
147
+ - Active package target:
148
+ - Old package targets present: yes/no
149
+ - sync-public-only mode present: yes/no
150
+ - npm gitHead verification present: yes/no
151
+ - fresh install smoke present: yes/no
152
+ - public repo sync present: yes/no
153
+ - release workflow allowed: yes/no
154
+ ```
155
+
156
+ ## Hard stop conditions
157
+
158
+ Stop and report if:
159
+
160
+ - a consumer project is used to certify an LBE release
161
+ - focused integration tests are used as release proof
162
+ - a copied/lab workspace is treated as package authority
163
+ - local path, git, workspace, or symlink dependencies are used for LBE in a consumer project
164
+ - release claims are made without npm/GitHub/package provenance checks
165
+
166
+ ## Agent report format
167
+
168
+ Before making any LBE-related release claim, report:
169
+
170
+ ```txt
171
+ Workspace classification:
172
+ - Path:
173
+ - Type: LBE release workspace / consumer project / local lab / copied workspace / unknown
174
+ - npm run proof available: yes/no
175
+ - full suite exit code:
176
+ - release claims allowed: yes/no
177
+ ```
178
+
179
+ If the workspace is a consumer project, local lab, copied workspace, or unknown, release claims are not allowed.
package/Release-README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @letterblack/lbe-core
2
2
 
3
+ **Release 1.3.7**
4
+
3
5
  LBE is local execution control for AI agents. It evaluates file and shell
4
6
  actions routed through its execution boundary, records local evidence, and
5
7
  returns an allow/deny outcome before the governed action runs.