@somewhere-tech/cli 0.37.6 → 0.37.8

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 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/lib/notify/providers/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/lib/notify/providers/update.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,33 @@
1
1
  export const BUNDLED_SKILLS_PACK = {
2
2
  "schema": 1,
3
3
  "name": "somewhere-skills",
4
- "version": "1+03fdf905f185",
5
- "sha256": "03fdf905f185341821678fe566fd40bd2e08c6f188219ee8076fd5aba16454c4",
4
+ "version": "1+46ccaa5adb17",
5
+ "sha256": "46ccaa5adb176861262dd34f446fb2e4c0b3d900ce4fc72a895ee14d002e4467",
6
6
  "files": [
7
7
  {
8
8
  "path": "deploy-verify-loop/SKILL.md",
9
- "sha256": "a51d36f7147a6986b8351dc0eff34497a3bc531fc929002a5a1d090260663c65",
10
- "content": "---\nname: deploy-verify-loop\ndescription: After every change: deploy the raw source, check the live app, and read logs or errors before guessing at a fix.\n---\n\n# Deploy, verify, read the failure\n\n## The loop\n\n1. `somewhere typecheck`, then `somewhere deploy` (do not build first). Deploy\n runs the platform compile, schema and secret checks and refuses a blank page\n before going live; `somewhere deploy-check` runs them without publishing\n (diagnosis, review, `--run /api/x`).\n2. `somewhere verify` — desktop and phone screenshots, console and network\n health; `somewhere verify --flow flow.json` fills and clicks. Several users:\n `actors` + `journey` (`somewhere docs browser`).\n3. `somewhere browser` inspects a page; `somewhere logs --tail 10`, then\n `somewhere errors`: read the failure first.\n\n```bash\nsomewhere deploy-check\nsomewhere deploy-check --run /api/hello -X POST -d '{\"name\":\"Ada\"}'\nsomewhere deploy-check --json\n```\n\n## A flow for verify --flow\n\n```json\n{ \"actions\": [{ \"fill\": \"#title\", \"value\": \"Verify entry\" }, { \"fill\": \"#from_email\", \"value\": \"v@example.com\" },\n { \"click\": \"#send\" }, { \"expect\": { \"selector\": \"#status\", \"text\": \"Received\" } }], \"viewports\": [\"desktop\", \"mobile\"] }\n```\n\n`passed` requires successful steps and request expectations, no page errors, and no unexpected failed requests. It can be false even when every step succeeded.\n\n## Failure 1: the live site still shows the old version\n\nBrowser or CDN cache. Hard-reload (Cmd-Shift-R), or check with `curl -sI https://{subdomain}.somewhere.site`.\n\n## Failure 2: a route fails\n\nShow recent failures with a `kind` column: **refused** for a 4xx your own handler returned on purpose, **exception** for an uncaught throw or a 5xx.\n\nThe `stack` field is the single most useful field for debugging — it tells you the exact file + line in your code where the throw originated.\n\n| `somewhere rollback [project]` | `-y, --yes`, `--json` | Select the previous retained production release. |\n\nSources (`somewhere docs <topic>`): browser, cli, common-mistakes, getting-started, recipe-signed-in-app, troubleshooting.\n"
9
+ "sha256": "e90d0f4861b160ccde0fb9e7179cfbac2fb0c9ad2696323c1d11a086cca2a4f7",
10
+ "content": "---\nname: deploy-verify-loop\ndescription: After every change: deploy the raw source, check the live app, and read logs or errors before guessing at a fix.\n---\n\n# Deploy, verify, read the failure\n\n## The loop\n\n```bash\nsomewhere typecheck\nsomewhere deploy\n```\n\nDon't bundle the source yourself; the platform runs the frontend build.\n\n```bash\nsomewhere deploy-check --run /api/hello -X POST -d '{\"name\":\"Ada\"}'\n```\n\n| Step | Command | What it tells you |\n|---|---|---|\n| Verify | `somewhere verify [--flow flow.json]` | Runs the live app at desktop and phone sizes: named steps, console/network health, both screenshots. |\n| Inspect | `somewhere browser [target]` | One page: screenshot, snapshot, DOM, network, or an evaluated expression. |\n| Diagnose | `somewhere logs --tail 10`, `somewhere errors` | Recent function output, then failures split into refused and exception. `errors` needs a claimed project and a signed-in account. |\n\n## A flow for verify --flow\n\n```json\n{ \"actions\": [{ \"fill\": \"#title\", \"value\": \"Verify entry\" }, { \"fill\": \"#from_email\", \"value\": \"v@example.com\" },\n { \"click\": \"#send\" }, { \"expect\": { \"selector\": \"#status\", \"text\": \"Received\" } }], \"viewports\": [\"desktop\", \"mobile\"] }\n```\n\n`passed` requires successful steps and request expectations, no page errors, and no unexpected failed requests. It can be false even when every step succeeded.\n\n## Failure 1: the live site still shows the old version\n\nBrowser or CDN cache. Hard-reload (Cmd-Shift-R), or check with `curl -sI https://{subdomain}.somewhere.site`.\n\n## Failure 2: a route fails\n\nShow recent failures with a `kind` column: **refused** for a 4xx your own handler returned on purpose, **exception** for an uncaught throw or a 5xx.\n\nThe `stack` field is the single most useful field for debugging — it tells you the exact file + line in your code where the throw originated.\n\n| `somewhere rollback [project]` | `-y, --yes`, `--json` | Select the previous retained production release. |\n\nSources (`somewhere docs <topic>`): browser, cli, common-mistakes, getting-started, recipe-signed-in-app, troubleshooting.\n"
11
11
  },
12
12
  {
13
13
  "path": "schema-changes/SKILL.md",
14
- "sha256": "e2bf13396d28a6452cecf84c05bc4a2db6616e9691a02065a2dfb3f1fc4c21da",
15
- "content": "---\nname: schema-changes\ndescription: Before adding, changing, or removing a table or column in db/schema.ts.\n---\n\n# Change the database schema safely\n\n## The file is the contract\n\n```ts\n// db/schema.ts — a declaration the platform reads, never code that runs\nimport { id, owner, schema, table, text, timestamp } from 'somewhere/db';\n\nexport default schema({\n posts: table({\n id: id(),\n title: text(),\n body: text({ nullable: true }),\n created_at: timestamp({ default: 'now' }),\n }, {\n scope: owner(), // per-user rows; the owner column is platform-managed\n }),\n});\n```\n\nA table stays invisible to the browser until its declaration carries a `client` block.\n\nDeclare file collections in `db/schema.ts`, deploy, and use the generated `somewhere:files` client in the browser.\n\n| `somewhere typecheck [dir]` | `--json` | Run local `tsc --noEmit` over a pulled project. |\n\n## What a deploy does with it\n\n- **Additive changes apply**: a new table, a new nullable-or-defaulted column, a new index, a new unique group. Unchanged schema is a no-op.\n- **Unmarked removals and shape changes refuse** with `409 SCHEMA_DEPLOY_REFUSED` and a message naming the change.\n- **Removing a table** is `old_table: removedTable()`.\n- once the new version is live it retires the table and keeps its data for 30 days.\n- a production deploy or a promotion that would remove or rename a column is refused before anything changes, so a running release never loses a column it uses. Keep the column declared and leave its data in place.\n\n## Failure: raw SQL refused after the schema file deploys\n\nOrdinary `sw.db.query` / `sw.db.batch` fail before transport with `MANAGED_RAW_SQL_REQUIRES_SERVER_AUTHORITY`, including in job, queue, and cron handlers. Fix: write with `sw.db.insert` / `sw.db.update` / `sw.db.remove` (the table needs a declared intent)\n\nSources (`somewhere docs <topic>`): cli, declared-files, getting-started, sw.db, troubleshooting.\n"
14
+ "sha256": "18380e80cec6c77352c328fa8b58cf3011d3dd90bd23711d38d3b36d50bd3304",
15
+ "content": "---\nname: schema-changes\ndescription: Before adding, changing, or removing a table or column in db/schema.ts.\n---\n\n# Change the database schema safely\n\n## The file is the contract\n\n```ts\n// db/schema.ts\nimport { id, owner, schema, table, text, timestamp } from 'somewhere/db';\n\nexport default schema({\n notes: table(\n {\n id: id(),\n title: text(),\n body: text({ default: '' }),\n created_at: timestamp({ default: 'now' }),\n },\n {\n scope: owner(),\n client: {\n read: ['id', 'title', 'body', 'created_at'],\n create: ['title', 'body'],\n update: ['title', 'body'],\n delete: true,\n },\n },\n ),\n});\n```\n\nA table without a `client` block can't be reached from the browser at all.\n\nDeclare a file collection in `db/schema.ts`: who may upload, read, replace and delete its files.\n\n| `somewhere typecheck [dir]` | `--json` | Run local `tsc --noEmit` over a pulled project. |\n\n## What a deploy does with it\n\n- **Additive changes apply**: a new table, a new nullable-or-defaulted column, a new index, a new unique group. Unchanged schema is a no-op.\n- **Unmarked removals and shape changes refuse** with `409 SCHEMA_DEPLOY_REFUSED` and a message naming the change.\n- **Removing a table** is `old_table: removedTable()`.\n- once the new version is live it retires the table and keeps its data for 30 days.\n- a production deploy or a promotion that would remove or rename a column is refused before anything changes, so a running release never loses a column it uses. Keep the column declared and leave its data in place.\n\n## Failure: raw SQL refused after the schema file deploys\n\nOrdinary `sw.db.query` / `sw.db.batch` fail before transport with `MANAGED_RAW_SQL_REQUIRES_SERVER_AUTHORITY`, including in job, queue, and cron handlers. Fix: write with `sw.db.insert` / `sw.db.update` / `sw.db.remove` (the table needs a declared intent)\n\nSources (`somewhere docs <topic>`): cli, declared-data, declared-files, sw.db, troubleshooting.\n"
16
16
  },
17
17
  {
18
18
  "path": "sign-in-setup/SKILL.md",
19
- "sha256": "68654c8381c2f7df7e13d2b8b9eff08af97f89d799bb937941825224fabb881b",
20
- "content": "---\nname: sign-in-setup\ndescription: When the app needs users to sign up, sign in, or sign out.\n---\n\n# Set up sign-in\n\n## Server: one route file\n\n`login` / `signup` are developer-key-gated (the browser can't call them), so one server route mediates them and sets the session cookies.\n\n```ts\n// api/auth/[...path].ts\nexport { somewhereAuth as default } from '@somewhere-tech/sdk/server';\n```\n\nIt serves `POST /signup`, `/login`, `/logout`, `/magic-link`, `/magic-link/verify`, `GET /me`, and the Google/GitHub/Discord `GET /<provider>-url` + `POST /<provider>` code exchange.\n\n## Page: the SDK client\n\n```bash\nnpm i @somewhere-tech/sdk\n```\n\n```ts\nimport { createSomewhereAuth } from '@somewhere-tech/sdk/auth'; // 0.11.3+\nconst auth = createSomewhereAuth(); // talks to /api/auth, cookie mode\n\ntry {\n await auth.signUp({ email, password }); // or auth.signIn({ email, password })\n} catch (err) {\n showMessage((err as Error).message); // \"Wrong email or password.\"\n}\nconst user = await auth.getUser(); // probes /api/auth/me; null when signed out\nawait auth.signOut();\n```\n\nCalls to your own `api/*` functions just send `credentials: 'include'`.\n\n`sw.auth.fromRequest(req)` reads the cookie or Authorization header and returns the validated user — or null. **Never** parse cookies manually inside a function.\n\nsign up as `<name>@<subdomain>.test.somewhere.site`, then `somewhere email test-inbox <addr>` prints the message and its magic link.\n\n## Failure 1: sign-in errors\n\nexpected failures (wrong password, duplicate email, weak password) come back as structured 4xx with the real message, never an opaque 500.\n\n## Failure 2: AUTH_REQUIRED from an owner() table\n\nThe table is user-owned, so the platform scopes it to a principal, and this request had none: there is no signed-in user, and this table does not declare `owner({ visitors: true })`, which is the declaration that accepts a stable anonymous visitor identity.\n\nSources (`somewhere docs <topic>`): auth-client, getting-started, sdk, troubleshooting.\n"
19
+ "sha256": "1ab5b6e50ed76058ac2cdf6507da0ddc59eb81d37d7245c9c95307935c9fa61e",
20
+ "content": "---\nname: sign-in-setup\ndescription: When the app needs users to sign up, sign in, or sign out.\n---\n\n# Set up sign-in\n\n## Server: one route file\n\n`login` / `signup` are developer-key-gated (the browser can't call them), so one server route mediates them and sets the session cookies.\n\n```ts\n// api/auth/[...path].ts\nexport { somewhereAuth as default } from '@somewhere-tech/sdk/server';\n```\n\nIt serves `POST /signup`, `/login`, `/logout`, `/magic-link`, `/magic-link/verify`, `GET /me`, and the Google/GitHub/Discord `GET /<provider>-url` + `POST /<provider>` code exchange.\n\n## Page: the SDK client\n\n```bash\nnpm i @somewhere-tech/sdk\n```\n\n```ts\n// src/auth.ts — page code\nimport { createSomewhereAuth } from '@somewhere-tech/sdk/auth'\n\nexport const auth = createSomewhereAuth()\n\n// Call from your sign-up form; throws AuthError with the message on failure.\nexport async function signUp(email: string, password: string) {\n await auth.signUp({ email, password }) // or auth.signIn({ email, password })\n return auth.getUser() // the signed-in user, or null\n}\nexport const signOut = () => auth.signOut()\n```\n\nCalls to your own `api/*` functions just send `credentials: 'include'`.\n\nDon't write `getCookie()` / token-parsing helpers → `sw.auth.fromRequest(req)` reads cookie + Bearer header and returns the validated user (or null) in one call.\n\nMail to `<name>@<project>.test.somewhere.site` is read with `somewhere email test-inbox <address>`.\n\n## Failure 1: sign-in errors\n\nexpected failures (wrong password, duplicate email, weak password) come back as structured 4xx with the real message, never an opaque 500.\n\n## Failure 2: AUTH_REQUIRED from an owner() table\n\nThe table is user-owned, so the platform scopes it to a principal, and this request had none: there is no signed-in user, and this table does not declare `owner({ visitors: true })`, which is the declaration that accepts a stable anonymous visitor identity.\n\nSources (`somewhere docs <topic>`): auth-client, common-mistakes, recipe-signed-in-app, sdk, troubleshooting.\n"
21
21
  },
22
22
  {
23
23
  "path": "troubleshooting/SKILL.md",
24
- "sha256": "6275138804adf14a03288d47fae24d14d668dd5ee1d5967653bd25e49145ea38",
25
- "content": "---\nname: troubleshooting\ndescription: When a request fails, a deploy or save is refused, or the live app misbehaves and the cause is not obvious.\n---\n\n# Troubleshoot a failure\n\n## Read before guessing\n\n3. `somewhere browser` inspects a page; `somewhere logs --tail 10`, then\n `somewhere errors`: read the failure first.\n\nEvery JSON error from the platform now ships with a `hint` field that names the most relevant `docs` topic.\n\nAsk `somewhere advisor \"<question>\"` how to build or fix it. For a reference, use `somewhere docs <topic> --section <id>`\n\n## Limits the logs name\n\n| Ceiling | Value | Instead |\n|---|---|---|\n| Memory per request | about 256 MB | Stream or process in chunks; move heavy work to `sw.jobs` |\n| CPU time per request | about 30 s | Move long computation to `sw.jobs` |\n| Wall-clock time per request | about 300 s | Start the work with `sw.jobs` and return; poll the job |\n| Environment values | about 5 KB (5,120 bytes) for all of a project's values together | Keep large configuration in files; a save above the limit is refused with 413 `ENV_VALUE_TOO_LARGE` (one value) or `ENV_VALUES_TOO_LARGE` (all values together), naming the key and the limit |\n\n## Failure 1: FUNCTION_CPU_EXCEEDED or FUNCTION_MEMORY_EXCEEDED\n\nThe caller gets HTTP 500 in the platform's JSON error envelope, `{ ok: false, error, message, request_id }`, with `error` set to `FUNCTION_MEMORY_EXCEEDED` or `FUNCTION_CPU_EXCEEDED`, and the same code and message are recorded in the project's logs and errors. The fix is the \"Instead\" column: move the work to `sw.jobs`, or process it in smaller pieces.\n\n## Failure 2: a refused deploy\n\n`SCHEMA_DEPLOY_REFUSED` (409, at deploy) — `db/schema.ts` asked for something the deploy will not do silently\n\nDoes the file path match the URL? `api/users/[id].ts` serves `/api/users/123`. `api/users.ts` serves `/api/users`.\n\nSources (`somewhere docs <topic>`): getting-started, limits, sw.db, troubleshooting.\n"
24
+ "sha256": "f8ccf9611284085d8987cd8d7a8f53e7be90049ab12771e44605c35d8397c8ce",
25
+ "content": "---\nname: troubleshooting\ndescription: When a request fails, a deploy or save is refused, or the live app misbehaves and the cause is not obvious.\n---\n\n# Troubleshoot a failure\n\n## Read before guessing\n\n```bash\nsomewhere logs --tail 20 # recent log lines\nsomewhere logs --level error --since 1h # only errors from the last hour\nsomewhere logs --function /api/account # one route\nsomewhere errors # recent runtime failures with stack and path\n```\n\nRead the failure first, then change code.\n\nEvery JSON error from the platform now ships with a `hint` field that names the most relevant `docs` topic.\n\n## Limits the logs name\n\n| Ceiling | Value | Instead |\n|---|---|---|\n| Memory per request | about 256 MB | Stream or process in chunks; move heavy work to `sw.jobs` |\n| CPU time per request | about 30 s | Move long computation to `sw.jobs` |\n| Wall-clock time per request | about 300 s | Start the work with `sw.jobs` and return; poll the job |\n\n## Failure 1: FUNCTION_CPU_EXCEEDED or FUNCTION_MEMORY_EXCEEDED\n\nThe caller gets HTTP 500 in the platform's JSON error envelope, `{ ok: false, error, message, request_id }`, with `error` set to `FUNCTION_MEMORY_EXCEEDED` or `FUNCTION_CPU_EXCEEDED`, and the same code and message are recorded in the project's logs and errors. The fix is the \"Instead\" column: move the work to `sw.jobs`, or process it in smaller pieces.\n\n## Failure 2: a refused deploy\n\n`SCHEMA_DEPLOY_REFUSED` (409, at deploy) — `db/schema.ts` asked for something the deploy will not do silently\n\nDoes the file path match the URL? `api/users/[id].ts` serves `/api/users/123`. `api/users.ts` serves `/api/users`.\n\nSources (`somewhere docs <topic>`): browser, limits, sw.db, troubleshooting.\n"
26
26
  },
27
27
  {
28
28
  "path": "realtime-and-background/SKILL.md",
29
- "sha256": "7e1011fa760a54a124eb45314f5ab09b5c5a2b7a81e388dfba2c95d3fbb0c883",
30
- "content": "---\nname: realtime-and-background\ndescription: When the page must update without a reload, users need audio/video, or work must run outside one request.\n---\n\n# Live views, call rooms, jobs, queues, cron\n\n## Live view: the page updates when rows change\n\n`sw.db.live(name, sw.db.from(...))` is the live path a signed-in browser can subscribe to.\n\n```ts\n// api/open-notes.ts — the declaration and the SELECT stay server-side\nexport default async function (_req, sw) {\n return Response.json(await sw.db.live('notes.open', sw.db.from('notes', {\n where: { done: false },\n columns: ['id', 'title', 'done', 'created_at'],\n order: [['created_at', 'desc'], ['id', 'asc']],\n limit: 20,\n })))\n}\n\n// browser — the loader re-calls the function, never the database\nimport { watchLive } from '/__sw/live/client.js'\n\nconst stop = watchLive(\n () => fetch('/api/open-notes', { credentials: 'include' }).then(r => r.json()),\n (rows) => render(rows),\n)\n```\n\n## Call room: audio and video\n\nBuild video calling, screen sharing, or live audio rooms.\n\n## Job: slow work with a status\n\nQueue work that shouldn't block a user request. Make handlers idempotent — they may run more than once.\n\n```ts\nconst job = await sw.jobs.create({\n handler: '/api/jobs/process-upload',\n payload: { upload_id: 'u123', user_id: 'u_alice' },\n timeout_seconds: 600\n})\n// job = { job_id: 'j_abc', status: 'queued' }\n```\n\n```ts\nif (!(await sw.jobs.verifyInvocation(req))) {\n return Response.json({ error: 'forbidden' }, { status: 403 })\n}\n```\n\n## Queue: fire and forget\n\nFor fire-and-forget tasks where you don't need to inspect status later. Use sw.jobs if you DO need to look up the result.\n\n## Cron: on a schedule\n\nCustomer recurring schedules are available on Builder and higher. The finest granularity is **one minute** — a 5-field expression has no seconds field\n\n```js\ncron_create({\n project_id: \"my-app\",\n schedule: \"0 9 * * *\", // 5-field cron expression\n timezone: \"America/Los_Angeles\", // optional; defaults to UTC\n handler: \"/api/jobs/daily-digest\",\n payload: { segment: \"daily\" } // optional\n})\n```\n\n```bash\nsomewhere cron run cleanup --project <project> --wait # run once now and wait for the result (id or name)\n```\n\n## Failure 1: REALTIME_RETIRED (410) or CHANNEL_FORBIDDEN (403)\n\nCaller-named channels are retired. This is not a configuration problem and there is no flag to turn them on.\n\n## Failure 2: CRON_SCHEDULE_TOO_FREQUENT\n\nA schedule that fires more often than `min_interval_minutes` is refused when you create or edit it — `CRON_SCHEDULE_TOO_FREQUENT`, with a message naming the plan's interval and the one you asked for.\n\nSources (`somewhere docs <topic>`): calls, cron, live, sw.jobs, sw.queue, troubleshooting.\n"
29
+ "sha256": "ffa18344dae04bb1cefb78d5b8bb0a3911fcea553f8db1aa6179935a4573bd8c",
30
+ "content": "---\nname: realtime-and-background\ndescription: When the page must update without a reload, users need audio/video, or work must run outside one request.\n---\n\n# Live views, call rooms, jobs, queues, cron\n\n## Live view: the page updates when rows change\n\n`sw.db.live(name, sw.db.from(...))` is the live path a signed-in browser can subscribe to.\n\n```ts\n// api/open-notes.ts — the declaration and the SELECT stay server-side\nexport default async function (_req, sw) {\n return Response.json(await sw.db.live('notes.open', sw.db.from('notes', {\n where: { done: false },\n columns: ['id', 'title', 'done', 'created_at'],\n order: [['created_at', 'desc'], ['id', 'asc']],\n limit: 20,\n })))\n}\n\n// browser — the loader re-calls the function, never the database\nimport { watchLive } from '/__sw/live/client.js'\n\nconst stop = watchLive(\n () => fetch('/api/open-notes', { credentials: 'include' }).then(r => r.json()),\n (rows) => render(rows),\n)\n```\n\n## Call room: audio and video\n\nBuild video calling, screen sharing, or live audio rooms.\n\n## Job: slow work with a status\n\nQueue work that shouldn't block a user request. Make handlers idempotent — they may run more than once.\n\n```ts\nconst job = await sw.jobs.create({\n handler: '/api/jobs/summarize-notes',\n idempotency_key: `summary:${user.id}:${operationId}`,\n // user_id comes from the verified session, so the handler can trust it.\n payload: { summary_id: `${user.id}:${operationId}`, user_id: user.id },\n});\n```\n\n```ts\nif (!(await sw.jobs.verifyInvocation(req))) {\n return Response.json({ error: 'forbidden' }, { status: 403 })\n}\n```\n\n## Queue: fire and forget\n\nFor fire-and-forget tasks where you don't need to inspect status later. Use sw.jobs if you DO need to look up the result.\n\n## Cron: on a schedule\n\nSchedules run on Builder and higher. The finest granularity is one minute: a 5-field expression has no seconds field.\n\n```js\ncron_create({\n project_id: \"my-app\",\n schedule: \"0 9 * * *\", // 5-field cron expression\n timezone: \"America/Los_Angeles\", // optional; defaults to UTC\n handler: \"/api/jobs/daily-digest\",\n payload: { segment: \"daily\" } // optional\n})\n```\n\n```bash\nsomewhere cron run cleanup --project <project> --wait # run once now and wait for the result (id or name)\n```\n\n## Failure 1: REALTIME_RETIRED (410) or CHANNEL_FORBIDDEN (403)\n\nCaller-named channels are retired. This is not a configuration problem and there is no flag to turn them on.\n\n## Failure 2: CRON_SCHEDULE_TOO_FREQUENT\n\nA schedule tighter than `min_interval_minutes` is refused when you create or edit it, with `CRON_SCHEDULE_TOO_FREQUENT` naming both intervals.\n\nSources (`somewhere docs <topic>`): calls, cron, live, sw.jobs, sw.queue, troubleshooting.\n"
31
31
  },
32
32
  {
33
33
  "path": "email-and-test-inbox/SKILL.md",
@@ -1 +1 @@
1
- {"version":3,"file":"skills-pack.generated.js","sourceRoot":"","sources":["../../src/lib/skills-pack.generated.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,kBAAkB;IAC1B,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,kEAAkE;IAC5E,OAAO,EAAE;QACP;YACE,MAAM,EAAE,6BAA6B;YACrC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,ypEAAypE;SACrqE;QACD;YACE,MAAM,EAAE,yBAAyB;YACjC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,48DAA48D;SACx9D;QACD;YACE,MAAM,EAAE,wBAAwB;YAChC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,kjEAAkjE;SAC9jE;QACD;YACE,MAAM,EAAE,0BAA0B;YAClC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,s8DAAs8D;SACl9D;QACD;YACE,MAAM,EAAE,kCAAkC;YAC1C,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,0yFAA0yF;SACtzF;QACD;YACE,MAAM,EAAE,+BAA+B;YACvC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,+5CAA+5C;SAC36C;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"skills-pack.generated.js","sourceRoot":"","sources":["../../src/lib/skills-pack.generated.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,kBAAkB;IAC1B,SAAS,EAAE,gBAAgB;IAC3B,QAAQ,EAAE,kEAAkE;IAC5E,OAAO,EAAE;QACP;YACE,MAAM,EAAE,6BAA6B;YACrC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,8oEAA8oE;SAC1pE;QACD;YACE,MAAM,EAAE,yBAAyB;YACjC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,ggEAAggE;SAC5gE;QACD;YACE,MAAM,EAAE,wBAAwB;YAChC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,mkEAAmkE;SAC/kE;QACD;YACE,MAAM,EAAE,0BAA0B;YAClC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,gwDAAgwD;SAC5wD;QACD;YACE,MAAM,EAAE,kCAAkC;YAC1C,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,myFAAmyF;SAC/yF;QACD;YACE,MAAM,EAAE,+BAA+B;YACvC,QAAQ,EAAE,kEAAkE;YAC5E,SAAS,EAAE,+5CAA+5C;SAC36C;KACF;CACF,CAAC"}
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@somewhere-tech/cli",
3
- "version": "0.37.6",
3
+ "version": "0.37.8",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@somewhere-tech/cli",
9
- "version": "0.37.6",
9
+ "version": "0.37.8",
10
10
  "bundleDependencies": [
11
11
  "@modelcontextprotocol/sdk",
12
12
  "chokidar",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@somewhere-tech/cli",
3
- "version": "0.37.6",
3
+ "version": "0.37.8",
4
4
  "description": "CLI for somewhere.tech — auth, projects, deploy, pull, promote, db, logs, env, MCP bridge.",
5
5
  "keywords": [
6
6
  "somewhere",