dotmem 0.0.7 → 0.0.8

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/SECURITY.md CHANGED
@@ -8,7 +8,7 @@ This document covers dotmem's optional encryption layer, client-side multitenanc
8
8
 
9
9
  This applies to every layer: `state`, `store`, `session`, `idb`, `memory`, `sqlite`. Treat browser storage as client-controlled unless you explicitly opt in.
10
10
 
11
- Core has zero production dependencies. No `eval`, no dynamic code execution, no bundled telemetry, sanitized keys, validated inputs, bounded journal entries, UUID-based session identifiers. Independently checkable via Socket.dev / Snyk. (The optional MCP stdio entrypoint is the one declared-dependency surface: `zod` and `@modelcontextprotocol/server`.)
11
+ Core declares no production dependencies in package.json. `memorio` is listed under devDependencies, but the built ESM/CJS output imports it as an external runtime module; a published install therefore needs `memorio` available unless packaging changes. No `eval`, no dynamic code execution, no bundled telemetry, sanitized keys, validated inputs, bounded journal entries, UUID-based session identifiers. Independently checkable via Socket.dev / Snyk. (The optional MCP stdio entrypoint is the one declared-dependency surface: `zod` and `@modelcontextprotocol/server`.)
12
12
 
13
13
  ---
14
14
 
@@ -191,9 +191,12 @@ machine.
191
191
 
192
192
  - `dotmem_acquire` is registered only when the server environment sets
193
193
  `DOTMEM_MCP_WRITE=1`.
194
- - Without the flag, the server exposes `dotmem_context` and
195
- `dotmem_rules` only. The write tool is not in `tools/list`, and calling
196
- it by name answers `Tool dotmem_acquire not found`.
194
+ - `dotmem_continuity` write actions (`checkpoint`, `add-open-loop`,
195
+ `resolve-open-loop`) require `DOTMEM_MCP_WRITE=1`. Read actions
196
+ (`status`, `summaries`, `open-loops`, `evaluate`) are always available.
197
+ - Without the flag, the server exposes `dotmem_context`, `dotmem_rules`,
198
+ and `dotmem_continuity` (read actions only). The write tools are not in
199
+ `tools/list`, and calling them by name answers `Tool <name> not found`.
197
200
  - The flag is read once, when the server starts. Changing it requires
198
201
  restarting the server.
199
202
  - The library API (`memory.acquire()`) and the CLI (`npx dotmem acquire`)
@@ -289,7 +292,7 @@ relaxation *attributable*, not undetectable-by-absence.
289
292
 
290
293
  ## Supply chain
291
294
 
292
- - Zero production dependencies in core - nothing to audit transitively for the parts you actually ship.
295
+ - Declared production dependencies: none in the root package.json; `memorio` is a devDependency. The built output imports `memorio` as an external runtime module, so it must be available to a published install unless packaging changes. Do not infer zero runtime dependencies from package.json alone.
293
296
  - Dev dependencies are audited periodically (`npm audit` and equivalent).
294
297
  - Package integrity is checkable independently via Socket.dev / Snyk before you adopt a given version.
295
298
 
@@ -469,10 +472,10 @@ npx dotmem handshake --bind-hi "<user name>" --scope "<scope>"
469
472
  ### Identity fusion protection
470
473
 
471
474
  dotmem detects attempts to fuse an identity with implementation metadata into
472
- pseudo-identities (e.g. `Joy`, `HI`, `Jo-profile`). The
473
- canonical identity is preserved; fused forms are never accepted as an identity.
474
- Host, provider, runtime, and model names are implementation metadata and never
475
- become the conversational identity or authority.
475
+ pseudo-identities (e.g. `Joy-profile`, `HI`, `Jo-profile`). The
476
+ canonical identity (`Joy`/`Jo` from the canonical profile) is preserved; fused forms
477
+ are never accepted as an identity. Host, provider, runtime, and model names are
478
+ implementation metadata and never become the conversational identity or authority.
476
479
 
477
480
  ### JHF remediation principles
478
481
 
package/agent.cjs CHANGED
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
 
3
- require('memorio/global');
4
3
  var memorio = require('memorio');
5
4
 
6
5
  var __defProp = Object.defineProperty;
@@ -19,15 +18,27 @@ var __export = (target, all) => {
19
18
  __defProp(target, name, { get: all[name], enumerable: true });
20
19
  };
21
20
 
21
+ // core/idb.ts
22
+ var idb;
23
+ var init_idb = __esm({
24
+ "core/idb.ts"() {
25
+ idb = {
26
+ db: {},
27
+ table: {},
28
+ data: {},
29
+ _disabled: true,
30
+ _warning: "IndexedDB is not available in this environment. Use dotmem store or session for persistence."
31
+ };
32
+ }
33
+ });
34
+
22
35
  // core/global.ts
23
36
  var global_exports = {};
24
37
  __export(global_exports, {
25
- DEV: () => memorio.DEV,
26
- PROD: () => memorio.PROD,
27
38
  dispatch: () => memorio.dispatch,
28
39
  getPlatform: () => getPlatform,
29
40
  hlc: () => memorio.hlc,
30
- idb: () => memorio.idb,
41
+ idb: () => idb,
31
42
  session: () => memorio.session,
32
43
  state: () => memorio.state,
33
44
  store: () => memorio.store
@@ -35,6 +46,7 @@ __export(global_exports, {
35
46
  var getPlatform;
36
47
  var init_global = __esm({
37
48
  "core/global.ts"() {
49
+ init_idb();
38
50
  getPlatform = /* @__PURE__ */ __name(() => {
39
51
  const proc = globalThis.process;
40
52
  if (proc) {
package/agent.js CHANGED
@@ -1,5 +1,4 @@
1
- import 'memorio/global';
2
- import { store, state, session, idb, hlc, dispatch, PROD, DEV } from 'memorio';
1
+ import { store, state, session, hlc, dispatch } from 'memorio';
3
2
 
4
3
  var __defProp = Object.defineProperty;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -17,11 +16,23 @@ var __export = (target, all) => {
17
16
  __defProp(target, name, { get: all[name], enumerable: true });
18
17
  };
19
18
 
19
+ // core/idb.ts
20
+ var idb;
21
+ var init_idb = __esm({
22
+ "core/idb.ts"() {
23
+ idb = {
24
+ db: {},
25
+ table: {},
26
+ data: {},
27
+ _disabled: true,
28
+ _warning: "IndexedDB is not available in this environment. Use dotmem store or session for persistence."
29
+ };
30
+ }
31
+ });
32
+
20
33
  // core/global.ts
21
34
  var global_exports = {};
22
35
  __export(global_exports, {
23
- DEV: () => DEV,
24
- PROD: () => PROD,
25
36
  dispatch: () => dispatch,
26
37
  getPlatform: () => getPlatform,
27
38
  hlc: () => hlc,
@@ -33,6 +44,7 @@ __export(global_exports, {
33
44
  var getPlatform;
34
45
  var init_global = __esm({
35
46
  "core/global.ts"() {
47
+ init_idb();
36
48
  getPlatform = /* @__PURE__ */ __name(() => {
37
49
  const proc = globalThis.process;
38
50
  if (proc) {