lopebase 0.6.1 → 0.6.3
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 +27 -5
- package/package.json +1 -1
package/dist/lopebase.js
CHANGED
|
@@ -1206,7 +1206,29 @@ 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.1", ADAPTER_RELEASES = [
|
|
1210
|
+
{
|
|
1211
|
+
version: "0.4.1",
|
|
1212
|
+
date: "2026-10-08",
|
|
1213
|
+
features: [
|
|
1214
|
+
"cachedCheck now keeps a failing result for 10 seconds, not the full 60, so a service that comes back up shows that within seconds."
|
|
1215
|
+
],
|
|
1216
|
+
steps: []
|
|
1217
|
+
},
|
|
1218
|
+
{
|
|
1219
|
+
version: "0.4.0",
|
|
1220
|
+
date: "2026-10-08",
|
|
1221
|
+
features: [
|
|
1222
|
+
"Mark a service critical: false and its failure shows as degraded, without reporting the whole product down.",
|
|
1223
|
+
"cachedCheck keeps a service check's result for 60 seconds, so uptime polls do not use up an API's rate limit.",
|
|
1224
|
+
"httpCheck sends a User-Agent, and is meant for hosts the app owns."
|
|
1225
|
+
],
|
|
1226
|
+
steps: [
|
|
1227
|
+
"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.",
|
|
1228
|
+
"Wrap checks that call a rate-limited API in cachedCheck(check).",
|
|
1229
|
+
"Ask the human which services the app can run without for a while, and set critical: false on those."
|
|
1230
|
+
]
|
|
1231
|
+
},
|
|
1210
1232
|
{
|
|
1211
1233
|
version: "0.3.1",
|
|
1212
1234
|
date: "2026-10-08",
|
|
@@ -1220,11 +1242,11 @@ var ADAPTER_VERSION = "0.3.1", ADAPTER_RELEASES = [
|
|
|
1220
1242
|
date: "2026-10-08",
|
|
1221
1243
|
features: [
|
|
1222
1244
|
"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
|
|
1245
|
+
"httpCheck(id, url) for another host the app owns that has its own health address."
|
|
1224
1246
|
],
|
|
1225
1247
|
steps: [
|
|
1226
1248
|
"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
|
|
1249
|
+
"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
1250
|
"After deploying, set the product's uptime check in LopeBase to <app>/api/lopebase/health."
|
|
1229
1251
|
]
|
|
1230
1252
|
},
|
|
@@ -1268,7 +1290,7 @@ function releasesSince(version) {
|
|
|
1268
1290
|
function upgradePrompt(fromVersion) {
|
|
1269
1291
|
let todo = releasesSince(fromVersion), breaking = todo.flatMap((r) => r.breaking ?? []), steps = todo.flatMap((r) => r.steps);
|
|
1270
1292
|
return [
|
|
1271
|
-
`Update this app's LopeBase adapter (@lopebase/adapter) from ${fromVersion ?? "its current version"} to 0.
|
|
1293
|
+
`Update this app's LopeBase adapter (@lopebase/adapter) from ${fromVersion ?? "its current version"} to 0.4.1.`,
|
|
1272
1294
|
"",
|
|
1273
1295
|
"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
1296
|
...breaking.length ? [
|
|
@@ -2500,7 +2522,7 @@ function onboardingPrompt(input) {
|
|
|
2500
2522
|
"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
2523
|
"5. Never print a secret in chat or write one to a tracked file. Pass keys straight to connect_source.",
|
|
2502
2524
|
"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
|
|
2525
|
+
"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
2526
|
"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
2527
|
"9. Finish when get_onboarding_status says done. Summarize what is connected and anything left for later."
|
|
2506
2528
|
].join(`
|
package/package.json
CHANGED