@vforsh/argus-watcher 0.1.16 → 0.2.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.
@@ -1,4 +1,4 @@
1
- import type { LogEvent, LogLevel } from '@vforsh/argus-core';
1
+ import type { LogEpoch, LogEvent, LogLevel } from '@vforsh/argus-core';
2
2
  /**
3
3
  * Filtering options for log retrieval.
4
4
  *
@@ -24,21 +24,43 @@ export type LogFilters = {
24
24
  */
25
25
  sinceTs?: number;
26
26
  };
27
+ /** Error raised when an opaque log epoch cannot be used for this buffer. */
28
+ export declare class LogEpochError extends Error {
29
+ readonly code: 'invalid' | 'mismatch' | 'future' | 'evicted';
30
+ constructor(code: LogEpochError['code'], message: string);
31
+ }
32
+ /** Result of a bounded query made from an opaque log epoch. */
33
+ export type LogEpochQueryResult = {
34
+ events: LogEvent[];
35
+ nextCursor: LogEpoch;
36
+ };
27
37
  /** In-memory ring buffer for log events with long-poll waiters. */
28
38
  export declare class LogBuffer {
29
39
  private readonly maxSize;
40
+ private readonly streamId;
30
41
  private events;
31
42
  private nextId;
32
43
  private waiters;
44
+ private epochWaiters;
33
45
  constructor(maxSize: number);
34
46
  /** Add a log event and return the stored entry with id. */
35
47
  add(event: Omit<LogEvent, 'id'>): LogEvent;
36
48
  /** List events after the given id, respecting filters and limit. */
37
49
  listAfter(after: number, filters: LogFilters, limit: number): LogEvent[];
38
- /** Return the current append cursor without copying buffered events. */
39
- getCursor(): number;
50
+ /** Return the current opaque append cursor without copying buffered events. */
51
+ getCursor(): LogEpoch;
52
+ /** Return an opaque position in this watcher's current log stream. */
53
+ beginLogEpoch(): LogEpoch;
54
+ /** Alias for {@link beginLogEpoch}; names the returned value as a cursor. */
55
+ getEpoch(): LogEpoch;
56
+ /** Encode a known stream position for response pagination. */
57
+ getEpochAt(position: number): LogEpoch;
58
+ /** List events after an epoch, failing instead of silently returning a partial delta. */
59
+ listAfterEpoch(epoch: LogEpoch, filters: LogFilters, limit: number): LogEpochQueryResult;
40
60
  /** Wait for events after an id or timeout. */
41
61
  waitForAfter(after: number, filters: LogFilters, limit: number, timeoutMs: number): Promise<LogEvent[]>;
62
+ /** Wait for events after an epoch, rejecting if the marker becomes stale while waiting. */
63
+ waitForAfterEpoch(epoch: LogEpoch, filters: LogFilters, limit: number, timeoutMs: number): Promise<LogEpochQueryResult>;
42
64
  /** Get buffer size and id boundaries. */
43
65
  getStats(): {
44
66
  size: number;
@@ -48,5 +70,10 @@ export declare class LogBuffer {
48
70
  };
49
71
  private trim;
50
72
  private flushWaiters;
73
+ private flushEpochWaiters;
74
+ private listAfterPosition;
75
+ private resolveEpoch;
76
+ private validatePosition;
77
+ private currentPosition;
51
78
  }
52
79
  //# sourceMappingURL=LogBuffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LogBuffer.d.ts","sourceRoot":"","sources":["../../src/buffer/LogBuffer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE5D;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACxB,sEAAsE;IACtE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;IAEnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAUD,mEAAmE;AACnE,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,OAAO,CAAe;gBAElB,OAAO,EAAE,MAAM;IAI3B,2DAA2D;IAC3D,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,QAAQ;IAW1C,oEAAoE;IACpE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAKxE,wEAAwE;IACxE,SAAS,IAAI,MAAM;IAInB,8CAA8C;IAC9C,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAgBvG,yCAAyC;IACzC,QAAQ,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAavF,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,YAAY;CAiBpB"}
1
+ {"version":3,"file":"LogBuffer.d.ts","sourceRoot":"","sources":["../../src/buffer/LogBuffer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAEtE;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACxB,sEAAsE;IACtE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;IAEnB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAmBD,4EAA4E;AAC5E,qBAAa,aAAc,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAA;gBAEhD,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM;CAKxD;AAED,+DAA+D;AAC/D,MAAM,MAAM,mBAAmB,GAAG;IACjC,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,UAAU,EAAE,QAAQ,CAAA;CACpB,CAAA;AAUD,mEAAmE;AACnE,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,YAAY,CAAoB;gBAE5B,OAAO,EAAE,MAAM;IAI3B,2DAA2D;IAC3D,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,QAAQ;IAY1C,oEAAoE;IACpE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAIxE,+EAA+E;IAC/E,SAAS,IAAI,QAAQ;IAIrB,sEAAsE;IACtE,aAAa,IAAI,QAAQ;IAIzB,6EAA6E;IAC7E,QAAQ,IAAI,QAAQ;IAIpB,8DAA8D;IAC9D,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAItC,yFAAyF;IACzF,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,mBAAmB;IASxF,8CAA8C;IAC9C,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAgBvG,2FAA2F;IACrF,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiB7H,yCAAyC;IACzC,QAAQ,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAavF,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,iBAAiB;IA6BzB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;CAGvB"}
@@ -1,9 +1,22 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ /** Error raised when an opaque log epoch cannot be used for this buffer. */
3
+ export class LogEpochError extends Error {
4
+ code;
5
+ constructor(code, message) {
6
+ super(message);
7
+ this.name = 'LogEpochError';
8
+ this.code = code;
9
+ }
10
+ }
11
+ const EPOCH_PREFIX = 'argus-log-epoch-v1.';
1
12
  /** In-memory ring buffer for log events with long-poll waiters. */
2
13
  export class LogBuffer {
3
14
  maxSize;
15
+ streamId = randomUUID();
4
16
  events = [];
5
17
  nextId = 1;
6
18
  waiters = [];
19
+ epochWaiters = [];
7
20
  constructor(maxSize) {
8
21
  this.maxSize = maxSize;
9
22
  }
@@ -16,16 +29,37 @@ export class LogBuffer {
16
29
  this.events.push(entry);
17
30
  this.trim();
18
31
  this.flushWaiters();
32
+ this.flushEpochWaiters();
19
33
  return entry;
20
34
  }
21
35
  /** List events after the given id, respecting filters and limit. */
22
36
  listAfter(after, filters, limit) {
23
- const filtered = this.events.filter((event) => event.id > after && matchesFilters(event, filters));
24
- return filtered.slice(0, limit);
37
+ return this.listAfterPosition(after, filters, limit);
25
38
  }
26
- /** Return the current append cursor without copying buffered events. */
39
+ /** Return the current opaque append cursor without copying buffered events. */
27
40
  getCursor() {
28
- return this.nextId - 1;
41
+ return this.beginLogEpoch();
42
+ }
43
+ /** Return an opaque position in this watcher's current log stream. */
44
+ beginLogEpoch() {
45
+ return encodeEpoch({ v: 1, s: this.streamId, p: this.currentPosition() });
46
+ }
47
+ /** Alias for {@link beginLogEpoch}; names the returned value as a cursor. */
48
+ getEpoch() {
49
+ return this.beginLogEpoch();
50
+ }
51
+ /** Encode a known stream position for response pagination. */
52
+ getEpochAt(position) {
53
+ return encodeEpoch({ v: 1, s: this.streamId, p: position });
54
+ }
55
+ /** List events after an epoch, failing instead of silently returning a partial delta. */
56
+ listAfterEpoch(epoch, filters, limit) {
57
+ const position = this.resolveEpoch(epoch);
58
+ const events = this.listAfterPosition(position, filters, limit);
59
+ return {
60
+ events,
61
+ nextCursor: events.length > 0 ? this.getEpochAt(events[events.length - 1]?.id ?? position) : epoch,
62
+ };
29
63
  }
30
64
  /** Wait for events after an id or timeout. */
31
65
  waitForAfter(after, filters, limit, timeoutMs) {
@@ -41,6 +75,21 @@ export class LogBuffer {
41
75
  this.waiters.push({ after, filters, limit, resolve, timer });
42
76
  });
43
77
  }
78
+ /** Wait for events after an epoch, rejecting if the marker becomes stale while waiting. */
79
+ async waitForAfterEpoch(epoch, filters, limit, timeoutMs) {
80
+ const position = this.resolveEpoch(epoch);
81
+ const immediate = this.listAfterPosition(position, filters, limit);
82
+ if (immediate.length > 0) {
83
+ return { events: immediate, nextCursor: this.getEpochAt(immediate[immediate.length - 1]?.id ?? position) };
84
+ }
85
+ return new Promise((resolve, reject) => {
86
+ const timer = setTimeout(() => {
87
+ this.epochWaiters = this.epochWaiters.filter((waiter) => waiter.timer !== timer);
88
+ resolve({ events: [], nextCursor: epoch });
89
+ }, timeoutMs);
90
+ this.epochWaiters.push({ position, filters, limit, resolve, reject, timer });
91
+ });
92
+ }
44
93
  /** Get buffer size and id boundaries. */
45
94
  getStats() {
46
95
  if (this.events.length === 0) {
@@ -54,6 +103,10 @@ export class LogBuffer {
54
103
  };
55
104
  }
56
105
  trim() {
106
+ if (this.maxSize <= 0) {
107
+ this.events = [];
108
+ return;
109
+ }
57
110
  if (this.events.length <= this.maxSize) {
58
111
  return;
59
112
  }
@@ -75,7 +128,83 @@ export class LogBuffer {
75
128
  }
76
129
  this.waiters = remaining;
77
130
  }
131
+ flushEpochWaiters() {
132
+ if (this.epochWaiters.length === 0) {
133
+ return;
134
+ }
135
+ const remaining = [];
136
+ for (const waiter of this.epochWaiters) {
137
+ try {
138
+ this.validatePosition(waiter.position);
139
+ }
140
+ catch (error) {
141
+ clearTimeout(waiter.timer);
142
+ waiter.reject(error);
143
+ continue;
144
+ }
145
+ const events = this.listAfterPosition(waiter.position, waiter.filters, waiter.limit);
146
+ if (events.length > 0) {
147
+ clearTimeout(waiter.timer);
148
+ waiter.resolve({
149
+ events,
150
+ nextCursor: this.getEpochAt(events[events.length - 1]?.id ?? waiter.position),
151
+ });
152
+ continue;
153
+ }
154
+ remaining.push(waiter);
155
+ }
156
+ this.epochWaiters = remaining;
157
+ }
158
+ listAfterPosition(position, filters, limit) {
159
+ return this.events.filter((event) => event.id > position && matchesFilters(event, filters)).slice(0, limit);
160
+ }
161
+ resolveEpoch(epoch) {
162
+ const payload = decodeEpoch(epoch);
163
+ if (!payload) {
164
+ throw new LogEpochError('invalid', 'Invalid log epoch. Capture a new epoch from the watcher.');
165
+ }
166
+ if (payload.s !== this.streamId) {
167
+ throw new LogEpochError('mismatch', 'Log epoch belongs to a different watcher session. Capture a new epoch.');
168
+ }
169
+ if (payload.p > this.currentPosition()) {
170
+ throw new LogEpochError('future', 'Log epoch points past the current log stream.');
171
+ }
172
+ this.validatePosition(payload.p);
173
+ return payload.p;
174
+ }
175
+ validatePosition(position) {
176
+ if (this.events.length > 0 && position < (this.events[0]?.id ?? position + 1) - 1) {
177
+ throw new LogEpochError('evicted', 'Log epoch is stale because the ring buffer evicted entries. Capture a new epoch.');
178
+ }
179
+ if (this.maxSize === 0 && this.currentPosition() > position) {
180
+ throw new LogEpochError('evicted', 'Log epoch is stale because the ring buffer evicted entries. Capture a new epoch.');
181
+ }
182
+ }
183
+ currentPosition() {
184
+ return this.nextId - 1;
185
+ }
78
186
  }
187
+ const encodeEpoch = (payload) => `${EPOCH_PREFIX}${Buffer.from(JSON.stringify(payload)).toString('base64url')}`;
188
+ const decodeEpoch = (epoch) => {
189
+ if (typeof epoch !== 'string' || !epoch.startsWith(EPOCH_PREFIX)) {
190
+ return null;
191
+ }
192
+ try {
193
+ const parsed = JSON.parse(Buffer.from(epoch.slice(EPOCH_PREFIX.length), 'base64url').toString('utf8'));
194
+ if (parsed.v !== 1 ||
195
+ typeof parsed.s !== 'string' ||
196
+ !parsed.s ||
197
+ typeof parsed.p !== 'number' ||
198
+ !Number.isSafeInteger(parsed.p) ||
199
+ parsed.p < 0) {
200
+ return null;
201
+ }
202
+ return parsed;
203
+ }
204
+ catch {
205
+ return null;
206
+ }
207
+ };
79
208
  const matchesFilters = (event, filters) => {
80
209
  if (filters.sinceTs && event.ts < filters.sinceTs) {
81
210
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"LogBuffer.js","sourceRoot":"","sources":["../../src/buffer/LogBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LogBuffer.js","sourceRoot":"","sources":["../../src/buffer/LogBuffer.ts"],"names":[],"mappings":"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"}
@@ -134,17 +134,11 @@ const parseCheckpointName = (value) => {
134
134
  const readScenarioLogs = (buffer, value) => {
135
135
  const payload = requireRecord(value, 'logs.read payload');
136
136
  const cursor = payload.cursor;
137
- if (typeof cursor !== 'number' || !Number.isInteger(cursor) || cursor < 0) {
138
- throw new Error('log cursor must be a non-negative integer');
137
+ if (typeof cursor !== 'string' || !cursor.trim()) {
138
+ throw new Error('log cursor must be a non-empty opaque cursor');
139
139
  }
140
140
  const { filters, limit } = parseLogOptions(payload.options);
141
- const endCursor = buffer.getCursor();
142
- const events = buffer.listAfter(cursor, filters, limit);
143
- let nextCursor = endCursor;
144
- if (events.length === limit) {
145
- nextCursor = events[events.length - 1]?.id ?? cursor;
146
- }
147
- return { events, nextCursor };
141
+ return buffer.listAfterEpoch(cursor, filters, limit);
148
142
  };
149
143
  const parseLogOptions = (value) => {
150
144
  if (value == null)
@@ -1 +1 @@
1
- {"version":3,"file":"scenarioBridge.js","sourceRoot":"","sources":["../../src/cdp/scenarioBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scenarioBridge.js","sourceRoot":"","sources":["../../src/cdp/scenarioBridge.ts"],"names":[],"mappings":"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"}
package/dist/events.d.ts CHANGED
@@ -41,7 +41,10 @@ export type CdpDetachedEvent = {
41
41
  * Query parameters for log/tail requests.
42
42
  */
43
43
  export type LogRequestQuery = {
44
- after?: number;
44
+ /** Opaque cursor returned by `/logs/cursor` or `/logs/epoch`. */
45
+ after?: string;
46
+ /** Alias for `after` with explicit baseline semantics. */
47
+ sinceEpoch?: string;
45
48
  limit?: number;
46
49
  levels?: LogLevel[];
47
50
  match?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const route: import("./defineRoute.js").WatcherRouteDefinition;
2
+ //# sourceMappingURL=getLogEpoch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLogEpoch.d.ts","sourceRoot":"","sources":["../../../src/http/routes/getLogEpoch.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,KAAK,mDAIhB,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { defineJsonRoute } from './defineRoute.js';
2
+ export const route = defineJsonRoute({
3
+ method: 'GET',
4
+ path: '/logs/epoch',
5
+ handle: ({ ctx }) => ({ ok: true, epoch: ctx.buffer.beginLogEpoch() }),
6
+ });
7
+ //# sourceMappingURL=getLogEpoch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLogEpoch.js","sourceRoot":"","sources":["../../../src/http/routes/getLogEpoch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAA8B;IACjE,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;CACtE,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getLogs.d.ts","sourceRoot":"","sources":["../../../src/http/routes/getLogs.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,KAAK,mDA+BhB,CAAA"}
1
+ {"version":3,"file":"getLogs.d.ts","sourceRoot":"","sources":["../../../src/http/routes/getLogs.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,KAAK,mDAiDhB,CAAA"}
@@ -1,11 +1,16 @@
1
+ import { LogEpochError } from '../../buffer/LogBuffer.js';
1
2
  import { defineJsonRoute } from './defineRoute.js';
2
3
  import { emitRequest } from './types.js';
3
4
  import { respondInvalidMatch, respondInvalidMatchCase, clampNumber, parseLevels, resolveMatchCase, normalizeMatchPatterns, compileMatchPatterns, normalizeQueryValue, } from '../httpUtils.js';
5
+ import { listLogsFromPosition, parseLogPosition, respondLogEpochError } from './logEpochQuery.js';
4
6
  export const route = defineJsonRoute({
5
7
  method: 'GET',
6
8
  path: '/logs',
7
9
  handle: ({ res, url, ctx }) => {
8
- const after = clampNumber(url.searchParams.get('after'), 0);
10
+ const position = parseLogPosition(url);
11
+ if ('error' in position) {
12
+ return respondLogEpochError(res, new LogEpochError('invalid', position.error));
13
+ }
9
14
  const limit = clampNumber(url.searchParams.get('limit'), 500, 1, 5000);
10
15
  const levels = parseLevels(url.searchParams.get('levels'));
11
16
  const match = url.searchParams.getAll('match');
@@ -24,10 +29,26 @@ export const route = defineJsonRoute({
24
29
  return respondInvalidMatch(res, compiledMatch.error);
25
30
  }
26
31
  // Emitted manually to include query metadata in the request event.
27
- emitRequest(ctx, res, 'logs', { after, limit, levels, match: matchPatterns.patterns, matchCase, source, sinceTs });
28
- const events = ctx.buffer.listAfter(after, { levels, match: compiledMatch.match, source, sinceTs }, limit);
29
- const nextAfter = events.length > 0 ? (events[events.length - 1]?.id ?? after) : after;
30
- return { ok: true, events, nextAfter };
32
+ emitRequest(ctx, res, 'logs', {
33
+ after: position.kind === 'epoch' && url.searchParams.has('after') ? position.epoch : undefined,
34
+ sinceEpoch: position.kind === 'epoch' ? position.epoch : undefined,
35
+ limit,
36
+ levels,
37
+ match: matchPatterns.patterns,
38
+ matchCase,
39
+ source,
40
+ sinceTs,
41
+ });
42
+ try {
43
+ const result = listLogsFromPosition(ctx.buffer, position, { levels, match: compiledMatch.match, source, sinceTs }, limit);
44
+ return { ok: true, ...result };
45
+ }
46
+ catch (error) {
47
+ if (error instanceof LogEpochError) {
48
+ return respondLogEpochError(res, error);
49
+ }
50
+ throw error;
51
+ }
31
52
  },
32
53
  });
33
54
  //# sourceMappingURL=getLogs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLogs.js","sourceRoot":"","sources":["../../../src/http/routes/getLogs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EACN,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,iBAAiB,CAAA;AAExB,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAA0B;IAC7D,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACtE,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAA;QACpC,CAAC;QACD,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QAClE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAA;QAEvE,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;QACnD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QACrD,CAAC;QACD,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAC7E,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QACrD,CAAC;QAED,mEAAmE;QACnE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QAElH,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,CAAA;QAC1G,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QACtF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IACvC,CAAC;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"getLogs.js","sourceRoot":"","sources":["../../../src/http/routes/getLogs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getTail.d.ts","sourceRoot":"","sources":["../../../src/http/routes/getTail.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,KAAK,mDA+BhB,CAAA"}
1
+ {"version":3,"file":"getTail.d.ts","sourceRoot":"","sources":["../../../src/http/routes/getTail.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,KAAK,mDAiDhB,CAAA"}
@@ -1,11 +1,16 @@
1
+ import { LogEpochError } from '../../buffer/LogBuffer.js';
1
2
  import { defineJsonRoute } from './defineRoute.js';
2
3
  import { emitRequest } from './types.js';
3
4
  import { respondInvalidMatch, respondInvalidMatchCase, clampNumber, parseLevels, resolveMatchCase, normalizeMatchPatterns, compileMatchPatterns, normalizeQueryValue, } from '../httpUtils.js';
5
+ import { parseLogPosition, respondLogEpochError, waitForLogsFromPosition } from './logEpochQuery.js';
4
6
  export const route = defineJsonRoute({
5
7
  method: 'GET',
6
8
  path: '/tail',
7
9
  handle: async ({ res, url, ctx }) => {
8
- const after = clampNumber(url.searchParams.get('after'), 0);
10
+ const position = parseLogPosition(url);
11
+ if ('error' in position) {
12
+ return respondLogEpochError(res, new LogEpochError('invalid', position.error));
13
+ }
9
14
  const limit = clampNumber(url.searchParams.get('limit'), 500, 1, 5000);
10
15
  const timeoutMs = clampNumber(url.searchParams.get('timeoutMs'), 25_000, 1000, 120_000);
11
16
  const levels = parseLevels(url.searchParams.get('levels'));
@@ -24,10 +29,26 @@ export const route = defineJsonRoute({
24
29
  return respondInvalidMatch(res, compiledMatch.error);
25
30
  }
26
31
  // Emitted manually to include query metadata in the request event.
27
- emitRequest(ctx, res, 'tail', { after, limit, levels, match: matchPatterns.patterns, matchCase, source, timeoutMs });
28
- const events = await ctx.buffer.waitForAfter(after, { levels, match: compiledMatch.match, source }, limit, timeoutMs);
29
- const nextAfter = events.length > 0 ? (events[events.length - 1]?.id ?? after) : after;
30
- return { ok: true, events, nextAfter, timedOut: events.length === 0 };
32
+ emitRequest(ctx, res, 'tail', {
33
+ after: position.kind === 'epoch' ? position.epoch : undefined,
34
+ sinceEpoch: position.kind === 'epoch' ? position.epoch : undefined,
35
+ limit,
36
+ levels,
37
+ match: matchPatterns.patterns,
38
+ matchCase,
39
+ source,
40
+ timeoutMs,
41
+ });
42
+ try {
43
+ const result = await waitForLogsFromPosition(ctx.buffer, position, { levels, match: compiledMatch.match, source }, limit, timeoutMs);
44
+ return { ok: true, ...result, timedOut: result.events.length === 0 };
45
+ }
46
+ catch (error) {
47
+ if (error instanceof LogEpochError) {
48
+ return respondLogEpochError(res, error);
49
+ }
50
+ throw error;
51
+ }
31
52
  },
32
53
  });
33
54
  //# sourceMappingURL=getTail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTail.js","sourceRoot":"","sources":["../../../src/http/routes/getTail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EACN,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GACnB,MAAM,iBAAiB,CAAA;AAExB,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAA0B;IAC7D,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACtE,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACvF,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAA;QACpC,CAAC;QACD,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QAElE,MAAM,aAAa,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;QACnD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QACrD,CAAC;QACD,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAC7E,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,mBAAmB,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QACrD,CAAC;QAED,mEAAmE;QACnE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QAEpH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;QACrH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QACtF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAA;IACtE,CAAC;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"getTail.js","sourceRoot":"","sources":["../../../src/http/routes/getTail.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AA6D9D;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,sBAAsB,EA8D1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AA8D9D;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,sBAAsB,EA+D1D,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { route as getStatus } from './getStatus.js';
2
2
  import { route as getLogs } from './getLogs.js';
3
3
  import { route as getLogCursor } from './getLogCursor.js';
4
+ import { route as getLogEpoch } from './getLogEpoch.js';
4
5
  import { route as getTail } from './getTail.js';
5
6
  import { route as getNet } from './getNet.js';
6
7
  import { route as getNetRequests } from './getNetRequests.js';
@@ -63,6 +64,7 @@ import { route as postDetach } from './postDetach.js';
63
64
  export const watcherRoutes = [
64
65
  getStatus,
65
66
  getLogCursor,
67
+ getLogEpoch,
66
68
  getLogs,
67
69
  getTail,
68
70
  getNet,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type http from 'node:http';
2
+ import type { LogEpoch } from '@vforsh/argus-core';
3
+ import { LogEpochError, type LogBuffer, type LogEpochQueryResult, type LogFilters } from '../../buffer/LogBuffer.js';
4
+ export type LogPositionQuery = {
5
+ kind: 'all';
6
+ } | {
7
+ kind: 'epoch';
8
+ epoch: LogEpoch;
9
+ };
10
+ /** Parse the opaque epoch form, or the unbounded query with no marker. */
11
+ export declare const parseLogPosition: (url: URL) => LogPositionQuery | {
12
+ error: string;
13
+ };
14
+ /** Respond with a stable status/code when an epoch cannot produce a complete delta. */
15
+ export declare const respondLogEpochError: (res: http.ServerResponse, error: LogEpochError) => void;
16
+ /** Read a bounded log page from either the full retained buffer or an opaque cursor. */
17
+ export declare const listLogsFromPosition: (buffer: LogBuffer, position: LogPositionQuery, filters: LogFilters, limit: number) => LogEpochQueryResult;
18
+ /** Long-poll from either the full retained buffer or an opaque cursor. */
19
+ export declare const waitForLogsFromPosition: (buffer: LogBuffer, position: LogPositionQuery, filters: LogFilters, limit: number, timeoutMs: number) => Promise<LogEpochQueryResult>;
20
+ //# sourceMappingURL=logEpochQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logEpochQuery.d.ts","sourceRoot":"","sources":["../../../src/http/routes/logEpochQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,mBAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAGpH,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,CAAA;AAEnF,0EAA0E;AAC1E,eAAO,MAAM,gBAAgB,GAAI,KAAK,GAAG,KAAG,gBAAgB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAe7E,CAAA;AAED,uFAAuF;AACvF,eAAO,MAAM,oBAAoB,GAAI,KAAK,IAAI,CAAC,cAAc,EAAE,OAAO,aAAa,KAAG,IAarF,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,SAAS,EAAE,UAAU,gBAAgB,EAAE,SAAS,UAAU,EAAE,OAAO,MAAM,KAAG,mBAMxH,CAAA;AAED,0EAA0E;AAC1E,eAAO,MAAM,uBAAuB,GACnC,QAAQ,SAAS,EACjB,UAAU,gBAAgB,EAC1B,SAAS,UAAU,EACnB,OAAO,MAAM,EACb,WAAW,MAAM,KACf,OAAO,CAAC,mBAAmB,CAO7B,CAAA"}