Dashboard › cli › Distillation
07e19c52-6be8-40b2-ba67-1c2f9030a196["lore_tm_v1_Bddu2Sb_FaRLeOH_bC9KrX9xttR75xKNr9D8YL37rzI","lore_tm_v1_IVm1YmNjNffgDqNzaWHe1pWrlUJusPJ4T5Tm45-Zye0","lore_tm_v1_2PxTwW5z7yHvOElzjUpfY8yBzhe-35pxhNGlBGO-C40"]
Date: Sep 10, 2026
package.json for the latest scripts.devDependencies, never dependencies, because everything is bundled at build time via esbuild; CI enforces this with pnpm run check:deps.pnpm add -D <package> using the -D flag.node:* APIs and has no Bun runtime; the project was migrated from Bun.per_page value larger than API_MAX_PER_PAGE to the API because the server silently caps it, causing commands to return fewer items than requested.docs/src/fragments/commands/.catch blocks are prohibited in src/ production code. Biomeβs noEmptyBlockStatements detects syntactically empty catch {} blocks, but blocks containing only return and no logging are also prohibited because they silently discard errors and impede debugging." and " for plural grammar; example: "Trace ID and span ID" produces βare required.β*.property.test.ts file exists for a module, unit tests must not re-check the same invariants with hardcoded examples; before adding a unit test, contributors must check whether the companion property file already generates random inputs for that invariant.*.property.test.ts under test/lib/.src/lib/db/.createIsolatedDbContext and DEFAULT_NUM_RUNS from ../../model-based/helpers.js for model-based testing.useTestConfigDir("my-test-prefix-") for isolated test configuration directories.ec83887a16f780f32fba4b7d710bad262dba3a22.packages/cli/.cursor/rules/ultracite.mdc defines βUltracite Rules - AI-Ready Formatter and Linter,β applies to **/*.{ts,tsx,js,jsx,json,jsonc,html,vue,svelte,astro,css,yaml,yml,graphql,gql,md,mdx,grit}, and sets alwaysApply: false.packages/cli/.cursor/rules/ultracite.mdc states the project uses Ultracite, a zero-config Biome preset enforcing strict automated formatting and linting.packages/cli/.cursor/rules/ultracite.mdc: format with npx ultracite fix, check with npx ultracite check, and diagnose setup with npx ultracite doctor; contributors should run npx ultracite fix before committing.unknown over any for genuinely unknown values; use as const for immutable values and literal types; prefer TypeScript narrowing over assertions; replace magic numbers with descriptively named constants.for...of over .forEach() and indexed for loops; use optional chaining ?. and nullish coalescing ??; prefer template literals to concatenation; use destructuring; default to const, use let only for reassignment, and never use var.await promises in async functions and use their return values; prefer async/await over promise chains; handle async errors appropriately with try-catch; never use async functions as Promise executors.console.log, debugger, and alert from production code; throw descriptive Error objects rather than strings or other values; use try-catch meaningfully rather than merely catching and rethrowing; prefer early returns for error cases.rel="noopener" to links using target="_blank"; avoid dangerouslySetInnerHTML unless absolutely necessary; do not use eval() or assign directly to document.cookie; validate and sanitize user input.<Image> instead of <img>.it() or test() blocks; async tests should use async/await rather than done callbacks; committed code must not contain .only or .skip; test suites should remain reasonably flat and avoid excessive describe nesting.packages/cli/.cursor/rules/ultracite.mdc identifies six areas requiring human attention beyond Biome, in order: 1. business-logic correctness and algorithms, 2. meaningful function/variable/type naming, 3. architecture decisions covering component structure, data flow, and API design, 4. edge cases including boundaries and errors, 5. user experience including accessibility, performance, and usability, 6. documentation for complex logic while preferring self-documenting code.