@maadb/core 0.7.15 → 0.7.16
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/README.md +3 -2
- package/dist/git/commit.d.ts +7 -0
- package/dist/git/commit.d.ts.map +1 -1
- package/dist/git/commit.js +34 -5
- package/dist/git/commit.js.map +1 -1
- package/dist/git/index.d.ts.map +1 -1
- package/dist/git/index.js +7 -8
- package/dist/git/index.js.map +1 -1
- package/dist/writer/serializer.d.ts.map +1 -1
- package/dist/writer/serializer.js +10 -2
- package/dist/writer/serializer.js.map +1 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](tsconfig.json)
|
|
6
6
|
[](tests)
|
|
7
7
|
[](https://www.npmjs.com/package/@maadb/core)
|
|
8
|
-
[](Version.md)
|
|
9
9
|
|
|
10
10
|
> **Markdown is the database. The engine makes it queryable.**
|
|
11
11
|
|
|
@@ -350,9 +350,10 @@ In multi-project mode, session tools are always available pre-bind: `maad_projec
|
|
|
350
350
|
|
|
351
351
|
## Current state
|
|
352
352
|
|
|
353
|
-
**Current:** v0.7.
|
|
353
|
+
**Current:** v0.7.16 — dependency security wave: simple-git 3.36.0 (high-severity advisory) with engine-side env hardening, js-yaml 4.2.0 with version-independent serializer quoting, better-sqlite3 12.10.0; zero `npm audit` findings.
|
|
354
354
|
|
|
355
355
|
Recent shipped scope:
|
|
356
|
+
- **0.7.15** — `maad version` command, CI on every push/PR (Ubuntu + Windows), LF line-ending enforcement, MAADb brand sweep, packaging hardening
|
|
356
357
|
- **0.7.14** — Correctness patch from a full engine audit: CRLF/BOM-tolerant writes, merged git child environment, numeric sort ordering, composite filters on join/verify, pagination guards, pathspec-scoped audit commits
|
|
357
358
|
- **0.7.13** — Per-document index-time memory guards (annotation cap + byte backstop) so one pathological document can't exhaust the engine process
|
|
358
359
|
- **0.7.12** — `maad_query` sort contract (`UNSUPPORTED_SORT_FIELD` instead of silent NULL ordering), engine-stamped `createdAt`, file-path canonicalization
|
package/dist/git/commit.d.ts
CHANGED
|
@@ -7,6 +7,13 @@ interface GitCommitIdentityEnv {
|
|
|
7
7
|
GIT_COMMITTER_EMAIL: string;
|
|
8
8
|
}
|
|
9
9
|
export declare function resolveCommitAuthor(env?: NodeJS.ProcessEnv): GitCommitIdentityEnv;
|
|
10
|
+
/**
|
|
11
|
+
* The environment for engine-spawned git processes: the parent env (PATH /
|
|
12
|
+
* HOME / safe.directory must survive — simple-git's .env() REPLACES, not
|
|
13
|
+
* augments) minus the unsafe keys above, with the commit identity merged
|
|
14
|
+
* over it.
|
|
15
|
+
*/
|
|
16
|
+
export declare function buildGitEnv(): NodeJS.ProcessEnv;
|
|
10
17
|
/**
|
|
11
18
|
* 0.7.0 — Identity snapshot for commit-message enrichment. Populated from
|
|
12
19
|
* the session's token when `MAAD_COMMIT_IDENTITY` is on (default true in
|
package/dist/git/commit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commit.d.ts","sourceRoot":"","sources":["../../src/git/commit.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAmB7D,UAAU,oBAAoB;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,oBAAoB,CAa9F;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,SAAS,CAAA;CAAE,GACvC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAMxD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAS/D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAKD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAU9E;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"commit.d.ts","sourceRoot":"","sources":["../../src/git/commit.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAmB7D,UAAU,oBAAoB;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,oBAAoB,CAa9F;AAoBD;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAAC,UAAU,CAM/C;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,SAAS,CAAA;CAAE,GACvC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAMxD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAS/D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAKD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAU9E;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,aAAa,CAAC,CAwFxB"}
|
package/dist/git/commit.js
CHANGED
|
@@ -40,6 +40,37 @@ export function resolveCommitAuthor(env = process.env) {
|
|
|
40
40
|
GIT_COMMITTER_EMAIL: email,
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Env vars simple-git >= 3.36.0 (CVE-2026-6951 hardening) refuses to pass to
|
|
45
|
+
* a spawned git process unless an allowUnsafe* flag is set. Mirrors the map
|
|
46
|
+
* in @simple-git/argv-parser's parseEnv (keys are matched case-insensitively).
|
|
47
|
+
* The engine never needs any of them — it runs local plumbing commands that
|
|
48
|
+
* must never open an editor, pager, ssh connection, or credential prompt —
|
|
49
|
+
* but several (EDITOR, PAGER, GIT_ASKPASS) are present in every interactive
|
|
50
|
+
* shell and on GitHub Actions runners, so they must be stripped rather than
|
|
51
|
+
* passed through.
|
|
52
|
+
*/
|
|
53
|
+
const UNSAFE_GIT_ENV_KEYS = new Set([
|
|
54
|
+
'editor', 'pager', 'prefix', 'ssh_askpass',
|
|
55
|
+
'git_askpass', 'git_editor', 'git_sequence_editor', 'git_pager',
|
|
56
|
+
'git_ssh', 'git_ssh_command', 'git_proxy_command',
|
|
57
|
+
'git_exec_path', 'git_external_diff', 'git_template_dir',
|
|
58
|
+
'git_config', 'git_config_global', 'git_config_system', 'git_config_count',
|
|
59
|
+
]);
|
|
60
|
+
/**
|
|
61
|
+
* The environment for engine-spawned git processes: the parent env (PATH /
|
|
62
|
+
* HOME / safe.directory must survive — simple-git's .env() REPLACES, not
|
|
63
|
+
* augments) minus the unsafe keys above, with the commit identity merged
|
|
64
|
+
* over it.
|
|
65
|
+
*/
|
|
66
|
+
export function buildGitEnv() {
|
|
67
|
+
const env = {};
|
|
68
|
+
for (const [key, value] of Object.entries(process.env)) {
|
|
69
|
+
if (!UNSAFE_GIT_ENV_KEYS.has(key.toLowerCase()))
|
|
70
|
+
env[key] = value;
|
|
71
|
+
}
|
|
72
|
+
return { ...env, ...resolveCommitAuthor() };
|
|
73
|
+
}
|
|
43
74
|
// Format: maad:<action> <doc_id> [<doc_type>] <detail> — <summary>
|
|
44
75
|
// With identity (0.7.0 MAAD_COMMIT_IDENTITY=true): title unchanged, body
|
|
45
76
|
// appended with role/token/agent/user lines so `git log --grep` queries on
|
|
@@ -129,12 +160,10 @@ export async function autoCommit(git, opts) {
|
|
|
129
160
|
let result;
|
|
130
161
|
try {
|
|
131
162
|
// 0.7.3 (fup-2026-095) — inject identity env so we never depend on the
|
|
132
|
-
// host's `git config user.name/user.email`.
|
|
133
|
-
//
|
|
134
|
-
// the shared executor), so the key-by-key form stripped PATH/HOME/
|
|
135
|
-
// safe.directory from every subsequent git spawn on this instance.
|
|
163
|
+
// host's `git config user.name/user.email`. See buildGitEnv for why
|
|
164
|
+
// this merges over process.env and strips askpass vars.
|
|
136
165
|
result = await git
|
|
137
|
-
.env(
|
|
166
|
+
.env(buildGitEnv())
|
|
138
167
|
.commit(message, opts.files);
|
|
139
168
|
}
|
|
140
169
|
catch (e) {
|
package/dist/git/commit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commit.js","sourceRoot":"","sources":["../../src/git/commit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"commit.js","sourceRoot":"","sources":["../../src/git/commit.ts"],"names":[],"mappings":"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"}
|
package/dist/git/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAIvD,OAAO,KAAK,EACV,KAAK,EACL,OAAO,EAEP,YAAY,EACZ,UAAU,EACV,UAAU,EACV,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAIvD,OAAO,KAAK,EACV,KAAK,EACL,OAAO,EAEP,YAAY,EACZ,UAAU,EACV,UAAU,EACV,cAAc,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,EAA2B,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAK9F,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhE,qBAAa,QAAQ;IACnB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAKzB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAMhC;;;;;;;OAOG;IACH,qBAAqB,IAAI;QAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,IAAI,CAAA;KAAE;IAgBvF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBzB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAInD,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,OAAO,CAAC,YAAY,EAAE,CAAC;IAIpB,KAAK,CAAC,IAAI,CAAC,EAAE;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAInB,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,EAAE,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIvB,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAIjC,YAAY,IAAI,SAAS;IAMnB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnE;;;;;;;;;OASG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAgBlH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,2EAA2E;IACrE,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IASvC,2EAA2E;IACrE,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CAQvC"}
|
package/dist/git/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { simpleGit } from 'simple-git';
|
|
6
6
|
import { existsSync, writeFileSync, statSync, unlinkSync } from 'node:fs';
|
|
7
7
|
import path from 'node:path';
|
|
8
|
-
import { autoCommit,
|
|
8
|
+
import { autoCommit, buildGitEnv } from './commit.js';
|
|
9
9
|
import { getHistory, getAudit } from './log.js';
|
|
10
10
|
import { getDiff } from './diff.js';
|
|
11
11
|
import { getSnapshot } from './snapshot.js';
|
|
@@ -54,12 +54,11 @@ export class GitLayer {
|
|
|
54
54
|
}
|
|
55
55
|
// Initial commit. Identity env per fup-2026-095 — same fragility as
|
|
56
56
|
// autoCommit: a host without `git config user.name/email` would otherwise
|
|
57
|
-
// fail this initial commit too.
|
|
58
|
-
//
|
|
59
|
-
// shared executor.
|
|
57
|
+
// fail this initial commit too. See buildGitEnv for the merge + askpass
|
|
58
|
+
// stripping rationale.
|
|
60
59
|
await this.git.add('.gitignore');
|
|
61
60
|
await this.git
|
|
62
|
-
.env(
|
|
61
|
+
.env(buildGitEnv())
|
|
63
62
|
.commit('maad:init — Initialize MAAD project');
|
|
64
63
|
}
|
|
65
64
|
async commit(opts) {
|
|
@@ -85,10 +84,10 @@ export class GitLayer {
|
|
|
85
84
|
// Inject the committer identity env — annotated tags need a tagger
|
|
86
85
|
// identity and we can't depend on the host having `git config
|
|
87
86
|
// user.name/user.email` set. Same pattern as autoCommit + initRepo
|
|
88
|
-
// (0.7.3 fup-2026-095)
|
|
89
|
-
//
|
|
87
|
+
// (0.7.3 fup-2026-095); see buildGitEnv for the merge + askpass
|
|
88
|
+
// stripping rationale.
|
|
90
89
|
await this.git
|
|
91
|
-
.env(
|
|
90
|
+
.env(buildGitEnv())
|
|
92
91
|
.addAnnotatedTag(name, message);
|
|
93
92
|
}
|
|
94
93
|
/**
|
package/dist/git/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,yBAAyB;AACzB,kEAAkE;AAClE,+EAA+E;AAE/E,OAAO,EAAE,SAAS,EAAkB,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,IAAI,MAAM,WAAW,CAAC;AAW7B,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/writer/serializer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/writer/serializer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AA0BpD,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,MAAM,EAAE,gBAAgB,GACvB,MAAM,CAsCR;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAkDlE"}
|
|
@@ -7,8 +7,7 @@ import yaml from 'js-yaml';
|
|
|
7
7
|
// back as a non-string under our CORE_SCHEMA loader must be quoted, or string
|
|
8
8
|
// fields silently corrupt on read. The static keyword/numeric checks below
|
|
9
9
|
// catch the common cases; this guard is the catch-all that future-proofs us
|
|
10
|
-
// against any implicit-tag scalar we forgot to enumerate
|
|
11
|
-
// sci-notation lookalikes like `1e38892`, hex/octal literals, etc.).
|
|
10
|
+
// against any implicit-tag scalar we forgot to enumerate.
|
|
12
11
|
function wouldCoerceFromString(candidate) {
|
|
13
12
|
try {
|
|
14
13
|
const parsed = yaml.load(candidate, { schema: yaml.CORE_SCHEMA });
|
|
@@ -18,6 +17,14 @@ function wouldCoerceFromString(candidate) {
|
|
|
18
17
|
return true;
|
|
19
18
|
}
|
|
20
19
|
}
|
|
20
|
+
// Version-independent numeric-lookalike check: YAML 1.2 core int/float/hex/
|
|
21
|
+
// octal/binary forms plus 1.1-style underscore digits. The parse-back guard
|
|
22
|
+
// above reflects whatever the *installed* js-yaml resolves — 4.2.0 stopped
|
|
23
|
+
// resolving some forms (bare sci-notation like `1e38892`, underscore numbers)
|
|
24
|
+
// that other downstream YAML parsers still coerce to numbers. A string field
|
|
25
|
+
// must survive as a string under ANY parser, so anything number-shaped is
|
|
26
|
+
// quoted statically rather than trusting one resolver's current behavior.
|
|
27
|
+
const NUMERIC_LOOKALIKE = /^[-+]?(0[box][0-9a-fA-F_]+|(\.[0-9_]+|[0-9][0-9_]*(\.[0-9_]*)?)([eE][-+]?[0-9_]+)?|\.(inf|Inf|INF)|\.?(nan|NaN|NAN))$/;
|
|
21
28
|
export function serializeFrontmatter(frontmatter, schema) {
|
|
22
29
|
const lines = ['---'];
|
|
23
30
|
const written = new Set();
|
|
@@ -94,6 +101,7 @@ export function serializeField(key, value) {
|
|
|
94
101
|
str === 'true' || str === 'false' ||
|
|
95
102
|
str === 'null' || str === 'yes' || str === 'no' ||
|
|
96
103
|
/^\d/.test(str) && /[^\d.eE+-]/.test(str) || // looks numeric but isn't
|
|
104
|
+
NUMERIC_LOOKALIKE.test(str) || // number-shaped under any YAML parser
|
|
97
105
|
wouldCoerceFromString(str) // catch-all: any implicit-tag coercion forces quotes
|
|
98
106
|
) {
|
|
99
107
|
return `${key}: "${str.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../src/writer/serializer.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,kBAAkB;AAClB,oEAAoE;AACpE,+EAA+E;AAE/E,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,4EAA4E;AAC5E,
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../src/writer/serializer.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,kBAAkB;AAClB,oEAAoE;AACpE,+EAA+E;AAE/E,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,4EAA4E;AAC5E,8EAA8E;AAC9E,2EAA2E;AAC3E,4EAA4E;AAC5E,0DAA0D;AAC1D,SAAS,qBAAqB,CAAC,SAAiB;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,OAAO,MAAM,KAAK,SAAS,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,0EAA0E;AAC1E,0EAA0E;AAC1E,MAAM,iBAAiB,GACrB,uHAAuH,CAAC;AAE1H,MAAM,UAAU,oBAAoB,CAClC,WAAoC,EACpC,MAAwB;IAExB,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,4CAA4C;IAC5C,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAClD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,KAAc;IACxD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,GAAG,QAAQ,CAAC;IACjE,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC;IAEzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,8CAA8C;YAC9C,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;YAChG,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACzC,CAAC;IAED,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,iEAAiE;QACjE,OAAO,GAAG,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC;IAC5C,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE1B,qDAAqD;IACrD,IACE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,GAAG,KAAK,EAAE;QACV,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO;QACjC,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI;QAC/C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,0BAA0B;QACvE,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,sCAAsC;QACrE,qBAAqB,CAAC,GAAG,CAAC,CAAC,qDAAqD;MAChF,CAAC;QACD,OAAO,GAAG,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;IACxE,CAAC;IAED,OAAO,GAAG,GAAG,KAAK,GAAG,EAAE,CAAC;AAC1B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maadb/core",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.16",
|
|
4
4
|
"description": "Markdown As A Database — treats markdown as the canonical data store, builds a queryable index, and gives LLMs deterministic read/write access.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -49,18 +49,18 @@
|
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@modelcontextprotocol/sdk": "1.29.0",
|
|
52
|
-
"better-sqlite3": "12.
|
|
52
|
+
"better-sqlite3": "12.10.0",
|
|
53
53
|
"gray-matter": "~4.0.3",
|
|
54
|
-
"js-yaml": "~4.
|
|
54
|
+
"js-yaml": "~4.2.0",
|
|
55
55
|
"pino": "10.3.1",
|
|
56
|
-
"simple-git": "3.
|
|
56
|
+
"simple-git": "3.36.0"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@types/better-sqlite3": "~7.6.13",
|
|
60
60
|
"@types/js-yaml": "~4.0.9",
|
|
61
|
-
"@types/node": "~24.
|
|
61
|
+
"@types/node": "~24.13.1",
|
|
62
62
|
"pino-pretty": "~13.1.3",
|
|
63
|
-
"typescript": "~6.0.
|
|
64
|
-
"vitest": "~4.1.
|
|
63
|
+
"typescript": "~6.0.3",
|
|
64
|
+
"vitest": "~4.1.8"
|
|
65
65
|
}
|
|
66
66
|
}
|