@context-vault/core 2.17.1 → 3.0.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/dist/capture.d.ts +21 -0
- package/dist/capture.d.ts.map +1 -0
- package/dist/capture.js +269 -0
- package/dist/capture.js.map +1 -0
- package/dist/categories.d.ts +6 -0
- package/dist/categories.d.ts.map +1 -0
- package/dist/categories.js +50 -0
- package/dist/categories.js.map +1 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +190 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts +33 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +23 -0
- package/dist/constants.js.map +1 -0
- package/dist/db.d.ts +13 -0
- package/dist/db.d.ts.map +1 -0
- package/dist/db.js +191 -0
- package/dist/db.js.map +1 -0
- package/dist/embed.d.ts +5 -0
- package/dist/embed.d.ts.map +1 -0
- package/dist/embed.js +78 -0
- package/dist/embed.js.map +1 -0
- package/dist/files.d.ts +13 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js +66 -0
- package/dist/files.js.map +1 -0
- package/dist/formatters.d.ts +8 -0
- package/dist/formatters.d.ts.map +1 -0
- package/dist/formatters.js +18 -0
- package/dist/formatters.js.map +1 -0
- package/dist/frontmatter.d.ts +12 -0
- package/dist/frontmatter.d.ts.map +1 -0
- package/dist/frontmatter.js +101 -0
- package/dist/frontmatter.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +297 -0
- package/dist/index.js.map +1 -0
- package/dist/ingest-url.d.ts +20 -0
- package/dist/ingest-url.d.ts.map +1 -0
- package/dist/ingest-url.js +113 -0
- package/dist/ingest-url.js.map +1 -0
- package/dist/main.d.ts +14 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +25 -0
- package/dist/main.js.map +1 -0
- package/dist/search.d.ts +18 -0
- package/dist/search.d.ts.map +1 -0
- package/dist/search.js +238 -0
- package/dist/search.js.map +1 -0
- package/dist/types.d.ts +176 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +66 -16
- package/src/capture.ts +308 -0
- package/src/categories.ts +54 -0
- package/src/{core/config.js → config.ts} +34 -33
- package/src/{constants.js → constants.ts} +6 -3
- package/src/db.ts +229 -0
- package/src/{index/embed.js → embed.ts} +10 -35
- package/src/{core/files.js → files.ts} +15 -20
- package/src/{capture/formatters.js → formatters.ts} +13 -11
- package/src/{core/frontmatter.js → frontmatter.ts} +26 -33
- package/src/index.ts +351 -0
- package/src/ingest-url.ts +99 -0
- package/src/main.ts +111 -0
- package/src/{retrieve/index.js → search.ts} +62 -150
- package/src/types.ts +166 -0
- package/src/capture/file-ops.js +0 -99
- package/src/capture/import-pipeline.js +0 -46
- package/src/capture/importers.js +0 -387
- package/src/capture/index.js +0 -250
- package/src/capture/ingest-url.js +0 -252
- package/src/consolidation/index.js +0 -112
- package/src/core/categories.js +0 -73
- package/src/core/error-log.js +0 -54
- package/src/core/linking.js +0 -161
- package/src/core/migrate-dirs.js +0 -196
- package/src/core/status.js +0 -350
- package/src/core/telemetry.js +0 -90
- package/src/core/temporal.js +0 -146
- package/src/index/db.js +0 -586
- package/src/index/index.js +0 -583
- package/src/index.js +0 -71
- package/src/server/helpers.js +0 -44
- package/src/server/tools/clear-context.js +0 -47
- package/src/server/tools/context-status.js +0 -182
- package/src/server/tools/create-snapshot.js +0 -200
- package/src/server/tools/delete-context.js +0 -60
- package/src/server/tools/get-context.js +0 -765
- package/src/server/tools/ingest-project.js +0 -244
- package/src/server/tools/ingest-url.js +0 -88
- package/src/server/tools/list-buckets.js +0 -116
- package/src/server/tools/list-context.js +0 -163
- package/src/server/tools/save-context.js +0 -632
- package/src/server/tools/session-start.js +0 -285
- package/src/server/tools.js +0 -172
- package/src/sync/sync.js +0 -235
package/src/core/temporal.js
DELETED
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Temporal shortcut resolver.
|
|
3
|
-
*
|
|
4
|
-
* Converts natural-language time expressions to ISO date strings.
|
|
5
|
-
* Fully pure — accepts an explicit `now` Date for deterministic testing.
|
|
6
|
-
*
|
|
7
|
-
* Supported shortcuts (case-insensitive, spaces or underscores):
|
|
8
|
-
* today → start of today (00:00:00 local midnight in UTC)
|
|
9
|
-
* yesterday → { since: start of yesterday, until: end of yesterday }
|
|
10
|
-
* this_week → start of current ISO week (Monday 00:00)
|
|
11
|
-
* last_N_days → N days ago (e.g. last_3_days, last 7 days)
|
|
12
|
-
* last_N_weeks → N weeks ago
|
|
13
|
-
* last_N_months → N calendar months ago (approximate: N × 30 days)
|
|
14
|
-
*
|
|
15
|
-
* Anything that doesn't match a shortcut is returned unchanged so that ISO
|
|
16
|
-
* date strings pass straight through without modification.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
const SHORTCUT_RE = /^last[_ ](\d+)[_ ](day|days|week|weeks|month|months)$/i;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Start of today in UTC (i.e. the midnight boundary at which the local date begins,
|
|
23
|
-
* expressed as an ISO string). We operate in UTC throughout so tests are portable.
|
|
24
|
-
*
|
|
25
|
-
* @param {Date} now
|
|
26
|
-
* @returns {Date}
|
|
27
|
-
*/
|
|
28
|
-
function startOfToday(now) {
|
|
29
|
-
const d = new Date(now);
|
|
30
|
-
d.setUTCHours(0, 0, 0, 0);
|
|
31
|
-
return d;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Resolve a single temporal expression to one or two ISO date strings.
|
|
36
|
-
*
|
|
37
|
-
* @param {"since"|"until"} role - Which parameter we are resolving.
|
|
38
|
-
* @param {string} value - Raw parameter value from the caller.
|
|
39
|
-
* @param {Date} [now] - Override for "now" (defaults to `new Date()`).
|
|
40
|
-
* @returns {string} - Resolved ISO date string (or original value if unrecognised).
|
|
41
|
-
*/
|
|
42
|
-
export function resolveTemporalShortcut(role, value, now = new Date()) {
|
|
43
|
-
if (!value || typeof value !== "string") return value;
|
|
44
|
-
|
|
45
|
-
const trimmed = value.trim().toLowerCase().replace(/\s+/g, "_");
|
|
46
|
-
|
|
47
|
-
if (trimmed === "today") {
|
|
48
|
-
const start = startOfToday(now);
|
|
49
|
-
if (role === "until") {
|
|
50
|
-
// "until today" means up to end-of-today
|
|
51
|
-
const end = new Date(start);
|
|
52
|
-
end.setUTCDate(end.getUTCDate() + 1);
|
|
53
|
-
return end.toISOString();
|
|
54
|
-
}
|
|
55
|
-
return start.toISOString();
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
if (trimmed === "yesterday") {
|
|
59
|
-
const todayStart = startOfToday(now);
|
|
60
|
-
const yesterdayStart = new Date(todayStart);
|
|
61
|
-
yesterdayStart.setUTCDate(yesterdayStart.getUTCDate() - 1);
|
|
62
|
-
if (role === "since") return yesterdayStart.toISOString();
|
|
63
|
-
// role === "until": end of yesterday = start of today
|
|
64
|
-
return todayStart.toISOString();
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
if (trimmed === "this_week") {
|
|
68
|
-
// Monday 00:00 UTC of the current week
|
|
69
|
-
const todayStart = startOfToday(now);
|
|
70
|
-
const dayOfWeek = todayStart.getUTCDay(); // 0=Sun, 1=Mon, ..., 6=Sat
|
|
71
|
-
const daysFromMonday = (dayOfWeek + 6) % 7; // 0 on Monday
|
|
72
|
-
const monday = new Date(todayStart);
|
|
73
|
-
monday.setUTCDate(monday.getUTCDate() - daysFromMonday);
|
|
74
|
-
if (role === "since") return monday.toISOString();
|
|
75
|
-
// "until this_week" means up to now (end of today)
|
|
76
|
-
const endOfToday = new Date(todayStart);
|
|
77
|
-
endOfToday.setUTCDate(endOfToday.getUTCDate() + 1);
|
|
78
|
-
return endOfToday.toISOString();
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
if (trimmed === "this_month") {
|
|
82
|
-
const d = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), 1));
|
|
83
|
-
if (role === "since") return d.toISOString();
|
|
84
|
-
const endOfMonth = new Date(
|
|
85
|
-
Date.UTC(now.getUTCFullYear(), now.getUTCMonth() + 1, 1),
|
|
86
|
-
);
|
|
87
|
-
return endOfMonth.toISOString();
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
const m = SHORTCUT_RE.exec(trimmed);
|
|
91
|
-
if (m) {
|
|
92
|
-
const n = parseInt(m[1], 10);
|
|
93
|
-
const unit = m[2].replace(/s$/, ""); // normalise plural → singular
|
|
94
|
-
let ms;
|
|
95
|
-
if (unit === "day") {
|
|
96
|
-
ms = n * 86400000;
|
|
97
|
-
} else if (unit === "week") {
|
|
98
|
-
ms = n * 7 * 86400000;
|
|
99
|
-
} else {
|
|
100
|
-
// month → approximate as 30 days
|
|
101
|
-
ms = n * 30 * 86400000;
|
|
102
|
-
}
|
|
103
|
-
const target = new Date(now.getTime() - ms);
|
|
104
|
-
target.setUTCHours(0, 0, 0, 0);
|
|
105
|
-
return target.toISOString();
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
// Unrecognised — pass through unchanged (ISO dates, empty strings, etc.)
|
|
109
|
-
return value;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Resolve both `since` and `until` parameters, handling the special case where
|
|
114
|
-
* "yesterday" sets both bounds automatically when only `since` is specified.
|
|
115
|
-
*
|
|
116
|
-
* Returns `{ since, until }` with resolved ISO strings (or originals).
|
|
117
|
-
*
|
|
118
|
-
* @param {{ since?: string, until?: string }} params
|
|
119
|
-
* @param {Date} [now]
|
|
120
|
-
* @returns {{ since: string|undefined, until: string|undefined }}
|
|
121
|
-
*/
|
|
122
|
-
export function resolveTemporalParams(params, now = new Date()) {
|
|
123
|
-
let { since, until } = params;
|
|
124
|
-
|
|
125
|
-
// Special case: "yesterday" on `since` without an explicit `until`
|
|
126
|
-
// auto-fills `until` to the end of yesterday.
|
|
127
|
-
if (
|
|
128
|
-
since?.trim().toLowerCase() === "yesterday" &&
|
|
129
|
-
(until === undefined || until === null)
|
|
130
|
-
) {
|
|
131
|
-
since = resolveTemporalShortcut("since", since, now);
|
|
132
|
-
until = resolveTemporalShortcut("until", "yesterday", now);
|
|
133
|
-
return { since, until };
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
return {
|
|
137
|
-
since:
|
|
138
|
-
since !== undefined
|
|
139
|
-
? resolveTemporalShortcut("since", since, now)
|
|
140
|
-
: since,
|
|
141
|
-
until:
|
|
142
|
-
until !== undefined
|
|
143
|
-
? resolveTemporalShortcut("until", until, now)
|
|
144
|
-
: until,
|
|
145
|
-
};
|
|
146
|
-
}
|