Skip to main content
BlueprintStep records a single atomic action taken by the Blueprint Analyzer AI agent during a web-navigation run. Each step belongs to exactly one BlueprintRun (cascade-deleted with it) and is sequenced by a monotonically increasing step_number. Steps capture the agent’s reasoning, the page URL at the time of execution, the action it chose (e.g. click, type, scroll), structured action parameters, the raw LLM response, screenshot storage references, and an outcome flag — forming the complete execution trace for a run. The table is written exclusively by the blueprint-analyzer.service.ts pipeline; no user-facing PATCH endpoint exists.
Internal object. Not currently exposed on the public REST API. The operations below describe the intended contract.

API operations

Data model

Attributes

Relationships

System-computed

  • blueprint_step_id — generated by gen_random_uuid() at INSERT, never caller-supplied
  • created_at — set to new Date() by MikroORM onCreate hook
  • updated_at — set to new Date() by both onCreate and onUpdate hooks
  • deleted_at — soft-delete sentinel; written by the service layer when soft-deleting a step or its parent run
  • step_number — assigned by blueprint-analyzer.service.ts before INSERT; not derived from a DB sequence but from the service’s step counter
  • Cascade delete — when the parent BlueprintRun is deleted (hard or via cascade), all BlueprintStep rows are hard-deleted by the DB foreign-key constraint (ON DELETE CASCADE)

Example

Source: apps/api/src/database/entities/BlueprintStep.ts · domain: automation · tier: Activity