@hasna/uptime 0.1.2 → 0.1.4
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 +50 -0
- package/README.md +72 -1
- package/dist/api.d.ts +12 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +2427 -123
- package/dist/checks.d.ts +23 -1
- package/dist/checks.d.ts.map +1 -1
- package/dist/checks.js +131 -2
- package/dist/cli/index.js +2772 -115
- package/dist/dashboard.js +1 -1
- package/dist/imports.d.ts +90 -0
- package/dist/imports.d.ts.map +1 -0
- package/dist/imports.js +556 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2437 -123
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +2307 -49
- package/dist/paths.d.ts +1 -0
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +4 -0
- package/dist/probes.d.ts +13 -0
- package/dist/probes.d.ts.map +1 -0
- package/dist/probes.js +62 -0
- package/dist/report.d.ts +2 -7
- package/dist/report.d.ts.map +1 -1
- package/dist/report.js +1 -1
- package/dist/service.d.ts +152 -4
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +2154 -60
- package/dist/store.d.ts +130 -3
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +1086 -18
- package/dist/target-policy.d.ts +7 -0
- package/dist/target-policy.d.ts.map +1 -0
- package/dist/types.d.ts +189 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -2
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CreateMonitorInput, Monitor } from "./types.js";
|
|
2
|
+
type MonitorTarget = Pick<CreateMonitorInput | Monitor, "kind" | "url" | "host" | "port">;
|
|
3
|
+
export declare function assertHostedTargetAllowed(target: MonitorTarget): void;
|
|
4
|
+
export declare function assertHostedHttpUrlAllowed(value: string): void;
|
|
5
|
+
export declare function assertHostedHostAllowed(hostname: string, label?: string): void;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=target-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target-policy.d.ts","sourceRoot":"","sources":["../src/target-policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE9D,KAAK,aAAa,GAAG,IAAI,CAAC,kBAAkB,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;AAI1F,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAerE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAiB9D;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,SAAS,GAAG,IAAI,CAgB9E"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export type MonitorKind = "http" | "tcp";
|
|
1
|
+
export type MonitorKind = "http" | "tcp" | "browser_page";
|
|
2
|
+
export type CreateMonitorKind = "http" | "tcp";
|
|
2
3
|
export type MonitorStatus = "unknown" | "up" | "down" | "paused";
|
|
3
4
|
export type CheckStatus = "up" | "down";
|
|
4
5
|
export type IncidentStatus = "open" | "closed";
|
|
@@ -23,7 +24,7 @@ export interface Monitor {
|
|
|
23
24
|
}
|
|
24
25
|
export interface CreateMonitorInput {
|
|
25
26
|
name: string;
|
|
26
|
-
kind:
|
|
27
|
+
kind: CreateMonitorKind;
|
|
27
28
|
url?: string;
|
|
28
29
|
host?: string;
|
|
29
30
|
port?: number;
|
|
@@ -34,7 +35,13 @@ export interface CreateMonitorInput {
|
|
|
34
35
|
retryCount?: number;
|
|
35
36
|
enabled?: boolean;
|
|
36
37
|
}
|
|
38
|
+
export interface ImportedMonitorInput extends Omit<CreateMonitorInput, "kind"> {
|
|
39
|
+
kind: MonitorKind;
|
|
40
|
+
}
|
|
37
41
|
export type UpdateMonitorInput = Partial<Omit<CreateMonitorInput, "kind">> & {
|
|
42
|
+
kind?: CreateMonitorKind;
|
|
43
|
+
};
|
|
44
|
+
export type ImportedUpdateMonitorInput = Partial<Omit<ImportedMonitorInput, "kind">> & {
|
|
38
45
|
kind?: MonitorKind;
|
|
39
46
|
};
|
|
40
47
|
export interface CheckResult {
|
|
@@ -46,12 +53,192 @@ export interface CheckResult {
|
|
|
46
53
|
statusCode: number | null;
|
|
47
54
|
error: string | null;
|
|
48
55
|
attemptCount: number;
|
|
56
|
+
evidence: CheckEvidence | null;
|
|
49
57
|
}
|
|
50
58
|
export interface CheckAttemptResult {
|
|
51
59
|
status: CheckStatus;
|
|
52
60
|
latencyMs: number | null;
|
|
53
61
|
statusCode?: number | null;
|
|
54
62
|
error?: string | null;
|
|
63
|
+
evidence?: CheckEvidence | null;
|
|
64
|
+
}
|
|
65
|
+
export interface ProbeIdentity {
|
|
66
|
+
id: string;
|
|
67
|
+
name: string;
|
|
68
|
+
publicKeyPem: string;
|
|
69
|
+
publicKeyFingerprint: string;
|
|
70
|
+
enabled: boolean;
|
|
71
|
+
createdAt: string;
|
|
72
|
+
lastSeenAt: string | null;
|
|
73
|
+
}
|
|
74
|
+
export interface CreateProbeInput {
|
|
75
|
+
name: string;
|
|
76
|
+
publicKeyPem?: string;
|
|
77
|
+
enabled?: boolean;
|
|
78
|
+
}
|
|
79
|
+
export interface CreateProbeResult extends ProbeIdentity {
|
|
80
|
+
privateKeyPem?: string;
|
|
81
|
+
}
|
|
82
|
+
export interface ProbeResultSubmission {
|
|
83
|
+
probeId: string;
|
|
84
|
+
jobId: string;
|
|
85
|
+
scheduleSlot: string;
|
|
86
|
+
fencingToken: string;
|
|
87
|
+
monitorId: string;
|
|
88
|
+
nonce: string;
|
|
89
|
+
checkedAt: string;
|
|
90
|
+
status: CheckStatus;
|
|
91
|
+
latencyMs: number | null;
|
|
92
|
+
statusCode?: number | null;
|
|
93
|
+
error?: string | null;
|
|
94
|
+
attemptCount?: number;
|
|
95
|
+
monitorRevision: number;
|
|
96
|
+
evidence?: CheckEvidence | null;
|
|
97
|
+
signature: string;
|
|
98
|
+
}
|
|
99
|
+
export interface ProbeSubmissionReceipt {
|
|
100
|
+
id: string;
|
|
101
|
+
probeId: string;
|
|
102
|
+
jobId: string;
|
|
103
|
+
monitorId: string;
|
|
104
|
+
checkResultId: string;
|
|
105
|
+
nonce: string;
|
|
106
|
+
checkedAt: string;
|
|
107
|
+
submittedAt: string;
|
|
108
|
+
}
|
|
109
|
+
export type ProbeCheckJobStatus = "pending" | "claimed" | "submitted" | "expired" | "cancelled";
|
|
110
|
+
export interface ProbeCheckJob {
|
|
111
|
+
id: string;
|
|
112
|
+
monitorId: string;
|
|
113
|
+
monitorRevision: number;
|
|
114
|
+
scheduleSlot: string;
|
|
115
|
+
status: ProbeCheckJobStatus;
|
|
116
|
+
claimedByProbeId: string | null;
|
|
117
|
+
fencingToken: string | null;
|
|
118
|
+
dueAt: string;
|
|
119
|
+
claimedAt: string | null;
|
|
120
|
+
leaseExpiresAt: string | null;
|
|
121
|
+
submittedResultId: string | null;
|
|
122
|
+
createdAt: string;
|
|
123
|
+
updatedAt: string;
|
|
124
|
+
}
|
|
125
|
+
export type ReportScheduleStatus = "enabled" | "disabled";
|
|
126
|
+
export type ReportRunStatus = "success" | "failed";
|
|
127
|
+
export type ReportDeliveryChannel = "email" | "sms" | "logs";
|
|
128
|
+
export interface ReportDeliveryRecord {
|
|
129
|
+
channel: ReportDeliveryChannel;
|
|
130
|
+
ok: boolean;
|
|
131
|
+
status?: number;
|
|
132
|
+
id?: string;
|
|
133
|
+
error?: string;
|
|
134
|
+
}
|
|
135
|
+
export interface ReportEmailChannelConfig {
|
|
136
|
+
apiUrl?: string;
|
|
137
|
+
from?: string;
|
|
138
|
+
to?: string | string[];
|
|
139
|
+
subject?: string;
|
|
140
|
+
providerId?: string;
|
|
141
|
+
}
|
|
142
|
+
export interface ReportSmsChannelConfig {
|
|
143
|
+
apiUrl?: string;
|
|
144
|
+
from?: string;
|
|
145
|
+
to?: string | string[];
|
|
146
|
+
}
|
|
147
|
+
export interface ReportLogsChannelConfig {
|
|
148
|
+
apiUrl?: string;
|
|
149
|
+
projectId?: string;
|
|
150
|
+
environment?: string;
|
|
151
|
+
service?: string;
|
|
152
|
+
}
|
|
153
|
+
export interface ReportScheduleChannels {
|
|
154
|
+
email?: boolean | ReportEmailChannelConfig;
|
|
155
|
+
sms?: boolean | ReportSmsChannelConfig;
|
|
156
|
+
logs?: boolean | ReportLogsChannelConfig;
|
|
157
|
+
}
|
|
158
|
+
export interface ReportSchedule {
|
|
159
|
+
id: string;
|
|
160
|
+
name: string;
|
|
161
|
+
enabled: boolean;
|
|
162
|
+
intervalSeconds: number;
|
|
163
|
+
nextRunAt: string;
|
|
164
|
+
lastRunAt: string | null;
|
|
165
|
+
subject: string | null;
|
|
166
|
+
channels: ReportScheduleChannels;
|
|
167
|
+
createdAt: string;
|
|
168
|
+
updatedAt: string;
|
|
169
|
+
}
|
|
170
|
+
export interface CreateReportScheduleInput {
|
|
171
|
+
name: string;
|
|
172
|
+
intervalSeconds: number;
|
|
173
|
+
nextRunAt?: string;
|
|
174
|
+
enabled?: boolean;
|
|
175
|
+
subject?: string | null;
|
|
176
|
+
channels: ReportScheduleChannels;
|
|
177
|
+
}
|
|
178
|
+
export type UpdateReportScheduleInput = Partial<CreateReportScheduleInput>;
|
|
179
|
+
export interface ReportRun {
|
|
180
|
+
id: string;
|
|
181
|
+
scheduleId: string | null;
|
|
182
|
+
status: ReportRunStatus;
|
|
183
|
+
startedAt: string;
|
|
184
|
+
finishedAt: string;
|
|
185
|
+
deliveries: ReportDeliveryRecord[];
|
|
186
|
+
error: string | null;
|
|
187
|
+
reportJson: Record<string, unknown> | null;
|
|
188
|
+
}
|
|
189
|
+
export interface ListReportRunsOptions {
|
|
190
|
+
scheduleId?: string;
|
|
191
|
+
limit?: number;
|
|
192
|
+
}
|
|
193
|
+
export interface AuditEvent {
|
|
194
|
+
id: string;
|
|
195
|
+
action: string;
|
|
196
|
+
resourceType: string | null;
|
|
197
|
+
resourceId: string | null;
|
|
198
|
+
message: string | null;
|
|
199
|
+
metadata: Record<string, unknown>;
|
|
200
|
+
actor: string | null;
|
|
201
|
+
createdAt: string;
|
|
202
|
+
}
|
|
203
|
+
export interface RecordAuditEventInput {
|
|
204
|
+
action: string;
|
|
205
|
+
resourceType?: string | null;
|
|
206
|
+
resourceId?: string | null;
|
|
207
|
+
message?: string | null;
|
|
208
|
+
metadata?: Record<string, unknown>;
|
|
209
|
+
actor?: string | null;
|
|
210
|
+
createdAt?: string;
|
|
211
|
+
}
|
|
212
|
+
export interface ListAuditEventsOptions {
|
|
213
|
+
resourceType?: string;
|
|
214
|
+
resourceId?: string;
|
|
215
|
+
limit?: number;
|
|
216
|
+
}
|
|
217
|
+
export type CheckEvidence = BrowserPageEvidence;
|
|
218
|
+
export interface BrowserPageEvidence {
|
|
219
|
+
kind: "browser_page";
|
|
220
|
+
finalUrl: string | null;
|
|
221
|
+
navigationStatus: number | null;
|
|
222
|
+
consoleErrors: string[];
|
|
223
|
+
pageErrors: string[];
|
|
224
|
+
failedRequests: BrowserFailedRequest[];
|
|
225
|
+
screenshot: EvidenceArtifact | null;
|
|
226
|
+
artifacts: EvidenceArtifact[];
|
|
227
|
+
redacted: boolean;
|
|
228
|
+
redactionStatus: "redacted";
|
|
229
|
+
retentionClass: "short";
|
|
230
|
+
}
|
|
231
|
+
export interface BrowserFailedRequest {
|
|
232
|
+
url: string;
|
|
233
|
+
statusCode: number | null;
|
|
234
|
+
error: string | null;
|
|
235
|
+
}
|
|
236
|
+
export interface EvidenceArtifact {
|
|
237
|
+
ref: string;
|
|
238
|
+
sha256: string;
|
|
239
|
+
bytes: number;
|
|
240
|
+
contentType: string;
|
|
241
|
+
retentionClass: "short";
|
|
55
242
|
}
|
|
56
243
|
export interface Incident {
|
|
57
244
|
id: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hasna/uptime",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Local-first uptime and downtime monitoring service with CLI, MCP, SDK, SQLite persistence, and a dashboard.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -51,10 +51,14 @@
|
|
|
51
51
|
"./storage": {
|
|
52
52
|
"types": "./dist/store.d.ts",
|
|
53
53
|
"import": "./dist/store.js"
|
|
54
|
+
},
|
|
55
|
+
"./probes": {
|
|
56
|
+
"types": "./dist/probes.d.ts",
|
|
57
|
+
"import": "./dist/probes.js"
|
|
54
58
|
}
|
|
55
59
|
},
|
|
56
60
|
"scripts": {
|
|
57
|
-
"build": "rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external @modelcontextprotocol/sdk && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/api.ts src/service.ts src/store.ts src/checks.ts src/report.ts src/types.ts src/paths.ts src/dashboard.ts src/version.ts --root src --outdir dist --target bun && tsc -p tsconfig.build.json --emitDeclarationOnly --outDir dist && chmod +x dist/cli/index.js dist/mcp/index.js",
|
|
61
|
+
"build": "rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external @modelcontextprotocol/sdk && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/api.ts src/service.ts src/store.ts src/checks.ts src/imports.ts src/report.ts src/probes.ts src/types.ts src/paths.ts src/dashboard.ts src/version.ts --root src --outdir dist --target bun && tsc -p tsconfig.build.json --emitDeclarationOnly --outDir dist && chmod +x dist/cli/index.js dist/mcp/index.js",
|
|
58
62
|
"typecheck": "tsc --noEmit",
|
|
59
63
|
"test": "bun test ./tests",
|
|
60
64
|
"dev:cli": "bun run src/cli/index.ts",
|