lopebase 0.6.1 → 0.6.2
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/lopebase.js +19 -5
- package/package.json +1 -1
package/dist/lopebase.js
CHANGED
|
@@ -1206,7 +1206,21 @@ var Y2 = ({ indicator: t = "dots" } = {}) => {
|
|
|
1206
1206
|
};
|
|
1207
1207
|
|
|
1208
1208
|
// ../admin-adapter/src/releases.ts
|
|
1209
|
-
var ADAPTER_VERSION = "0.
|
|
1209
|
+
var ADAPTER_VERSION = "0.4.0", ADAPTER_RELEASES = [
|
|
1210
|
+
{
|
|
1211
|
+
version: "0.4.0",
|
|
1212
|
+
date: "2026-10-08",
|
|
1213
|
+
features: [
|
|
1214
|
+
"Mark a service critical: false and its failure shows as degraded, without reporting the whole product down.",
|
|
1215
|
+
"cachedCheck keeps a service check's result for 60 seconds, so uptime polls do not use up an API's rate limit.",
|
|
1216
|
+
"httpCheck sends a User-Agent, and is meant for hosts the app owns."
|
|
1217
|
+
],
|
|
1218
|
+
steps: [
|
|
1219
|
+
"Replace any service check that pings a vendor's public address (a root URL like https://api.github.com, a status page, a /healthcheck) with a check that makes the cheapest authenticated call using the app's own credentials: Stripe balance.retrieve, GitHub GET /app with the app's JWT, an AI provider's GET /models. Keep httpCheck only for hosts the app owns.",
|
|
1220
|
+
"Wrap checks that call a rate-limited API in cachedCheck(check).",
|
|
1221
|
+
"Ask the human which services the app can run without for a while, and set critical: false on those."
|
|
1222
|
+
]
|
|
1223
|
+
},
|
|
1210
1224
|
{
|
|
1211
1225
|
version: "0.3.1",
|
|
1212
1226
|
date: "2026-10-08",
|
|
@@ -1220,11 +1234,11 @@ var ADAPTER_VERSION = "0.3.1", ADAPTER_RELEASES = [
|
|
|
1220
1234
|
date: "2026-10-08",
|
|
1221
1235
|
features: [
|
|
1222
1236
|
"Service health: list the database, queues, workers, or other hosts the app needs, and LopeBase's uptime checks watch each one.",
|
|
1223
|
-
"httpCheck(id, url) for
|
|
1237
|
+
"httpCheck(id, url) for another host the app owns that has its own health address."
|
|
1224
1238
|
],
|
|
1225
1239
|
steps: [
|
|
1226
1240
|
"Read the code for what the app cannot work without (database, queue, workers, third-party APIs called on every request) and show the human the list.",
|
|
1227
|
-
"Add them as `services` in createAdminAdapter: a check function each
|
|
1241
|
+
"Add them as `services` in createAdminAdapter: a check function each that uses the app's own credentials for a cheap authenticated call (select 1 for the database, Stripe balance.retrieve, GitHub GET /app). Never point a check at a vendor's root URL or status page.",
|
|
1228
1242
|
"After deploying, set the product's uptime check in LopeBase to <app>/api/lopebase/health."
|
|
1229
1243
|
]
|
|
1230
1244
|
},
|
|
@@ -1268,7 +1282,7 @@ function releasesSince(version) {
|
|
|
1268
1282
|
function upgradePrompt(fromVersion) {
|
|
1269
1283
|
let todo = releasesSince(fromVersion), breaking = todo.flatMap((r) => r.breaking ?? []), steps = todo.flatMap((r) => r.steps);
|
|
1270
1284
|
return [
|
|
1271
|
-
`Update this app's LopeBase adapter (@lopebase/adapter) from ${fromVersion ?? "its current version"} to 0.
|
|
1285
|
+
`Update this app's LopeBase adapter (@lopebase/adapter) from ${fromVersion ?? "its current version"} to 0.4.0.`,
|
|
1272
1286
|
"",
|
|
1273
1287
|
"1. Install it with this repo's package manager, for example `npm install @lopebase/adapter@latest`. A 0.x range like ^0.1.2 does not pick up 0.2 or later on its own.",
|
|
1274
1288
|
...breaking.length ? [
|
|
@@ -2500,7 +2514,7 @@ function onboardingPrompt(input) {
|
|
|
2500
2514
|
"4. When a step needs the human (a browser sign-in, a payment, a permission, a key you cannot create), call request_human_action, tell them in one or two plain sentences what to do and why, and wait for them.",
|
|
2501
2515
|
"5. Never print a secret in chat or write one to a tracked file. Pass keys straight to connect_source.",
|
|
2502
2516
|
"6. For a source the project does not use yet (for example analytics), explain what it adds, ask before installing it, then add it the way this codebase does things.",
|
|
2503
|
-
"7. Uptime: confirm the list above against the code, and add anything it misses (a separate API or app host, a third-party API called on every request). Show the human the list. With the adapter, declare the
|
|
2517
|
+
"7. Uptime: confirm the list above against the code, and add anything it misses (a separate API or app host, a third-party API called on every request). Show the human the list. With the adapter, declare each as a service whose check uses the app's own credentials for a cheap authenticated call (select 1, Stripe balance.retrieve, GitHub GET /app, an AI provider's GET /models), wrap rate-limited ones in cachedCheck, set critical: false on what the app can run without, and use <app>/api/lopebase/health as the uptime address; otherwise use the site's address. Never point a check at a vendor's status page or root URL.",
|
|
2504
2518
|
"8. Pageviews: if the human wants them, call get_pageview_snippet, add the tag once to the shared layout, deploy, and confirm with get_pageviews.",
|
|
2505
2519
|
"9. Finish when get_onboarding_status says done. Summarize what is connected and anything left for later."
|
|
2506
2520
|
].join(`
|
package/package.json
CHANGED