Why an audit comes first
Shared context changes what your code can safely assume. Between requests, the platform resets only what it can see from outside your modules — globals andprocess.env. It does not reset module-level variables, closures, the contents of objects, or properties added to process, module, or console. Code written for a fresh context on every request can leak shopper or request data into a later request, or keep work running past the point where the platform considers the request finished. See Calling External APIs Safely and Avoiding Unhandled Promise Rejections for related patterns that this audit also checks for.
Before turning on shared context for any manifest, audit the app for these patterns and fix what needs fixing.
Run the audit
The audit prompt lives on its own page: Arc.js Shared-Context Audit Prompt. Open it and copy everything on the page into an AI coding agent (Claude Code, Cursor, GitHub Copilot, or similar), then run it from the root of your Arc.js app repository — the folder containingassets/functions.json and assets/src/. The agent reads your source, produces a report (saved to ARCJS-AUDIT.md) with a verdict for each source manifest (READY, MUST CHANGE, KEEP FRESH, NOTHING WIRED, or NOT AUDITED), then asks which changes you want to apply and makes only the ones you approve. It does not upload or deploy anything.
Without an agent, use the same page as a manual checklist.
Once a manifest is READY, the prompt walks through declaring "contextReuse": "warm" for that manifest in kibo.json at the project root, next to Gruntfile.js.
To fetch the prompt as plain Markdown instead of opening it in a browser — for example to pipe it straight into an agent from the command line — append .md to the page URL:
Related reading
- Arc.js Shared-Context Audit Prompt — the full audit prompt, as plain Markdown.
- Programming Patterns — execution time limits, outbound call timeouts, and the promise/callback patterns this audit checks for.
- The Structure of an API Extension Application — where
kibo.jsonsits relative toGruntfile.js,functions.json, and the rest of the project. - Action Management JSON Editor — per-action settings such as
timeoutMillisecondsthat also affect how long a shared context stays occupied.

