pointcast 0.5.0
Extension, CLI and integrations at 0.5.0.
Debug capture: the errors around what you point at (D13)
- While you record, Pointcast keeps what fails on the page: uncaught errors and unhandled rejections (message, file:line, first stack lines),
console.errorandconsole.warn, and requests that fail or answer 400+ (method, path, status). When you point at something broken, the spec lists the errors from 5 s before to 3 s after, under the element:- network: `POST /api/export` → 500 (0.6 s before),- uncaught: `TypeError: …` at `src/OrdersTable.tsx:31`. Nothing is added when nothing failed. - Works in voice and typed mode, on local dev hosts and on sites you enabled, and on pages loaded during the recording. The page is only hooked while recording, and its behaviour is unchanged.
- Privacy: never a request or response body, a header or a query value; sensitive field values are replaced everywhere; on enabled sites personal data is redacted as in the page text. Popup → Settings → Capture console and network errors (on by default) turns it off. See PRIVACY.md.
- Session format: events and
session.jsongain an optionalerrorslist (schemaVersionstays 2).pointcast process,get_sessionandget_elementread and render them; older sessions and readers are unaffected. - Playground:
dev/playground/errors.html, a page of broken buttons.
Code pointer: library code stays out of the spec (D9)
- The
find:line names a library component by its package, never by its node_modules path:component `TabItem` (svelte, package `flowbite-svelte`)instead of… in `node_modules/.pnpm/flowbite-svelte@…/dist/tabs/TabItem.svelte:42`. Older sessions render this way too. - Library wrappers (Radix's Primitive, Slot, SlotClone, Presence, Portal…) are skipped before the chain's cap of 3 frames, so the places go to your app's own components, in capture (React, Vue, the bridge) and in rendering.