Fix descriptor registry — maps error codes to auto-fix descriptors. Pure functions — no I/O, no side effects.
Fix descriptors describe WHAT to fix, not HOW. The shell layer (boundary.devtools.shell.auto-fix) handles execution.
Fix descriptor registry — maps error codes to auto-fix descriptors. Pure functions — no I/O, no side effects. Fix descriptors describe WHAT to fix, not HOW. The shell layer (boundary.devtools.shell.auto-fix) handles execution.
Pure functions for config diffing, dependency analysis, and formatting. FC/IS: no I/O, no logging.
Pure functions for config diffing, dependency analysis, and formatting. FC/IS: no I/O, no logging.
Pure documentation catalog for in-REPL exploration. Provides (doc :topic) data for Boundary concepts with examples. No I/O, no logging — pure data and transformations.
Pure documentation catalog for in-REPL exploration. Provides (doc :topic) data for Boundary concepts with examples. No I/O, no logging — pure data and transformations.
Classify exceptions into BND-xxx error codes. Pure functions — catalog data loaded once at namespace init via boundary.devtools.error-codes.
Classification strategy (ordered, first match wins):
Classify exceptions into BND-xxx error codes. Pure functions — catalog data loaded once at namespace init via boundary.devtools.error-codes. Classification strategy (ordered, first match wins): 1. ex-data with :boundary/error-code — direct BND code 2. ex-data pattern matching — infer from :type, :schema, :malli/error 3. Message pattern — regex on .getMessage() 4. Exception type — SQLException, ConnectException, etc. 5. Unclassified — nil code
Enrich classified errors with stacktrace, suggestions, fix info, and URLs. Pure functions — no I/O, no side effects.
Each sub-call is wrapped in try/catch for self-protection: if any enrichment step fails, that field is omitted rather than crashing the pipeline.
Enrich classified errors with stacktrace, suggestions, fix info, and URLs. Pure functions — no I/O, no side effects. Each sub-call is wrapped in try/catch for self-protection: if any enrichment step fails, that field is omitted rather than crashing the pipeline.
Rich error output formatting for development mode. Pure functions — catalog data loaded once at namespace init via boundary.devtools.error-codes.
Rich error output formatting for development mode. Pure functions — catalog data loaded once at namespace init via boundary.devtools.error-codes.
Pure functions for the guidance engine. Renders contextual help messages, startup dashboards, and tips. No I/O, no logging — all pure data transformations.
Pure functions for the guidance engine. Renders contextual help messages, startup dashboards, and tips. No I/O, no logging — all pure data transformations.
Pure formatting functions for REPL display of routes, config, and modules. No I/O, no side effects — data in, formatted strings out.
Pure formatting functions for REPL display of routes, config, and modules. No I/O, no side effects — data in, formatted strings out.
Pure functions for mapping prototype specs to scaffolder contexts and migration definitions. Delegates to scaffolder's template functions for context building to ensure generated output matches what generators expect.
Pure functions for mapping prototype specs to scaffolder contexts and migration definitions. Delegates to scaffolder's template functions for context building to ensure generated output matches what generators expect.
Pure functions for recording session data structures. No I/O, no atoms — just data transformations.
Pure functions for recording session data structures. No I/O, no atoms — just data transformations.
Pure functions for manipulating Reitit route data structures. All functions take and return route trees (vectors of [path handler-map]).
Pure functions for manipulating Reitit route data structures. All functions take and return route trees (vectors of [path handler-map]).
Pure functions for Malli schema exploration: pretty-printing, diffing, and example generation. No I/O, no side effects — schema in, formatted strings or data out.
Pure functions for Malli schema exploration: pretty-printing, diffing, and example generation. No I/O, no side effects — schema in, formatted strings or data out.
Pure analysis of security configuration. FC/IS: no I/O, no logging.
Pure analysis of security configuration. FC/IS: no I/O, no logging.
Stack trace filtering and reordering for development error output. Pure functions — no I/O, no side effects.
Stack trace filtering and reordering for development error output. Pure functions — no I/O, no side effects.
Pure functions for analyzing project state. Determines 'what should you do next?' based on project state data. No I/O — accepts pre-collected state data as arguments.
Pure functions for analyzing project state. Determines 'what should you do next?' based on project state data. No I/O — accepts pre-collected state data as arguments.
Error code catalog for Boundary. Loads from the shared EDN resource so the Babashka CLI and JVM runtime share one source of truth.
Not under core/ deliberately — loading a resource requires I/O, which is forbidden in core namespaces by the FC/IS boundary check.
Error code ranges: BND-1xx Configuration errors BND-2xx Validation errors BND-3xx Persistence errors BND-4xx Authentication/authorization errors BND-5xx Interceptor pipeline errors BND-6xx FC/IS boundary violations BND-7xx Tooling / build errors BND-8xx MCP guardrails (boundary-mcp)
Error code catalog for Boundary. Loads from the shared EDN resource so the Babashka CLI and JVM runtime share one source of truth. Not under core/ deliberately — loading a resource requires I/O, which is forbidden in core namespaces by the FC/IS boundary check. Error code ranges: BND-1xx Configuration errors BND-2xx Validation errors BND-3xx Persistence errors BND-4xx Authentication/authorization errors BND-5xx Interceptor pipeline errors BND-6xx FC/IS boundary violations BND-7xx Tooling / build errors BND-8xx MCP guardrails (boundary-mcp)
Protocol definitions for the devtools library.
Protocol definitions for the devtools library.
Malli validation schemas for the devtools library.
Malli validation schemas for the devtools library.
Execute fix descriptors — side-effecting operations. This is a shell namespace: it runs migrations, sets env vars, etc. The safety gate (safe? false → always confirm) is never overridden by guidance level.
Execute fix descriptors — side-effecting operations. This is a shell namespace: it runs migrations, sets env vars, etc. The safety gate (safe? false → always confirm) is never overridden by guidance level.
Reusable Hiccup UI components for the dev dashboard.
Reusable Hiccup UI components for the dev dashboard.
Dashboard shell: HTML wrapper, sidebar, top bar.
Dashboard shell: HTML wrapper, sidebar, top bar.
Dashboard page for configuration viewing and editing.
Dashboard page for configuration viewing and editing.
Module documentation viewer for the dev dashboard. Serves README.md and AGENTS.md from libs/<module>/.
Module documentation viewer for the dev dashboard. Serves README.md and AGENTS.md from libs/<module>/.
Dashboard page for Jobs & Queues monitoring.
Dashboard page for Jobs & Queues monitoring.
Dashboard page for Security Status overview.
Dashboard page for Security Status overview.
Integrant component for the dev dashboard HTTP server on port 9999.
Integrant component for the dev dashboard HTTP server on port 9999.
Post-reset namespace scanner for FC/IS violations. Only detects BND-601: core namespace importing shell namespace via :require. BND-602 (core uses I/O) is detected statically by bb check:fcis.
Post-reset namespace scanner for FC/IS violations. Only detects BND-601: core namespace importing shell namespace via :require. BND-602 (core uses I/O) is detected statically by bb check:fcis.
Dev-mode HTTP error enrichment middleware. Positioned INSIDE wrap-enhanced-exception-handling. Catches exceptions, runs the error pipeline, and re-throws with :dev-info attached to ex-data so the outer middleware can include it in the RFC 7807 response.
Dev-mode HTTP error enrichment middleware. Positioned INSIDE wrap-enhanced-exception-handling. Catches exceptions, runs the error pipeline, and re-throws with :dev-info attached to ex-data so the outer middleware can include it in the RFC 7807 response.
Orchestrates module generation: scaffold -> migrate -> reset -> summary.
Orchestrates module generation: scaffold -> migrate -> reset -> summary.
Stateful recording management: session atom, capture middleware, file I/O.
Stateful recording management: session atom, capture middleware, file I/O.
Shell REPL helpers that access the running Integrant system. These functions take system components as arguments — they do NOT directly access the running system. Wiring happens in dev/repl/user.clj.
Shell REPL helpers that access the running Integrant system. These functions take system components as arguments — they do NOT directly access the running system. Wiring happens in dev/repl/user.clj.
REPL error handler — runs the error pipeline and stores the last exception. This is a shell namespace: it performs I/O (printing). Usage from user.clj: Wrap public REPL functions with try/catch that calls handle-repl-error! The zero-arity (fix!) reads from last-exception*.
REPL error handler — runs the error pipeline and stores the last exception. This is a shell namespace: it performs I/O (printing). Usage from user.clj: Wrap public REPL functions with try/catch that calls handle-repl-error! The zero-arity (fix!) reads from last-exception*.
Stateful router management for runtime route/tap modifications. Tracks dynamic routes and taps in atoms, rebuilds the handler via platform's swap-handler!.
Stateful router management for runtime route/tap modifications. Tracks dynamic routes and taps in atoms, rebuilds the handler via platform's swap-handler!.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |