daftari 1.26.0 → 1.28.0
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 +53 -0
- package/dist/curation/decay.js +28 -16
- package/dist/curation/decay.js.map +1 -1
- package/dist/frontmatter/schema.d.ts.map +1 -1
- package/dist/frontmatter/schema.js +11 -3
- package/dist/frontmatter/schema.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/search/coverage.d.ts +20 -0
- package/dist/search/coverage.d.ts.map +1 -0
- package/dist/search/coverage.js +151 -0
- package/dist/search/coverage.js.map +1 -0
- package/dist/search/current-source.d.ts +18 -0
- package/dist/search/current-source.d.ts.map +1 -0
- package/dist/search/current-source.js +48 -0
- package/dist/search/current-source.js.map +1 -0
- package/dist/search/hybrid.d.ts +4 -0
- package/dist/search/hybrid.d.ts.map +1 -1
- package/dist/search/hybrid.js.map +1 -1
- package/dist/storage/index-db.d.ts +1 -0
- package/dist/storage/index-db.d.ts.map +1 -1
- package/dist/storage/index-db.js +23 -1
- package/dist/storage/index-db.js.map +1 -1
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +32 -4
- package/dist/tools/search.js.map +1 -1
- package/dist/utils/dates.d.ts +2 -0
- package/dist/utils/dates.d.ts.map +1 -0
- package/dist/utils/dates.js +18 -0
- package/dist/utils/dates.js.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,59 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.28.0] - 2026-06-22
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **`vault_search` assembles a coverage cluster (edge-aware coverage retrieval,
|
|
15
|
+
Stage 1)** ([#150]). After ranking, a conditional, bounded coverage pass appends
|
|
16
|
+
same-entity documents — those sharing a frontmatter tag with at least two of the
|
|
17
|
+
top result seeds — that fall within the seeds' `created`-date window, surfacing
|
|
18
|
+
cluster members that lexical/semantic ranking alone missed. Added documents carry
|
|
19
|
+
`viaCoverage: true` and `coverageReason: "entity-window"`; they are appended
|
|
20
|
+
*after* the ranked hits (the relevance top-N is never re-ordered), RBAC-filtered
|
|
21
|
+
identically, run through SP-A current-source foregrounding, and bounded by a
|
|
22
|
+
doc-count and token-budget cap. The pass stays silent when the top seeds share no
|
|
23
|
+
tag, so single-fact queries are unaffected. Signals derive from the result set and
|
|
24
|
+
frontmatter, never the query text. Note: existing `vault_search` callers may now
|
|
25
|
+
see additional `viaCoverage`-flagged hits appended to their results.
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
|
|
29
|
+
- **Malformed date frontmatter no longer poisons the search index** ([#151]).
|
|
30
|
+
`created` / `updated` values that are not a real `YYYY-MM-DD` — non-padded
|
|
31
|
+
`2026-3-1`, slash `2026/03/01`, textual, or out-of-range such as `2026-13-45` —
|
|
32
|
+
were stored raw in the index, where date arithmetic could throw. The index now
|
|
33
|
+
normalizes recoverable dates (`2026-3-1` → `2026-03-01`) and stores an empty
|
|
34
|
+
string for unrecoverable ones, while the source markdown is preserved verbatim:
|
|
35
|
+
`requireDate` only *flags* a malformed date, it never rewrites it, honoring the
|
|
36
|
+
non-destructive tool-write invariant. `vault_lint` now also flags out-of-range
|
|
37
|
+
dates that previously passed validation unnoticed.
|
|
38
|
+
|
|
39
|
+
[#150]: https://github.com/mavaali/daftari/pull/150
|
|
40
|
+
[#151]: https://github.com/mavaali/daftari/pull/151
|
|
41
|
+
|
|
42
|
+
## [1.27.0] - 2026-06-21
|
|
43
|
+
|
|
44
|
+
### Added
|
|
45
|
+
|
|
46
|
+
- **`vault_search` foregrounds the current source of a superseded document
|
|
47
|
+
(SP-A)** ([#146]). When a hit is superseded — or deprecated — and points at a
|
|
48
|
+
successor, the result gains a structured `currentSource` field that resolves the
|
|
49
|
+
`superseded_by` chain to its terminal-current document, one of `resolved` /
|
|
50
|
+
`restricted` / `dangling` / `cycle`. Enrichment is additive and never re-ranks,
|
|
51
|
+
and it respects RBAC strictly: any unreadable hop in the chain degrades to
|
|
52
|
+
`restricted`, leaking no path or title. daftari authors the *relation*, never the
|
|
53
|
+
*value* — the successor snippet is read verbatim from its indexed content, never
|
|
54
|
+
synthesized.
|
|
55
|
+
|
|
56
|
+
### Changed
|
|
57
|
+
|
|
58
|
+
- **A `superseded`-status document now surfaces a decay banner** (it was previously
|
|
59
|
+
silent). The document-supplied `superseded_by` path no longer appears in any decay
|
|
60
|
+
banner text — redirection moves entirely to the structured `currentSource` field —
|
|
61
|
+
which also closes a prompt-injection surface in the banner.
|
|
62
|
+
|
|
10
63
|
## [1.26.0] - 2026-06-21
|
|
11
64
|
|
|
12
65
|
### Security
|
package/dist/curation/decay.js
CHANGED
|
@@ -14,18 +14,17 @@ export const LOW_CONFIDENCE_MAX_DAYS = 30;
|
|
|
14
14
|
export function computeDecay(input, now = new Date()) {
|
|
15
15
|
const reasons = [];
|
|
16
16
|
let level = null;
|
|
17
|
+
// Superseded — replaced by a specific successor. Retired severity. The
|
|
18
|
+
// successor's identity is surfaced structurally by resolveCurrentSource, NOT
|
|
19
|
+
// in this banner, so no document-authored string reaches the prompt here.
|
|
20
|
+
if (input.status === "superseded") {
|
|
21
|
+
level = "deprecated";
|
|
22
|
+
reasons.push("status is superseded — a newer version of this document exists");
|
|
23
|
+
}
|
|
17
24
|
// Deprecated — formally retired knowledge. Highest precedence.
|
|
18
25
|
if (input.status === "deprecated") {
|
|
19
26
|
level = "deprecated";
|
|
20
27
|
reasons.push("status is deprecated — this document has been retired");
|
|
21
|
-
if (input.superseded_by) {
|
|
22
|
-
// `superseded_by` is the only document-authored string that reaches the
|
|
23
|
-
// banner. Collapse all whitespace before interpolating it: a newline would
|
|
24
|
-
// otherwise forge an extra banner line — a prompt-injection vector against
|
|
25
|
-
// the consuming agent.
|
|
26
|
-
const ref = input.superseded_by.replace(/\s+/g, " ").trim();
|
|
27
|
-
reasons.push(`superseded by: ${ref}`);
|
|
28
|
-
}
|
|
29
28
|
}
|
|
30
29
|
// Past TTL.
|
|
31
30
|
const staleness = computeStaleness({ updated: input.updated, ttl_days: input.ttl_days }, now);
|
|
@@ -60,18 +59,31 @@ export function computeDecay(input, now = new Date()) {
|
|
|
60
59
|
}
|
|
61
60
|
if (level === null)
|
|
62
61
|
return null; // healthy — silent baseline
|
|
63
|
-
return { level, reasons, banner: renderBanner(level, reasons) };
|
|
62
|
+
return { level, reasons, banner: renderBanner(level, reasons, input.status) };
|
|
64
63
|
}
|
|
65
64
|
// The banner is null for `aging` (scarcity rule). For warn/deprecated it is a
|
|
66
|
-
// Daftari-authored, action-stating warning.
|
|
67
|
-
//
|
|
68
|
-
//
|
|
69
|
-
|
|
65
|
+
// Daftari-authored, action-stating warning. Every line is Daftari-authored: no
|
|
66
|
+
// document-supplied string is interpolated here, so the banner is not a
|
|
67
|
+
// prompt-injection surface. The triggering `status` selects a superseded-specific
|
|
68
|
+
// head where applicable.
|
|
69
|
+
function renderBanner(level, reasons, status) {
|
|
70
70
|
if (level === "aging")
|
|
71
71
|
return null;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
let head;
|
|
73
|
+
// `status` is checked before `level` because it is the more specific signal:
|
|
74
|
+
// a superseded doc has level "deprecated" but must show the SUPERSEDED head.
|
|
75
|
+
if (status === "superseded") {
|
|
76
|
+
head =
|
|
77
|
+
"⚠ SUPERSEDED — a newer version of this document exists. See the current source rather than relying on this one.";
|
|
78
|
+
}
|
|
79
|
+
else if (level === "deprecated") {
|
|
80
|
+
head =
|
|
81
|
+
"⚠ DEPRECATED — this document has been retired. Do not rely on it; find the current source.";
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
head =
|
|
85
|
+
"⚠ STALE — this document may no longer be accurate. Verify against a current source before relying on it.";
|
|
86
|
+
}
|
|
75
87
|
return `${head}\n${reasons.map((r) => ` - ${r}`).join("\n")}`;
|
|
76
88
|
}
|
|
77
89
|
//# sourceMappingURL=decay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decay.js","sourceRoot":"","sources":["../../src/curation/decay.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,EAAE;AACF,sEAAsE;AACtE,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,0EAA0E;AAC1E,mDAAmD;AAEnD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE7D,+EAA+E;AAC/E,yEAAyE;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAqB1C,MAAM,UAAU,YAAY,CAAC,KAAiB,EAAE,MAAY,IAAI,IAAI,EAAE;IACpE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,KAAK,GAAsB,IAAI,CAAC;IAEpC
|
|
1
|
+
{"version":3,"file":"decay.js","sourceRoot":"","sources":["../../src/curation/decay.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,EAAE;AACF,sEAAsE;AACtE,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,0EAA0E;AAC1E,mDAAmD;AAEnD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE7D,+EAA+E;AAC/E,yEAAyE;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAqB1C,MAAM,UAAU,YAAY,CAAC,KAAiB,EAAE,MAAY,IAAI,IAAI,EAAE;IACpE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,KAAK,GAAsB,IAAI,CAAC;IAEpC,uEAAuE;IACvE,6EAA6E;IAC7E,0EAA0E;IAC1E,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,KAAK,GAAG,YAAY,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IACjF,CAAC;IAED,+DAA+D;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,KAAK,GAAG,YAAY,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;IACxE,CAAC;IAED,YAAY;IACZ,MAAM,SAAS,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9F,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,IAAI,KAAK,KAAK,IAAI;YAAE,KAAK,GAAG,MAAM,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,OAAO,iCAAiC,SAAS,CAAC,OAAO,OAAO,CAAC,CAAC;IAC9F,CAAC;IAED,aAAa;IACb,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChE,IAAI,QAAQ,GAAG,cAAc,EAAE,CAAC;YAC9B,IAAI,KAAK,KAAK,IAAI;gBAAE,KAAK,GAAG,MAAM,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,eAAe,QAAQ,YAAY,cAAc,IAAI,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAI,QAAQ,IAAI,uBAAuB,EAAE,CAAC;YACxC,IAAI,KAAK,KAAK,IAAI;gBAAE,KAAK,GAAG,MAAM,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,oCAAoC,QAAQ,YAAY,uBAAuB,IAAI,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;QACnE,KAAK,GAAG,OAAO,CAAC;QAChB,OAAO,CAAC,IAAI,CACV,GAAG,SAAS,CAAC,OAAO,uBAAuB;YACzC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,SAAS,CAAC,OAAO,OAAO,CAC3E,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,4BAA4B;IAE7D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;AAChF,CAAC;AAED,8EAA8E;AAC9E,+EAA+E;AAC/E,wEAAwE;AACxE,kFAAkF;AAClF,yBAAyB;AACzB,SAAS,YAAY,CAAC,KAAiB,EAAE,OAAiB,EAAE,MAAc;IACxE,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,IAAY,CAAC;IACjB,6EAA6E;IAC7E,6EAA6E;IAC7E,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,IAAI;YACF,iHAAiH,CAAC;IACtH,CAAC;SAAM,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAClC,IAAI;YACF,4FAA4F,CAAC;IACjG,CAAC;SAAM,CAAC;QACN,IAAI;YACF,0GAA0G,CAAC;IAC/G,CAAC;IACD,OAAO,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACjE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/frontmatter/schema.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/frontmatter/schema.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAKL,KAAK,WAAW,EAMhB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AA0ED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,GAAE,eAAe,EAAO,GACjC,qBAAqB,CAoHvB"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
// downstream readers never crash, and it returns a ValidationReport listing
|
|
6
6
|
// every structural problem. It does NOT enforce curation rules (staleness,
|
|
7
7
|
// tension, superseded_by consistency) — that is the curation engine's job.
|
|
8
|
+
import { normalizeIsoDate } from "../utils/dates.js";
|
|
8
9
|
import { CONFIDENCES, DOMAINS, PROVENANCES, STATUSES, } from "./types.js";
|
|
9
10
|
// Validates one config-declared extension field against the raw frontmatter,
|
|
10
11
|
// appending any problem to `issues`. Advisory, like the built-in checks: a
|
|
@@ -110,9 +111,16 @@ export function validateFrontmatter(data, extensions = []) {
|
|
|
110
111
|
return v.toISOString().slice(0, 10);
|
|
111
112
|
}
|
|
112
113
|
if (typeof v === "string") {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
// Preserve the author's raw value verbatim (serializeDocument writes this
|
|
115
|
+
// back to the source file — a tool-mediated write must never rewrite or
|
|
116
|
+
// drop what the author put there, #113). Flag anything that isn't a
|
|
117
|
+
// canonical, real-calendar YYYY-MM-DD so vault_lint surfaces it; this also
|
|
118
|
+
// closes the gap where an out-of-range value like "2026-13-45" passed the
|
|
119
|
+
// bare regex unflagged. The index layer (insertDocument) does the
|
|
120
|
+
// normalize-or-empty so date-math consumers never see a poison string.
|
|
121
|
+
if (normalizeIsoDate(v) !== v) {
|
|
122
|
+
issues.push({ field, message: `expected YYYY-MM-DD date, got "${v}"` });
|
|
123
|
+
}
|
|
116
124
|
return v;
|
|
117
125
|
}
|
|
118
126
|
if (v === undefined || v === null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/frontmatter/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/frontmatter/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -29,7 +29,7 @@ import { directoryExists } from "./storage/local.js";
|
|
|
29
29
|
import { loadConfig } from "./utils/config.js";
|
|
30
30
|
// Kept in sync with package.json. Surfaced in the process lockfile for
|
|
31
31
|
// operator diagnostics. Bump both together on a release.
|
|
32
|
-
const DAFTARI_VERSION = "1.
|
|
32
|
+
const DAFTARI_VERSION = "1.28.0";
|
|
33
33
|
// Reads `--name value` or `--name=value` from argv; null if absent.
|
|
34
34
|
export function parseFlag(argv, name) {
|
|
35
35
|
const flag = `--${name}`;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type IndexDb } from "../storage/index-db.js";
|
|
2
|
+
import type { HybridHit } from "./hybrid.js";
|
|
3
|
+
export interface CoverageOptions {
|
|
4
|
+
enabled: boolean;
|
|
5
|
+
seedK: number;
|
|
6
|
+
maxAdd: number;
|
|
7
|
+
padDays: number;
|
|
8
|
+
maxSpanDays: number;
|
|
9
|
+
tokenCapChars: number;
|
|
10
|
+
}
|
|
11
|
+
export declare const DEFAULT_COVERAGE_OPTIONS: CoverageOptions;
|
|
12
|
+
export declare function detectSharedEntity(db: IndexDb, hits: HybridHit[], seedK: number): string | null;
|
|
13
|
+
export interface DateWindow {
|
|
14
|
+
start: string;
|
|
15
|
+
end: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function computeWindow(db: IndexDb, hits: HybridHit[], entity: string, opts: CoverageOptions): DateWindow | null;
|
|
18
|
+
export declare function applyCoveragePass(db: IndexDb, hits: HybridHit[], opts?: CoverageOptions): HybridHit[];
|
|
19
|
+
export declare function enforceTokenCap(hits: HybridHit[], opts: CoverageOptions): HybridHit[];
|
|
20
|
+
//# sourceMappingURL=coverage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/search/coverage.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,wBAAwB,EAAE,eAOtC,CAAC;AAMF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgB/F;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAuBD,wBAAgB,aAAa,CAC3B,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,SAAS,EAAE,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,eAAe,GACpB,UAAU,GAAG,IAAI,CAcnB;AA8CD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,SAAS,EAAE,EACjB,IAAI,GAAE,eAA0C,GAC/C,SAAS,EAAE,CAUb;AAMD,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,eAAe,GAAG,SAAS,EAAE,CAwBrF"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
// Coverage pass (Stage 1): conditionally widen vault_search results with
|
|
2
|
+
// same-entity docs in the seeds' date window. Pure over the index; never
|
|
3
|
+
// throws. Signals derive from the result set + frontmatter, never the query
|
|
4
|
+
// text (avoids the query-conditioning fidelity trap). Returns the hits
|
|
5
|
+
// unchanged when no signal fires.
|
|
6
|
+
import { getDocument, getDocumentsInDateRange, } from "../storage/index-db.js";
|
|
7
|
+
import { normalizeIsoDate } from "../utils/dates.js";
|
|
8
|
+
export const DEFAULT_COVERAGE_OPTIONS = {
|
|
9
|
+
enabled: true,
|
|
10
|
+
seedK: 3,
|
|
11
|
+
maxAdd: 5,
|
|
12
|
+
padDays: 7,
|
|
13
|
+
maxSpanDays: 90, // matches EDGE_HALF_LIFE_DAYS in curation/edges.ts
|
|
14
|
+
tokenCapChars: 6000,
|
|
15
|
+
};
|
|
16
|
+
// The dominant frontmatter tag shared by >=2 of the top-seedK hits. Reads tags
|
|
17
|
+
// from the index (HybridHit carries none). Highest seed-count wins; ties break
|
|
18
|
+
// alphabetically. Returns null when no tag is shared by >=2 seeds — that is the
|
|
19
|
+
// "this is a single-fact query, stay quiet" signal.
|
|
20
|
+
export function detectSharedEntity(db, hits, seedK) {
|
|
21
|
+
const counts = new Map();
|
|
22
|
+
for (const h of hits.slice(0, seedK)) {
|
|
23
|
+
const d = getDocument(db, h.path);
|
|
24
|
+
if (!d)
|
|
25
|
+
continue;
|
|
26
|
+
for (const tag of new Set(d.tags))
|
|
27
|
+
counts.set(tag, (counts.get(tag) ?? 0) + 1);
|
|
28
|
+
}
|
|
29
|
+
let best = null;
|
|
30
|
+
let bestN = 1; // require >=2
|
|
31
|
+
for (const [tag, n] of [...counts].sort((a, b) => a[0].localeCompare(b[0]))) {
|
|
32
|
+
if (n >= 2 && n > bestN) {
|
|
33
|
+
best = tag;
|
|
34
|
+
bestN = n;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return best;
|
|
38
|
+
}
|
|
39
|
+
// True only for a value already in strict, canonical, real-calendar ISO
|
|
40
|
+
// YYYY-MM-DD form. Defense-in-depth: insertDocument normalizes the index's date
|
|
41
|
+
// columns, so in practice this only ever sees canonical dates or "" — but the
|
|
42
|
+
// guard stays as an independent layer. Reuses the shared normalizer (a string is
|
|
43
|
+
// canonical iff normalizing it is a no-op) to avoid a second date-validation
|
|
44
|
+
// implementation that could drift.
|
|
45
|
+
function isValidIsoDate(s) {
|
|
46
|
+
return normalizeIsoDate(s) === s;
|
|
47
|
+
}
|
|
48
|
+
// Shifts an ISO YYYY-MM-DD date by `days` (may be negative). UTC-anchored so it
|
|
49
|
+
// is timezone-stable.
|
|
50
|
+
function shiftDays(iso, days) {
|
|
51
|
+
const d = new Date(`${iso}T00:00:00Z`);
|
|
52
|
+
d.setUTCDate(d.getUTCDate() + days);
|
|
53
|
+
return d.toISOString().slice(0, 10);
|
|
54
|
+
}
|
|
55
|
+
// The date window to gather over: the created-date span of the entity-bearing
|
|
56
|
+
// seeds, padded by padDays, with the end clamped to maxSpanDays from the start.
|
|
57
|
+
// Returns null when no entity-bearing seed carries a date.
|
|
58
|
+
export function computeWindow(db, hits, entity, opts) {
|
|
59
|
+
const dates = [];
|
|
60
|
+
for (const h of hits.slice(0, opts.seedK)) {
|
|
61
|
+
const d = getDocument(db, h.path);
|
|
62
|
+
if (d && d.tags.includes(entity) && d.created && isValidIsoDate(d.created))
|
|
63
|
+
dates.push(d.created);
|
|
64
|
+
}
|
|
65
|
+
if (dates.length === 0)
|
|
66
|
+
return null;
|
|
67
|
+
dates.sort();
|
|
68
|
+
const start = shiftDays(dates[0], -opts.padDays);
|
|
69
|
+
let end = shiftDays(dates[dates.length - 1], opts.padDays);
|
|
70
|
+
const maxEnd = shiftDays(start, opts.maxSpanDays);
|
|
71
|
+
if (end > maxEnd)
|
|
72
|
+
end = maxEnd;
|
|
73
|
+
return { start, end };
|
|
74
|
+
}
|
|
75
|
+
const COVERAGE_SNIPPET_MAX = 280; // mirrors current-source.ts previewSnippet
|
|
76
|
+
function coverageSnippet(content) {
|
|
77
|
+
const collapsed = content.replace(/\s+/g, " ").trim();
|
|
78
|
+
return collapsed.length > COVERAGE_SNIPPET_MAX
|
|
79
|
+
? `${collapsed.slice(0, COVERAGE_SNIPPET_MAX)}…`
|
|
80
|
+
: collapsed;
|
|
81
|
+
}
|
|
82
|
+
// Same-entity docs in the window, excluding ones already present, recency-first
|
|
83
|
+
// (current state matters), capped at maxAdd. The getDocumentsInDateRange call is
|
|
84
|
+
// the net-new date-range query.
|
|
85
|
+
function gatherCandidates(db, entity, window, excludePaths, opts) {
|
|
86
|
+
return getDocumentsInDateRange(db, window.start, window.end)
|
|
87
|
+
.filter((d) => d.tags.includes(entity) && !excludePaths.has(d.path))
|
|
88
|
+
.slice(0, opts.maxAdd); // already created-DESC, path-ASC from the query
|
|
89
|
+
}
|
|
90
|
+
// Builds an appended coverage hit. score 0 keeps it below ranked hits; the
|
|
91
|
+
// caller never re-sorts, so original relevance order is preserved.
|
|
92
|
+
function coverageHit(d) {
|
|
93
|
+
return {
|
|
94
|
+
path: d.path,
|
|
95
|
+
title: d.title,
|
|
96
|
+
collection: d.collection,
|
|
97
|
+
status: d.status,
|
|
98
|
+
score: 0,
|
|
99
|
+
bm25Score: 0,
|
|
100
|
+
vectorScore: 0,
|
|
101
|
+
snippet: coverageSnippet(d.content),
|
|
102
|
+
decay: null,
|
|
103
|
+
viaCoverage: true,
|
|
104
|
+
coverageReason: "entity-window",
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
// The Stage 1 coverage pass. Returns hits unchanged unless a shared entity (>=2
|
|
108
|
+
// seeds) + a date window + at least one new in-window same-entity doc all hold.
|
|
109
|
+
export function applyCoveragePass(db, hits, opts = DEFAULT_COVERAGE_OPTIONS) {
|
|
110
|
+
if (!opts.enabled || hits.length < 2)
|
|
111
|
+
return hits;
|
|
112
|
+
const entity = detectSharedEntity(db, hits, opts.seedK);
|
|
113
|
+
if (!entity)
|
|
114
|
+
return hits;
|
|
115
|
+
const window = computeWindow(db, hits, entity, opts);
|
|
116
|
+
if (!window)
|
|
117
|
+
return hits;
|
|
118
|
+
const exclude = new Set(hits.map((h) => h.path));
|
|
119
|
+
const added = gatherCandidates(db, entity, window, exclude, opts);
|
|
120
|
+
if (added.length === 0)
|
|
121
|
+
return hits;
|
|
122
|
+
return [...hits, ...added.map(coverageHit)];
|
|
123
|
+
}
|
|
124
|
+
// Deterministic backstop on the combined snippet size of coverage-added docs.
|
|
125
|
+
// Original ranked hits are never evicted (we never displace the caller's
|
|
126
|
+
// top-N). Among coverage docs, evict stale first (those SP-A flagged with a
|
|
127
|
+
// currentSource), then oldest, until the added snippet chars fit tokenCapChars.
|
|
128
|
+
export function enforceTokenCap(hits, opts) {
|
|
129
|
+
const original = hits.filter((h) => !h.viaCoverage);
|
|
130
|
+
const coverage = hits.filter((h) => h.viaCoverage);
|
|
131
|
+
if (coverage.length === 0)
|
|
132
|
+
return hits;
|
|
133
|
+
// Eviction priority: stale before fresh, then oldest first. The survivors are
|
|
134
|
+
// taken from the opposite end. Coverage docs arrive recency-first, so index
|
|
135
|
+
// order is newest→oldest; a stable sort by (fresh?0:1) puts stale last for the
|
|
136
|
+
// "drop from the end" loop below.
|
|
137
|
+
const ordered = [...coverage].sort((a, b) => {
|
|
138
|
+
const aStale = a.currentSource?.kind === "resolved" ? 1 : 0;
|
|
139
|
+
const bStale = b.currentSource?.kind === "resolved" ? 1 : 0;
|
|
140
|
+
return aStale - bStale; // fresh first, stale last; stable keeps recency within group
|
|
141
|
+
});
|
|
142
|
+
let used = ordered.reduce((n, h) => n + h.snippet.length, 0);
|
|
143
|
+
while (used > opts.tokenCapChars && ordered.length > 0) {
|
|
144
|
+
const dropped = ordered.pop(); // removes the last = stalest/oldest survivor
|
|
145
|
+
used -= dropped?.snippet.length ?? 0;
|
|
146
|
+
}
|
|
147
|
+
// Re-emit in the original arrival order, minus evicted coverage docs.
|
|
148
|
+
const keep = new Set(ordered.map((h) => h.path));
|
|
149
|
+
return [...original, ...coverage.filter((h) => keep.has(h.path))];
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=coverage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coverage.js","sourceRoot":"","sources":["../../src/search/coverage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type AccessContext } from "../access/rbac.js";
|
|
2
|
+
import { type IndexDb } from "../storage/index-db.js";
|
|
3
|
+
export type CurrentSource = {
|
|
4
|
+
kind: "resolved";
|
|
5
|
+
path: string;
|
|
6
|
+
title: string;
|
|
7
|
+
snippet: string;
|
|
8
|
+
hops: number;
|
|
9
|
+
} | {
|
|
10
|
+
kind: "restricted";
|
|
11
|
+
} | {
|
|
12
|
+
kind: "dangling";
|
|
13
|
+
brokenAt: string;
|
|
14
|
+
} | {
|
|
15
|
+
kind: "cycle";
|
|
16
|
+
};
|
|
17
|
+
export declare function resolveCurrentSource(db: IndexDb, stalePath: string, access?: AccessContext): CurrentSource | null;
|
|
18
|
+
//# sourceMappingURL=current-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-source.d.ts","sourceRoot":"","sources":["../../src/search/current-source.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,aAAa,EAAW,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAWnE,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChF;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtB,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,EACX,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,aAAa,GACrB,aAAa,GAAG,IAAI,CA8BtB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
//
|
|
2
|
+
// resolveCurrentSource — follow a document's `superseded_by` chain to the
|
|
3
|
+
// terminal-current source, for inline foregrounding in search results.
|
|
4
|
+
//
|
|
5
|
+
// daftari authors the RELATION (points at the current source), never the
|
|
6
|
+
// VALUE (the snippet is read verbatim from the successor's indexed content).
|
|
7
|
+
// Pure over the index; never throws. Returns null when the document is not
|
|
8
|
+
// superseded (nothing to foreground).
|
|
9
|
+
import { canRead } from "../access/rbac.js";
|
|
10
|
+
import { getDocument } from "../storage/index-db.js";
|
|
11
|
+
// A leading preview of the successor's body — the successor did not
|
|
12
|
+
// necessarily match the query, so there are no query terms to centre on.
|
|
13
|
+
// Mirrors hybrid.ts's no-hit snippet (collapse whitespace, cap length).
|
|
14
|
+
const PREVIEW_MAX = 280;
|
|
15
|
+
function previewSnippet(content) {
|
|
16
|
+
const collapsed = content.replace(/\s+/g, " ").trim();
|
|
17
|
+
return collapsed.length > PREVIEW_MAX ? `${collapsed.slice(0, PREVIEW_MAX)}…` : collapsed;
|
|
18
|
+
}
|
|
19
|
+
export function resolveCurrentSource(db, stalePath, access) {
|
|
20
|
+
let doc = getDocument(db, stalePath);
|
|
21
|
+
if (!doc || doc.supersededBy === null)
|
|
22
|
+
return null; // not superseded — nothing to foreground
|
|
23
|
+
const visited = new Set([doc.path]);
|
|
24
|
+
let hops = 0;
|
|
25
|
+
while (doc.supersededBy !== null) {
|
|
26
|
+
const nextPath = doc.supersededBy;
|
|
27
|
+
hops += 1;
|
|
28
|
+
if (visited.has(nextPath))
|
|
29
|
+
return { kind: "cycle" };
|
|
30
|
+
visited.add(nextPath);
|
|
31
|
+
const nextDoc = getDocument(db, nextPath);
|
|
32
|
+
if (!nextDoc)
|
|
33
|
+
return { kind: "dangling", brokenAt: doc.path };
|
|
34
|
+
// RBAC (strict): any unreadable hop, including the terminal head, degrades
|
|
35
|
+
// to a path-free marker. `access` undefined ⇒ RBAC unconfigured ⇒ readable.
|
|
36
|
+
if (access && !canRead(access.role, nextDoc.collection))
|
|
37
|
+
return { kind: "restricted" };
|
|
38
|
+
doc = nextDoc;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
kind: "resolved",
|
|
42
|
+
path: doc.path,
|
|
43
|
+
title: doc.title,
|
|
44
|
+
snippet: previewSnippet(doc.content),
|
|
45
|
+
hops,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=current-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-source.js","sourceRoot":"","sources":["../../src/search/current-source.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,0EAA0E;AAC1E,uEAAuE;AACvE,EAAE;AACF,yEAAyE;AACzE,6EAA6E;AAC7E,2EAA2E;AAC3E,sCAAsC;AAEtC,OAAO,EAAsB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;AAEnE,oEAAoE;AACpE,yEAAyE;AACzE,wEAAwE;AACxE,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,OAAO,SAAS,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC;AAQD,MAAM,UAAU,oBAAoB,CAClC,EAAW,EACX,SAAiB,EACjB,MAAsB;IAEtB,IAAI,GAAG,GAAG,WAAW,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,yCAAyC;IAE7F,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,IAAI,IAAI,GAAG,CAAC,CAAC;IAEb,OAAO,GAAG,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC;QAClC,IAAI,IAAI,CAAC,CAAC;QACV,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtB,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QAE9D,2EAA2E;QAC3E,4EAA4E;QAC5E,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;QAEvF,GAAG,GAAG,OAAO,CAAC;IAChB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QACpC,IAAI;KACL,CAAC;AACJ,CAAC"}
|
package/dist/search/hybrid.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type DecayState } from "../curation/decay.js";
|
|
2
2
|
import { type Result } from "../frontmatter/types.js";
|
|
3
3
|
import { type IndexDb } from "../storage/index-db.js";
|
|
4
|
+
import type { CurrentSource } from "./current-source.js";
|
|
4
5
|
export interface HybridWeights {
|
|
5
6
|
bm25: number;
|
|
6
7
|
vector: number;
|
|
@@ -16,6 +17,9 @@ export interface HybridHit {
|
|
|
16
17
|
vectorScore: number;
|
|
17
18
|
snippet: string;
|
|
18
19
|
decay: DecayState | null;
|
|
20
|
+
currentSource?: CurrentSource;
|
|
21
|
+
viaCoverage?: boolean;
|
|
22
|
+
coverageReason?: "edge" | "entity-window";
|
|
19
23
|
}
|
|
20
24
|
export interface HybridSearchResult {
|
|
21
25
|
query: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid.d.ts","sourceRoot":"","sources":["../../src/search/hybrid.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAM,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAKL,KAAK,OAAO,EACb,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"hybrid.d.ts","sourceRoot":"","sources":["../../src/search/hybrid.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAM,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAKL,KAAK,OAAO,EACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,eAAe,EAAE,aAA0C,CAAC;AAEzE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC;CAC3C;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAoLD,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,wBAAsB,YAAY,CAChC,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAsB5C;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,SAAS,EAAE,CAAC;CACnB;AAOD,wBAAgB,aAAa,CAC3B,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAAC,mBAAmB,EAAE,KAAK,CAAC,CA2CpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid.js","sourceRoot":"","sources":["../../src/search/hybrid.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,WAAW;AACX,EAAE;AACF,kCAAkC;AAClC,yEAAyE;AACzE,0CAA0C;AAC1C,4EAA4E;AAC5E,yEAAyE;AACzE,sBAAsB;AACtB,EAAE;AACF,sEAAsE;AACtE,2EAA2E;AAC3E,wDAAwD;AACxD,EAAE;AACF,wEAAwE;AACxE,wEAAwE;AACxE,kEAAkE;AAElE,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,EAAE,EAAe,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,WAAW,GAEZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"hybrid.js","sourceRoot":"","sources":["../../src/search/hybrid.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,7 @@ export declare function insertEmbedding(db: IndexDb, contentHash: string, model:
|
|
|
44
44
|
export declare function gcOrphanedEmbeddings(db: IndexDb): number;
|
|
45
45
|
export declare function setMeta(db: IndexDb, key: string, value: string): void;
|
|
46
46
|
export declare function getAllDocuments(db: IndexDb): IndexedDocument[];
|
|
47
|
+
export declare function getDocumentsInDateRange(db: IndexDb, start: string, end: string): IndexedDocument[];
|
|
47
48
|
export declare function getDocument(db: IndexDb, path: string): IndexedDocument | null;
|
|
48
49
|
export declare function getAllChunks(db: IndexDb, model: string, expectedDim?: number): IndexedChunk[];
|
|
49
50
|
export declare function getChunksForPath(db: IndexDb, path: string, model: string, expectedDim?: number): IndexedChunk[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-db.d.ts","sourceRoot":"","sources":["../../src/storage/index-db.ts"],"names":[],"mappings":"AAwCA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index-db.d.ts","sourceRoot":"","sources":["../../src/storage/index-db.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/index-db.js
CHANGED
|
@@ -40,6 +40,7 @@ import { join } from "node:path";
|
|
|
40
40
|
import Database from "better-sqlite3";
|
|
41
41
|
import * as sqliteVec from "sqlite-vec";
|
|
42
42
|
import { err, ok } from "../frontmatter/types.js";
|
|
43
|
+
import { normalizeIsoDate } from "../utils/dates.js";
|
|
43
44
|
// Bumped 4 → 5 to add FTS5 (`documents_fts`) and sqlite-vec (`embeddings_vec`)
|
|
44
45
|
// virtual tables for SQL-native search. The index is a derived cache so the
|
|
45
46
|
// bump triggers a clean rebuild (see openIndexDb); no in-place migration.
|
|
@@ -74,6 +75,7 @@ CREATE TABLE IF NOT EXISTS documents (
|
|
|
74
75
|
created TEXT NOT NULL DEFAULT '',
|
|
75
76
|
superseded_by TEXT
|
|
76
77
|
);
|
|
78
|
+
CREATE INDEX IF NOT EXISTS idx_documents_created ON documents(created);
|
|
77
79
|
CREATE TABLE IF NOT EXISTS chunks (
|
|
78
80
|
path TEXT NOT NULL,
|
|
79
81
|
chunk_index INTEGER NOT NULL,
|
|
@@ -367,6 +369,14 @@ export function blobToEmbedding(blob) {
|
|
|
367
369
|
}
|
|
368
370
|
// --- writes ----------------------------------------------------------------
|
|
369
371
|
export function insertDocument(db, doc) {
|
|
372
|
+
// Normalize the date columns to canonical YYYY-MM-DD, or "" when the value is
|
|
373
|
+
// not a real ISO date. The index is a derived cache, so cleaning here keeps a
|
|
374
|
+
// malformed `created`/`updated` (which the frontmatter layer preserves raw on
|
|
375
|
+
// disk, #113) from poisoning date-math consumers — getDocumentsInDateRange,
|
|
376
|
+
// the coverage window, decay — without ever rewriting the source file. "" is
|
|
377
|
+
// the established "undateable" sentinel the date readers already handle.
|
|
378
|
+
const created = normalizeIsoDate(doc.created) ?? "";
|
|
379
|
+
const updated = normalizeIsoDate(doc.updated) ?? "";
|
|
370
380
|
// ON CONFLICT(path) DO UPDATE (rather than INSERT OR REPLACE) is required
|
|
371
381
|
// so the AFTER UPDATE trigger on `documents` fires and keeps
|
|
372
382
|
// `documents_fts` in sync. SQLite's OR REPLACE conflict resolution does
|
|
@@ -389,7 +399,7 @@ export function insertDocument(db, doc) {
|
|
|
389
399
|
tokens = excluded.tokens,
|
|
390
400
|
ttl_days = excluded.ttl_days,
|
|
391
401
|
created = excluded.created,
|
|
392
|
-
superseded_by = excluded.superseded_by`).run(doc.path, doc.title, doc.collection, doc.domain, doc.status, doc.confidence,
|
|
402
|
+
superseded_by = excluded.superseded_by`).run(doc.path, doc.title, doc.collection, doc.domain, doc.status, doc.confidence, updated, JSON.stringify(doc.tags), doc.content, JSON.stringify(doc.tokens), doc.ttlDays, created, doc.supersededBy);
|
|
393
403
|
}
|
|
394
404
|
export function insertChunkRow(db, chunk) {
|
|
395
405
|
db.prepare(`INSERT OR REPLACE INTO chunks (path, chunk_index, text, content_hash)
|
|
@@ -479,6 +489,18 @@ export function getAllDocuments(db) {
|
|
|
479
489
|
const rows = db.prepare("SELECT * FROM documents ORDER BY path").all();
|
|
480
490
|
return rows.map(rowToDocument);
|
|
481
491
|
}
|
|
492
|
+
// Documents whose `created` date falls within [start, end] inclusive, ordered
|
|
493
|
+
// most-recent first (ties by path for determinism). Undateable docs (empty
|
|
494
|
+
// `created`) are excluded. ISO dates sort lexically so string comparison is a
|
|
495
|
+
// valid date range. Backs the coverage pass's date-window pull.
|
|
496
|
+
export function getDocumentsInDateRange(db, start, end) {
|
|
497
|
+
const rows = db
|
|
498
|
+
.prepare(`SELECT * FROM documents
|
|
499
|
+
WHERE created != '' AND created >= ? AND created <= ?
|
|
500
|
+
ORDER BY created DESC, path ASC`)
|
|
501
|
+
.all(start, end);
|
|
502
|
+
return rows.map(rowToDocument);
|
|
503
|
+
}
|
|
482
504
|
export function getDocument(db, path) {
|
|
483
505
|
const row = db.prepare("SELECT * FROM documents WHERE path = ?").get(path);
|
|
484
506
|
return row ? rowToDocument(row) : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-db.js","sourceRoot":"","sources":["../../src/storage/index-db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-db.js","sourceRoot":"","sources":["../../src/storage/index-db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,aAAa,EAAW,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,aAAa,EAAW,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAO/D,OAAO,EAEL,KAAK,kBAAkB,EAGvB,KAAK,mBAAmB,EAEzB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAiB,KAAK,OAAO,EAAe,MAAM,wBAAwB,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAShD,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAEpF;AAgBD,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAsBtF;AA+BD,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAyD5C;AAMD,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC,CA2B7C;AAMD,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAiBhG;AAgBD,eAAO,MAAM,WAAW,EAAE,cAAc,EAoEvC,CAAC"}
|
package/dist/tools/search.js
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
// reindex first, so search works without an explicit setup step.
|
|
8
8
|
import { canRead } from "../access/rbac.js";
|
|
9
9
|
import { err, ok } from "../frontmatter/types.js";
|
|
10
|
+
import { applyCoveragePass, DEFAULT_COVERAGE_OPTIONS, enforceTokenCap, } from "../search/coverage.js";
|
|
11
|
+
import { resolveCurrentSource } from "../search/current-source.js";
|
|
10
12
|
import { DEFAULT_WEIGHTS, hybridSearch, relatedSearch, } from "../search/hybrid.js";
|
|
11
13
|
import { getIndexStatus, indexingBusyMessage, markIndexError, markIndexing, markIndexReady, onceIndexReady, } from "../search/index-state.js";
|
|
12
14
|
import { reindexVault } from "../search/reindex.js";
|
|
@@ -104,11 +106,37 @@ export async function vaultSearch(vaultRoot, args, access) {
|
|
|
104
106
|
weights: parseWeights(args.weights),
|
|
105
107
|
limit: parseLimit(args.limit),
|
|
106
108
|
});
|
|
107
|
-
if (!result.ok
|
|
109
|
+
if (!result.ok)
|
|
108
110
|
return result;
|
|
109
|
-
// RBAC: drop hits in collections the role cannot read
|
|
110
|
-
|
|
111
|
-
|
|
111
|
+
// RBAC: drop hits in collections the role cannot read (only when an access
|
|
112
|
+
// context is present). Enrichment then runs on the surviving hits.
|
|
113
|
+
const ranked = access
|
|
114
|
+
? result.value.hits.filter((h) => canRead(access.role, h.collection))
|
|
115
|
+
: result.value.hits;
|
|
116
|
+
// Coverage pass: conditionally widen the ranked set with same-entity docs in
|
|
117
|
+
// the seeds' date window. Quiet (returns `ranked` unchanged) when no signal
|
|
118
|
+
// fires. RBAC-filter the added docs identically — a coverage pull must never
|
|
119
|
+
// surface a doc the caller could not retrieve directly.
|
|
120
|
+
const widened = applyCoveragePass(db, ranked, DEFAULT_COVERAGE_OPTIONS);
|
|
121
|
+
const permitted = access
|
|
122
|
+
? widened.filter((h) => (h.viaCoverage ? canRead(access.role, h.collection) : true))
|
|
123
|
+
: widened;
|
|
124
|
+
// Foreground the current source for any hit (ranked OR coverage-added) that
|
|
125
|
+
// points at a successor. Additive and lossless. Do NOT gate this on
|
|
126
|
+
// hit.status === "superseded": a deprecated doc can also carry a
|
|
127
|
+
// superseded_by successor (set by vault_deprecate), so we key on the pointer
|
|
128
|
+
// (inside resolveCurrentSource), not the status string. The resolver no-ops
|
|
129
|
+
// for hits with no successor. This is the suppression lever composing with
|
|
130
|
+
// the coverage recall lever.
|
|
131
|
+
for (const hit of permitted) {
|
|
132
|
+
const cs = resolveCurrentSource(db, hit.path, access);
|
|
133
|
+
if (cs)
|
|
134
|
+
hit.currentSource = cs;
|
|
135
|
+
}
|
|
136
|
+
// Token-cap backstop: evict coverage-added docs (stale first, then oldest) if
|
|
137
|
+
// their combined snippets exceed the budget. Never drops ranked hits.
|
|
138
|
+
const capped = enforceTokenCap(permitted, DEFAULT_COVERAGE_OPTIONS);
|
|
139
|
+
return ok({ ...result.value, count: capped.length, hits: capped });
|
|
112
140
|
}
|
|
113
141
|
finally {
|
|
114
142
|
db.close();
|
package/dist/tools/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,EAAE;AACF,wEAAwE;AACxE,4EAA4E;AAC5E,+EAA+E;AAC/E,2EAA2E;AAC3E,iEAAiE;AAEjE,OAAO,EAAsB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAe,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,eAAe,EAGf,YAAY,EAEZ,aAAa,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAsB,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAgB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGlF,uEAAuE;AACvE,uEAAuE;AACvE,sEAAsE;AACtE,+CAA+C;AAC/C,EAAE;AACF,qEAAqE;AACrE,uBAAuB;AACvB,MAAM,UAAU,0BAA0B,CAAC,SAAiB;IAC1D,OAAO,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,8DAA8D;AAC9D,EAAE;AACF,4EAA4E;AAC5E,oEAAoE;AACpE,wEAAwE;AACxE,yDAAyD;AACzD,0EAA0E;AAC1E,wEAAwE;AACxE,2EAA2E;AAC3E,oEAAoE;AACpE,oBAAoB;AACpB,EAAE;AACF,qEAAqE;AACrE,kBAAkB;AAClB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,SAAiB;IACtD,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,kCAAkC,MAAM,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAClC,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClD,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACvB,IAAI,KAAK,EAAE,CAAC;QACV,YAAY,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;YAClB,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,cAAc,EAAE,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,GAA8B,CAAC;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,IACE,OAAO,IAAI,KAAK,QAAQ;YACxB,OAAO,MAAM,KAAK,QAAQ;YAC1B,IAAI,IAAI,CAAC;YACT,MAAM,IAAI,CAAC;YACX,IAAI,GAAG,MAAM,GAAG,CAAC,EACjB,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,oDAAoD,CAAC;SACvE,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAE5B,MAAM,QAAQ,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAClC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE;YAC3C,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,MAAM,CAAC;QAE9B,2EAA2E;QAC3E,mEAAmE;QACnE,MAAM,MAAM,GAAG,MAAM;YACnB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;YACrE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAEtB,6EAA6E;QAC7E,4EAA4E;QAC5E,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,MAAM;YACtB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACpF,CAAC,CAAC,OAAO,CAAC;QAEZ,4EAA4E;QAC5E,oEAAoE;QACpE,iEAAiE;QACjE,6EAA6E;QAC7E,4EAA4E;QAC5E,2EAA2E;QAC3E,6BAA6B;QAC7B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,EAAE,GAAG,oBAAoB,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACtD,IAAI,EAAE;gBAAE,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;QACjC,CAAC;QAED,8EAA8E;QAC9E,sEAAsE;QACtE,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QAEpE,OAAO,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACrE,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB,EACjB,IAA6B,EAC7B,MAAsB;IAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,2DAA2D,CAAC;SAC9E,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAE5B,MAAM,QAAQ,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC;IAClC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE;YACrC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM;YAAE,OAAO,MAAM,CAAC;QACzC,+DAA+D;QAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QACjF,OAAO,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB;IAClD,oEAAoE;IACpE,2EAA2E;IAC3E,oEAAoE;IACpE,qEAAqE;IACrE,+DAA+D;IAC/D,IAAI,cAAc,EAAE,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,YAAY,EAAE,CAAC;IACf,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,cAAc,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kEAAkE;IAC/E,UAAU,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;QACpE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;KAC1E;IACD,oBAAoB,EAAE,KAAK;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C;QACE,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;QACnC,WAAW,EACT,qEAAqE;YACrE,sEAAsE;YACtE,mEAAmE;QACrE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;gBAChE,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,OAAO,EAAE,aAAa;aACvB;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAC3E;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;QACnC,WAAW,EACT,8DAA8D;YAC9D,uEAAuE;YACvE,+DAA+D;QACjE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+CAA+C;iBAC7D;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,OAAO,EAAE,aAAa;aACvB;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;KAClF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,sBAAsB;QAC7B,mEAAmE;QACnE,kEAAkE;QAClE,4BAA4B;QAC5B,WAAW,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE;QAC7D,WAAW,EACT,sEAAsE;YACtE,oEAAoE;YACpE,6DAA6D;QAC/D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;KAChD;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAQA,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOzD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Date helpers shared across the frontmatter and index layers.
|
|
2
|
+
// Normalizes an ISO-shaped date string to canonical YYYY-MM-DD, or returns null
|
|
3
|
+
// if it is not an unambiguous, real calendar date. Conservative by design: it
|
|
4
|
+
// only recovers the missing-zero-pad case (e.g. "2026-3-1" -> "2026-03-01") and
|
|
5
|
+
// rejects everything else (slash/textual formats, out-of-range like "2026-13-45",
|
|
6
|
+
// rollover non-days like "2026-02-30"). The round-trip equality check catches
|
|
7
|
+
// values that `new Date` would silently roll over rather than reject.
|
|
8
|
+
export function normalizeIsoDate(s) {
|
|
9
|
+
const m = /^(\d{4})-(\d{1,2})-(\d{1,2})$/.exec(s);
|
|
10
|
+
if (!m)
|
|
11
|
+
return null;
|
|
12
|
+
const candidate = `${m[1]}-${m[2].padStart(2, "0")}-${m[3].padStart(2, "0")}`;
|
|
13
|
+
const d = new Date(`${candidate}T00:00:00Z`);
|
|
14
|
+
if (Number.isNaN(d.getTime()) || d.toISOString().slice(0, 10) !== candidate)
|
|
15
|
+
return null;
|
|
16
|
+
return candidate;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=dates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dates.js","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAE/D,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,kFAAkF;AAClF,8EAA8E;AAC9E,sEAAsE;AACtE,MAAM,UAAU,gBAAgB,CAAC,CAAS;IACxC,MAAM,CAAC,GAAG,+BAA+B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC9E,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,SAAS,YAAY,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACzF,OAAO,SAAS,CAAC;AACnB,CAAC"}
|