# Atloria (self dogfood) # $convertPreElement **Kind:** Function **Source:** `atloria-monorepo/packages/editor/src/plugins/codeblock/CodeBlockNode.tsx` (line 298) Converts a
 HTML element into a CodeBlockNode.
Extracts the code content, language, and meta information from the element's attributes.
The language is determined from the class attribute (e.g., class="language-javascript") or
the data-language attribute if available.

## Signature

```ts
function $convertPreElement(element: Element): DOMConversionOutput
```

## Parameters

| Name | Type |
|---|---|
| `element` | `Element` |

**Returns:** `DOMConversionOutput`



# ABORT_CONDITIONS

**Kind:** Constant

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/common.types.ts` (line 349)



# accept

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/invitation/invitation.controller.ts` (line 35)

## Endpoint

`POST /invitations/:token/accept`

| Parameter | In | Type | Required |
|---|---|---|---|
| `token` | query | `string` | ✓ |

## Referenced By

- `InvitationController` (MODULE_DECLARES)



# AcceptInvitationBodyDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/invitation/invitation.controller.ts` (line 7)

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `password` | `string` |



# AcceptInvitationDto

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/invitation/invitation.service.ts` (line 29)

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `password` | `string` |



# AccessibilityResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 28)

Accessibility check result

## Properties

| Property | Type |
|---|---|
| `violations` | `AccessibilityViolation[]` |
| `passes` | `number` |
| `incomplete` | `number` |



# AccordionItemProps

**Kind:** Interface

**Source:** `atloria-monorepo/templates/site-bootstrap/src/components/shared/accordion-item.tsx` (line 13)

## Properties

| Property | Type |
|---|---|
| `questionKey` | `string` |
| `answerKey` | `string` |
| `defaultOpen` | `boolean` |



# AccordionItemProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/accordion-item.tsx` (line 13)

## Properties

| Property | Type |
|---|---|
| `questionKey` | `string` |
| `answerKey` | `string` |
| `defaultOpen` | `boolean` |



# ActionExecutorService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/action-executor.service.ts` (line 57)

Service for executing pre-capture actions on Playwright pages

Supports 13 action types:
- click, dblclick: Click interactions
- type, fill: Text input
- press: Keyboard keys
- wait: Duration or selector waits
- scroll: Scroll to element or page bottom
- hover, focus, blur: Element state changes
- select: Dropdown selection
- navigate: Page navigation
- frame: Iframe context switching

And 5 wait condition types:
- selector, timeout, networkIdle, loadState, function

`ActionExecutorService` executes a configured list of **pre-capture actions** against a Playwright `Page` (or an active `Frame`) before a screenshot is taken. It provides a single, validated execution pipeline that maps high-level action definitions (click, type, wait, navigate, frame, etc.) into concrete Playwright calls. This service typically sits inside the screenshot worker flow, ensuring pages are in the desired state (navigation complete, elements ready, UI interacted with) prior to capture.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `executeActions` | `executeActions(page: Page, actions: ScreenshotActionDto[] | undefined)` | `Promise` |
| `executeActionsWithHook` | `executeActionsWithHook(page: Page, actions: ScreenshotActionDto[] | undefined, onAfterEach: (action: ScreenshotActionDto, index: number) => Promise)` | `Promise` |
| `executeAction` | `executeAction(page: Page, action: ScreenshotActionDto, index: number, context: ActionContext)` | `Promise` |
| `executeWaitFor` | `executeWaitFor(page: Page, waitFor: WaitForDto | undefined)` | `Promise` |
| `validateAction` | `validateAction(action: ScreenshotActionDto)` | `void` |
| `captureDOMState` | `captureDOMState(page: Page)` | `Promise` |

## Diagram

```mermaid
sequenceDiagram
  participant Orchestrator as Screenshot Orchestrator
  participant Executor as ActionExecutorService
  participant Page as Playwright Page
  participant Frame as Playwright Frame

  Orchestrator->>Executor: execute(page, actions[])
  loop for each action
    alt action.type == "frame"
      Executor->>Page: frameLocator()/frame()
      Page-->>Executor: Frame context
      Executor->>Frame: set active context
    else action targets frame context
      Executor->>Frame: perform action (click/type/wait/etc.)
    else action targets page context
      Executor->>Page: perform action (navigate/wait/scroll/etc.)
    end
  end
  Executor-->>Orchestrator: done (page ready for capture)
```

## Usage

```ts
import { Injectable } from '@nestjs/common';
import { chromium, type Page } from 'playwright';
import { ActionExecutorService } from './services/action-executor.service';

@Injectable()
export class ScreenshotJobRunner {
  constructor(private readonly actionExecutor: ActionExecutorService) {}

  async run() {
    const browser = await chromium.launch();
    const page: Page = await (await browser.newContext()).newPage();

    // Example action list (shape may vary slightly based on your DTOs)
    const actions = [
      { type: 'navigate', url: 'https://example.com' },
      { type: 'wait', condition: { type: 'loadState', state: 'networkidle' } },
      { type: 'click', selector: 'text=Sign in' },
      { type: 'fill', selector: 'input[name="email"]', value: 'user@example.com' },
      { type: 'press', selector: 'input[name="password"]', key: 'Tab' },
      { type: 'type', selector: 'input[name="password"]', value: 'correct horse battery staple' },
      { type: 'click', selector: 'button[type="submit"]' },
      { type: 'wait', condition: { type: 'selector', selector: '[data-testid="dashboard"]' } },
      { type: 'scroll', to: 'bottom' },
      // Switch into an iframe, then interact within it
      { type: 'frame', selector: 'iframe#billing' },
      { type: 'select', selector: 'select#plan', value: 'pro' },
      { type: 'hover', selector: '[data-testid="plan-details"]' },
    ];

    await this.actionExecutor.execute(page, actions);

    // Now page is prepared for capture
    const screenshot = await page.screenshot({ fullPage: true });

    await browser.close();
    return screenshot;
  }
}
```

## AI Coding Instructions

- Keep the action execution path **strictly deterministic**: validate action payloads up-front and route by `action.type` with a single dispatcher to avoid divergent behavior.
- When implementing waits, prefer explicit `wait` actions with supported condition types (`selector`, `timeout`, `networkIdle`, `loadState`, `function`) and avoid hidden implicit sleeps inside other actions.
- Be careful with **frame context**: `frame` actions should update the active execution target (Page vs Frame). Ensure subsequent selector-based actions operate in the intended context.
- Integrate new action types by mapping directly to Playwright primitives and preserving consistent error messages (include `action.type` and selector/url where applicable) to aid job debugging.



# ActionType

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 38)

## Definition

```ts
typeof ACTION_TYPES[number]
```



# ACTION_TYPES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 32)



# ActivityController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/activity/activity.controller.ts` (line 11)

## Relationships

- MODULE_DECLARES → `list`
- MODULE_DECLARES → `getDocumentActivities`
- MODULE_DECLARES → `getProjectActivities`
- MODULE_DECLARES → `getRecentProjects`
- MODULE_DECLARES → `getRecentDocuments`
- DEPENDS_ON → `activityservice`



# ActivityModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/activity/activity.module.ts` (line 8)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_DECLARES → `activitycontroller`
- MODULE_PROVIDES → `activityservice`
- MODULE_EXPORTS → `activityservice`



# ActivityService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/activity/activity.service.ts` (line 7)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `log` | `log(dto: CreateActivityDto)` | `Promise` |
| `getActivities` | `getActivities(filters: ActivityFiltersDto)` | `unknown` |
| `getDocumentActivities` | `getDocumentActivities(documentId: string)` | `unknown` |
| `getProjectActivities` | `getProjectActivities(projectId: string)` | `unknown` |
| `trackActivity` | `trackActivity(userId: string, entityType: 'PROJECT' | 'DOCUMENT', entityId: string, actionType: 'VIEW' | 'EDIT' | 'CREATE')` | `unknown` |
| `getRecentProjects` | `getRecentProjects(userId: string, limit: unknown)` | `unknown` |
| `getRecentDocuments` | `getRecentDocuments(userId: string, limit: unknown)` | `unknown` |
| `getRecentDocumentsByProject` | `getRecentDocumentsByProject(userId: string, projectId: string, limit: unknown)` | `unknown` |
| `clearActivity` | `clearActivity(userId: string, entityType: 'PROJECT' | 'DOCUMENT')` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`



# AdaptivePromptOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/adaptive-prompt.ts` (line 30)

## Properties

| Property | Type |
|---|---|
| `workspace` | `string` |
| `toolGuide` | `string` |
| `repoMap` | `string` |
| `projectContext` | `string` |
| `memoryContext` | `string` |
| `deferredToolsReminder` | `string` |
| `skillDescriptions` | `string` |
| `pluginCommands` | `string` |
| `domainRules` | `string[]` |
| `modelProfile` | `ModelCapabilityProfile` |
| `mode` | `TaskMode` |



# addCodeSamplesToSpec

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/openapi/code-samples.ts` (line 56)

Attach `x-codeSamples` to every operation in the spec (mutates + returns it). Requires the
full spec so `$ref` request/response schemas resolve into example payloads.

## Signature

```ts
function addCodeSamplesToSpec(spec: any, targets: string[]): any
```

## Parameters

| Name | Type |
|---|---|
| `spec` | `any` |
| `targets` | `string[]` |

**Returns:** `any`



# addComment

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Add comment to post

## Relationships

- TYPE_OF → `Comment`

## Referenced By

- `Mutation` (CALLS_API)



# AdditionalLexicalNode

**Kind:** Type

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 90)

## Definition

```ts
KlassConstructor | LexicalNodeReplacement
```



# AfterTurnCallback

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 210)

Callback fired after each model turn completes.
Use for live monitoring / progress logging.

## Definition

```ts
(event: {
  turnNumber: number;
  toolsUsed: string[];
  loopState: Readonly;
  /** Failing quality gate IDs (empty if all pass or no provider) */
  failingGates: string[];
}) => void
```



# agentCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/agent.command.ts` (line 143)

## Signature

```ts
async function agentCommand(options: AgentCommandOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `options` | `AgentCommandOptions` |

**Returns:** `Promise`



# AgentCommandOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/commands/agent.command.ts` (line 93)

## Properties

| Property | Type |
|---|---|
| `model` | `string` |
| `workspace` | `string` |
| `maxTurns` | `string` |
| `autonomous` | `boolean` |
| `verbose` | `boolean` |
| `project` | `string` |
| `org` | `string` |
| `super` | `boolean` |
| `routingTable` | `string` |
| `continue` | `string | boolean` |
| `mode` | `string` |
| `remoteTriggers` | `boolean` |



# AgentContextService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-10-generation/agent-context.service.ts` (line 1)



# AgentNoteStore

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 233)

Store for session-scoped agent notes.
Shared between the note tool and the TurnHook.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `add` | `add(turn: number, content: string)` | `AgentNote` |
| `getAll` | `getAll()` | `AgentNote[]` |
| `count` | `count()` | `number` |
| `format` | `format()` | `string` |



# aggregateResults

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 146)

Aggregate parse results for assertions

## Signature

```ts
function aggregateResults(results: ParseResult[]): {
  totalFiles: number;
  successfulFiles: number;
  failedFiles: number;
  skippedFiles: number;
  totalEntities: number;
  totalRelationships: number;
  totalErrors: number;
  totalWarnings: number;
  entitiesByType: Record;
  relationshipsByType: Record;
}
```

## Parameters

| Name | Type |
|---|---|
| `results` | `ParseResult[]` |

**Returns:** `{
  totalFiles: number;
  successfulFiles: number;
  failedFiles: number;
  skippedFiles: number;
  totalEntities: number;
  totalRelationships: number;
  totalErrors: number;
  totalWarnings: number;
  entitiesByType: Record;
  relationshipsByType: Record;
}`



# AIEnhancementOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/utils/ai-enhancement.ts` (line 18)

## Properties

| Property | Type |
|---|---|
| `enableCompetitorResearch` | `boolean` |
| `maxCompetitors` | `number` |
| `cacheResults` | `boolean` |



# AIProvider

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 7)

## Properties

| Property | Type |
|---|---|
| `name` | `AIProviderName` |
| `available` | `boolean` |
| `displayName` | `string` |
| `description` | `string` |



# AIProviderError

**Kind:** Class

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/utils/errors.ts` (line 118)

Error thrown when AI provider fails

**Extends:** `PipelineError`

## Properties

| Property | Type |
|---|---|
| `provider` | `'claude' | 'openai' | 'azure-responses'` |
| `statusCode` | `number` |



# AIProviderName

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/ai/interfaces/ai-types.ts` (line 1)

## Definition

```ts
'azure-claude' | 'azure-openai' | 'azure-codex' | 'azure-gpt52' | 'claude' | 'openai' | 'codex'
```



# AIProviderName

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 5)

AI Settings & Configuration Types

## Definition

```ts
'azure-claude' | 'azure-openai' | 'claude' | 'openai'
```



# always

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/prompt-sections.ts` (line 86)

Always include

## Signature

```ts
function always(_ctx: SectionContext): boolean
```

## Parameters

| Name | Type |
|---|---|
| `_ctx` | `SectionContext` |

**Returns:** `boolean`



# AnalysisController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.controller.ts` (line 5)

## Relationships

- MODULE_DECLARES → `startAnalysis`
- MODULE_DECLARES → `getJobStatus`
- MODULE_DECLARES → `getProjectJobs`
- DEPENDS_ON → `analysisservice`



# AnalysisModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.module.ts` (line 7)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `gitmodule`
- MODULE_DECLARES → `analysiscontroller`
- MODULE_PROVIDES → `analysisservice`
- MODULE_EXPORTS → `analysisservice`



# AnalysisService

**Kind:** Service

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.service.ts` (line 17)

Analysis orchestrator service

This service coordinates the entire code analysis pipeline:
1. Clone repository (with mono-repo support)
2. Analyze codebase using file optimization techniques
3. Generate UI documentation and element extraction
4. Create Playwright tests
5. Track progress in database
6. Cleanup after completion

## Methods

| Method | Signature | Returns |
|---|---|---|
| `startAnalysis` | `startAnalysis(dto: StartAnalysisDto)` | `Promise` |
| `getJobStatus` | `getJobStatus(jobId: string)` | `unknown` |
| `getProjectJobs` | `getProjectJobs(projectId: string)` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `gitservice`



# AngularParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/frontend-parser/src/parsers/angular.parser.ts` (line 61)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `version` | `string` |
| `supportedPatterns` | `string[]` |



# AngularParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/frontend/angular.parser.ts` (line 91)

Angular Parser

Pure TypeScript class that parses Angular TypeScript files.
No NestJS dependencies required.

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `version` | `string` |
| `supportedPatterns` | `string[]` |



# apiAuthenticationTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/api-authentication.template.ts` (line 3)



# APIEndpointEntity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 453)

API Endpoint entity

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.API_ENDPOINT` |
| `method` | `'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD'` |
| `path` | `string` |
| `pathParams` | `ParameterDefinition[]` |
| `queryParams` | `ParameterDefinition[]` |
| `requestBody` | `SchemaDefinition` |
| `responses` | `ResponseDefinition[]` |
| `authentication` | `AuthenticationInfo` |
| `rateLimit` | `RateLimitInfo` |
| `middleware` | `string[]` |
| `controller` | `string` |
| `operationId` | `string` |



# ApiError

**Kind:** Class

**Source:** `atloria-monorepo/apps/web/src/lib/api-client.ts` (line 92)

API error carrying the HTTP status so callers can branch on it.
402 (out of credits) must render an upgrade CTA, never a blind Retry.

**Extends:** `Error`



# ApiExecFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/mcp-toolset.ts` (line 43)

Optional live-API execution backend. Injected the same way as askFn so the toolset stays PURE
(no fetch/dns/Nest here) — all outbound HTTP, SSRF validation, method allow-listing and
server-side auth injection live in the executor the API layer builds (api-executor.ts). Present
only when the project has opted into a Live API target, which is what gates the `call_operation`
tool below.

## Definition

```ts
(input: {
  method: string;
  path: string;
  pathParams?: Record;
  query?: Record;
  body?: unknown;
}) => Promise<{ status: number; statusText: string; headers: Record; body: unknown }>
```



# APIExplorerPageGenerator

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/generators/api-explorer-page.generator.ts` (line 58)

API Explorer Page Generator

## Methods

| Method | Signature | Returns |
|---|---|---|
| `generate` | `generate(entities: Entity[], _relationships: Relationship[])` | `Promise` |



# API_URL

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 16)

Shared types + design tokens for the Support Desk shell.

The desk codes against the parallel backend contract:
  GET  desk/:projectId/counts
  GET  desk/:projectId/threads?bucket=...&limit=50
  GET  desk/:projectId/threads/:id
  POST desk/:projectId/threads/:id/transition {action, snoozedUntil?}
  POST desk/:projectId/threads/:id/reply {body, internal?, andDone?}
  POST desk/:projectId/threads/:id/duplicate {intoTicketNumber}

Chip palettes intentionally mirror apps/web/src/app/app/settings/issues/all/page.tsx
so tickets look identical across the Issues pages and the Desk.



# AppController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/app.controller.ts` (line 4)

## Relationships

- MODULE_DECLARES → `getHealth`
- MODULE_DECLARES → `getInfo`
- DEPENDS_ON → `appservice`



# AppController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api-schema-parser/src/app.controller.ts` (line 14)

## Relationships

- MODULE_DECLARES → `getHealth`
- MODULE_DECLARES → `getParsers`
- DEPENDS_ON → `appservice`



# applyAutoLayout

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Graph/graphUtils.ts` (line 206)

Apply auto-layout using dagre

## Signature

```ts
function applyAutoLayout(nodes: GraphNode[], edges: GraphEdge[]): { nodes: GraphNode[]; edges: GraphEdge[] }
```

## Parameters

| Name | Type |
|---|---|
| `nodes` | `GraphNode[]` |
| `edges` | `GraphEdge[]` |

**Returns:** `{ nodes: GraphNode[]; edges: GraphEdge[] }`



# applyCuration

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/curation.ts` (line 79)

## Signature

```ts
function applyCuration(navMap: T, curation: TechdocsCuration): T
```

## Parameters

| Name | Type |
|---|---|
| `navMap` | `T` |
| `curation` | `TechdocsCuration` |

**Returns:** `T`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/frontend-parser/src/app.module.ts` (line 16)

## Relationships

- MODULE_PROVIDES → `reactparser`
- MODULE_PROVIDES → `nextjsparser`
- MODULE_PROVIDES → `vueparser`
- MODULE_PROVIDES → `angularparser`
- MODULE_EXPORTS → `reactparser`
- MODULE_EXPORTS → `nextjsparser`
- MODULE_EXPORTS → `vueparser`
- MODULE_EXPORTS → `angularparser`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/config-docs-parser/src/app.module.ts` (line 21)

## Relationships

- MODULE_DECLARES → `healthcontroller`
- MODULE_PROVIDES → `markdownparser`
- MODULE_PROVIDES → `mdxparser`
- MODULE_PROVIDES → `envparser`
- MODULE_PROVIDES → `yamlparser`
- MODULE_PROVIDES → `jsonconfigparser`
- MODULE_PROVIDES → `parserregistryservice`
- MODULE_EXPORTS → `markdownparser`
- MODULE_EXPORTS → `mdxparser`
- MODULE_EXPORTS → `envparser`
- MODULE_EXPORTS → `yamlparser`
- MODULE_EXPORTS → `jsonconfigparser`
- MODULE_EXPORTS → `parserregistryservice`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/database-parser/src/app.module.ts` (line 7)

## Relationships

- MODULE_PROVIDES → `prismaparser`
- MODULE_PROVIDES → `typeormparser`
- MODULE_PROVIDES → `sequelizeparser`
- MODULE_PROVIDES → `migrationparser`
- MODULE_EXPORTS → `prismaparser`
- MODULE_EXPORTS → `typeormparser`
- MODULE_EXPORTS → `sequelizeparser`
- MODULE_EXPORTS → `migrationparser`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/backend-parser/src/app.module.ts` (line 16)

## Relationships

- MODULE_PROVIDES → `nestjsparser`
- MODULE_PROVIDES → `expressparser`
- MODULE_PROVIDES → `fastapiparser`
- MODULE_PROVIDES → `djangoparser`
- MODULE_PROVIDES → `backendparserservice`
- MODULE_EXPORTS → `nestjsparser`
- MODULE_EXPORTS → `expressparser`
- MODULE_EXPORTS → `fastapiparser`
- MODULE_EXPORTS → `djangoparser`
- MODULE_EXPORTS → `backendparserservice`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/app.module.ts` (line 24)

## Relationships

- MODULE_IMPORTS → `queuemodule`
- MODULE_IMPORTS → `knowledgegraphmodule`
- MODULE_IMPORTS → `orchestratormodule`
- MODULE_IMPORTS → `integrationmodule`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api-schema-parser/src/app.module.ts` (line 17)

## Relationships

- MODULE_DECLARES → `appcontroller`
- MODULE_PROVIDES → `appservice`
- MODULE_PROVIDES → `openapiparser`
- MODULE_PROVIDES → `graphqlparser`
- MODULE_PROVIDES → `grpcparser`
- MODULE_EXPORTS → `openapiparser`
- MODULE_EXPORTS → `graphqlparser`
- MODULE_EXPORTS → `grpcparser`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/app.module.ts` (line 13)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `playwrightmodule`
- MODULE_IMPORTS → `storagemodule`
- MODULE_IMPORTS → `screenshotmodule`
- MODULE_IMPORTS → `pdfmodule`
- MODULE_IMPORTS → `discoverymodule`
- MODULE_DECLARES → `appcontroller`
- MODULE_PROVIDES → `appservice`



# AppService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api-schema-parser/src/app.service.ts` (line 13)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getHealth` | `getHealth()` | `{ status: string; parsers: string[]; version: string }` |
| `getSupportedParsers` | `getSupportedParsers()` | `Array<{
    name: string;
    version: string;
    patterns: string[];
  }>` |



# assembleSite

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/assembler.ts` (line 36)

Assemble a complete site from config.

## Signature

```ts
async function assembleSite(config: SiteAssemblyConfig, deps: AssemblerDeps): Promise
```

## Parameters

| Name | Type |
|---|---|
| `config` | `SiteAssemblyConfig` |
| `deps` | `AssemblerDeps` |

**Returns:** `Promise`



# AssemblyError

**Kind:** Class

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/errors.ts` (line 9)

**Extends:** `Error`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `toJSON` | `toJSON()` | `void` |



# AssemblyStage

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/types.ts` (line 87)

## Definition

```ts
| 'validate'
  | 'copy-template'
  | 'copy-sections'
  | 'generate-landing-page'
  | 'generate-main'
  | 'generate-app'
  | 'generate-i18n'
  | 'generate-locales'
  | 'verify'
```



# assertNoAccessibilityViolations

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 99)

Assert no accessibility violations (WCAG AA by default)

## Signature

```ts
async function assertNoAccessibilityViolations(page: Page, options: {
    level?: WCAGLevel;
    include?: string[];
    exclude?: string[];
    disabledRules?: string[];
    allowedViolations?: string[];
  }): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |
| `options` | `{
    level?: WCAGLevel;
    include?: string[];
    exclude?: string[];
    disabledRules?: string[];
    allowedViolations?: string[];
  }` |

**Returns:** `Promise`



# Atloria.CSharpParser

**Kind:** Module

**Source:** `atloria-monorepo/libs/parser-core/src/dotnet-bridge/Atloria.CSharpParser/Atloria.CSharpParser.csproj` (line 1)

.NET Exe project (C#)

## Relationships

- DEPENDS_ON → `Microsoft.CodeAnalysis.CSharp`
- DEPENDS_ON → `System.Text.Json`



# Audience

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 45)

Audience types define who the documentation is intended for
Note: Matches Prisma schema exactly

## Values

- `TECHNICAL`
- `USER`
- `API`
- `INTERNAL`



# AuthConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.service.ts` (line 19)

## Properties

| Property | Type |
|---|---|
| `loginUrl` | `string` |
| `username` | `string` |
| `password` | `string` |
| `usernameSelector` | `string` |
| `passwordSelector` | `string` |
| `submitSelector` | `string` |
| `successSelector` | `string` |



# Avatar

**Kind:** Component

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/components/Avatar.tsx` (line 16)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `src` | `any` | ✓ | - |
| `alt` | `any` | ✓ | - |
| `size` | `any` | - | "medium" |
| `fallback` | `any` | - | "/default-avatar.png" |

## Diagram

```mermaid
graph TD
    component_Avatar_31a20b94["Avatar"]
    class component_Avatar_31a20b94 rootComponent
```

## Relationships

- USES_HOOK → `useState`



# AzureImageProvider

**Kind:** Class

**Source:** `atloria-monorepo/libs/pme-core/src/providers/azure-image.provider.ts` (line 30)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `generate` | `generate(options: ImageGenerationOptions)` | `Promise` |



# AzureImageProviderConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/providers/azure-image.provider.ts` (line 8)

Azure Image Provider

Thin client for GPT-image-1.5 via Azure OpenAI.
Different API shape from text models — uses the images/generations endpoint.

## Properties

| Property | Type |
|---|---|
| `endpoint` | `string` |
| `apiKey` | `string` |
| `apiVersion` | `string` |
| `deploymentName` | `string` |
| `timeout` | `number` |



# BackendParserService

**Kind:** Service

**Source:** `atloria-monorepo/apps/backend-parser/src/backend-parser.service.ts` (line 31)

Backend Parser Service

Provides a unified interface for all backend parsers.
Automatically selects the appropriate parser based on file type.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `onModuleInit` | `onModuleInit()` | `Promise` |
| `onModuleDestroy` | `onModuleDestroy()` | `Promise` |
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `getParsers` | `getParsers()` | `IParser[]` |
| `getParser` | `getParser(name: string)` | `IParser | undefined` |
| `findParserForFile` | `findParserForFile(filePath: string)` | `IParser | undefined` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `parseFilesGrouped` | `parseFilesGrouped(files: ParseFileInput[])` | `Promise` |
| `getSupportedPatterns` | `getSupportedPatterns()` | `string[]` |
| `getParserMetadata` | `getParserMetadata()` | `Array<{
    name: string;
    version: string;
    supportedPatterns: string[];
  }>` |

## Relationships

- DEPENDS_ON → `nestjsparser`
- DEPENDS_ON → `expressparser`
- DEPENDS_ON → `fastapiparser`
- DEPENDS_ON → `djangoparser`



# BANNED_PHRASES_LIST

**Kind:** Constant

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/brand-voice.guardrail.ts` (line 125)



# BasePage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/base.page.ts` (line 6)

Base page object with common functionality

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `waitForPageLoad` | `waitForPageLoad()` | `Promise` |
| `getURL` | `getURL()` | `string` |
| `isVisible` | `isVisible(selector: string)` | `Promise` |
| `getToast` | `getToast()` | `Locator` |
| `waitForToast` | `waitForToast(expectedText: string)` | `Promise` |
| `getModal` | `getModal()` | `Locator` |
| `closeModal` | `closeModal()` | `Promise` |
| `waitForLoading` | `waitForLoading()` | `Promise` |
| `getPageTitle` | `getPageTitle()` | `Promise` |
| `takeScreenshot` | `takeScreenshot(name: string)` | `Promise` |



# BatchAuthConfigDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 499)

## Properties

| Property | Type |
|---|---|
| `loginUrl` | `string` |
| `username` | `string` |
| `password` | `string` |
| `usernameSelector` | `string` |
| `passwordSelector` | `string` |
| `submitSelector` | `string` |
| `successSelector` | `string` |
| `useSmartDetection` | `boolean` |
| `healthCheck` | `SessionHealthCheckDto` |



# boxToClip

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 36)

Convert a percent box (0-100 of the natural image) into a Playwright clip rect
in PIXELS, framing the target with `padPct` of breathing room on every side and
clamped to the image bounds so the clip never runs off-canvas.

## Signature

```ts
function boxToClip(box: BoxPct, imgW: number, imgH: number, padPct): ClipRect
```

## Parameters

| Name | Type |
|---|---|
| `box` | `BoxPct` |
| `imgW` | `number` |
| `imgH` | `number` |
| `padPct` | `any` |

**Returns:** `ClipRect`



# BrowserType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/screenshot/dto/capture-screenshot.dto.ts` (line 20)

## Values

- `CHROMIUM`
- `FIREFOX`
- `WEBKIT`



# buildContentGenerationPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/coordinator.prompts.ts` (line 156)

## Signature

```ts
function buildContentGenerationPrompt(sectionType: SectionType, docContext: string, config: GenerationConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `sectionType` | `SectionType` |
| `docContext` | `string` |
| `config` | `GenerationConfig` |

**Returns:** `string`



# cancelJob

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 133)

Cancel a job

## Endpoint

`DELETE /api/orchestrator/jobs/:jobId`

| Parameter | In | Type | Required |
|---|---|---|---|
| `jobId` | query | `string` | ✓ |

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# ChangeSeverity

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/generators/versioning/version-diff.ts` (line 22)

Change severity

## Values

- `Major`
- `Minor`
- `Patch`



# checkIfExported

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 433)

Check if a name is exported

## Signature

```ts
function checkIfExported(name: string, exportedNames: Set): boolean
```

## Parameters

| Name | Type |
|---|---|
| `name` | `string` |
| `exportedNames` | `Set` |

**Returns:** `boolean`



# CLAUDE_PROFILE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-profiles.ts` (line 165)

Anthropic Claude (via Azure or direct API).
- No reasoning effort field
- No apply_patch format (uses edit_file natively)
- No tool persistence nudging needed

## Definition

```ts
ModelCapabilityProfile
```



# CloneOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/git/git.service.ts` (line 10)

## Properties

| Property | Type |
|---|---|
| `repoUrl` | `string` |
| `branch` | `string` |
| `folderPath` | `string` |
| `depth` | `number` |



# ContentGenerateFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/tools/generate-content.tool.ts` (line 16)

Content generation function — wraps AzureResponsesProvider.generateJSON().
Injected at tool creation time.

## Definition

```ts
(
  prompt: string,
  systemPrompt: string,
  maxTokens?: number
) => Promise<{ content: string; inputTokens: number; outputTokens: number }>
```



# createBatchJob

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 101)

Create and start a batch screenshot job

POST /api/screenshot/batch

Returns immediately with job ID for polling.
Processing happens asynchronously in the background.

## Endpoint

`POST /screenshot/batch`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# database

**Kind:** Function

**Source:** `atloria-monorepo/libs/database/src/lib/database.ts` (line 1)

## Signature

```ts
function database(): string
```

**Returns:** `string`



# DatabaseModule

**Kind:** Module

**Source:** `atloria-monorepo/libs/database/src/lib/database.module.ts` (line 7)

## Relationships

- MODULE_IMPORTS → `configmodule`
- MODULE_PROVIDES → `prismaservice`
- MODULE_PROVIDES → `redisservice`
- MODULE_EXPORTS → `prismaservice`
- MODULE_EXPORTS → `redisservice`



# DateBadge

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/social-proof/social-proof-timeline.tsx` (line 23)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `dateKey` | `string` | ✓ | - |
| `t` | `Function` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_DateBadge_7efe08da["DateBadge"]
    class component_DateBadge_7efe08da rootComponent
```

## Referenced By

- `MilestoneCard` (RENDERS)



# DateTime

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Custom scalar for date-time

`DateTime` is a custom GraphQL scalar used to represent date-time values in a consistent, API-friendly format. It’s typically serialized as an ISO-8601 string in responses and parsed/validated on input to ensure clients and services exchange timestamps reliably across the system.

## Diagram

```mermaid
graph LR
  Client[GraphQL Client] -->|Query/Mutation with DateTime| API[GraphQL API]
  API -->|Parse & validate| Scalar[DateTime Scalar]
  Scalar -->|Convert to JS Date / internal representation| Resolvers[Resolvers]
  Resolvers -->|Return DateTime| Scalar
  Scalar -->|Serialize ISO-8601 string| Client
```

## Usage

```ts
import { GraphQLScalarType, Kind } from "graphql";

// Example DateTime scalar implementation (ISO-8601)
export const DateTime = new GraphQLScalarType({
  name: "DateTime",
  description: "Custom scalar for date-time",
  serialize(value: unknown): string {
    const date = value instanceof Date ? value : new Date(String(value));
    if (Number.isNaN(date.getTime())) throw new TypeError("DateTime cannot serialize invalid date");
    return date.toISOString();
  },
  parseValue(value: unknown): Date {
    const date = new Date(String(value));
    if (Number.isNaN(date.getTime())) throw new TypeError("DateTime cannot parse invalid date");
    return date;
  },
  parseLiteral(ast): Date {
    if (ast.kind !== Kind.STRING) throw new TypeError("DateTime must be a string literal");
    const date = new Date(ast.value);
    if (Number.isNaN(date.getTime())) throw new TypeError("DateTime cannot parse invalid date");
    return date;
  },
});

// Example usage in schema (SDL):
// scalar DateTime
// type Event { id: ID!, startsAt: DateTime! }

// Example resolver returning a JS Date (will serialize to ISO string)
export const resolvers = {
  DateTime,
  Query: {
    serverTime: () => new Date(),
  },
  Mutation: {
    createEvent: (_: unknown, args: { startsAt: Date }) => ({
      id: "evt_123",
      startsAt: args.startsAt, // parsed by DateTime.parseValue
    }),
  },
};
```

## AI Coding Instructions

- Treat `DateTime` values as ISO-8601 strings at the GraphQL boundary; convert to `Date` (or your internal time type) inside resolvers/services.
- Validate inputs aggressively (`Invalid Date` checks) to avoid silently accepting malformed timestamps and propagating bad data.
- Be explicit about timezone behavior: prefer `toISOString()` (UTC) for serialization to keep client/server consistent.
- When integrating with DB/ORM layers, standardize on one representation (e.g., store as UTC, return `Date` objects to GraphQL so the scalar can serialize).
- Avoid accepting non-string literals in `parseLiteral` unless you intentionally support them; mixed formats are a common source of client incompatibilities.

## Referenced By

- `User` (TYPE_OF)
- `User` (TYPE_OF)
- `Post` (TYPE_OF)
- `Post` (TYPE_OF)
- `Post` (TYPE_OF)
- `Comment` (TYPE_OF)
- `Comment` (TYPE_OF)
- `Like` (TYPE_OF)
- `Follow` (TYPE_OF)



# DEFAULT_TARGETS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/parser-core/src/openapi/code-samples.ts` (line 26)



# defaultTestUser

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web-e2e/src/fixtures/base.fixture.ts` (line 16)

Default test user for authenticated tests

## Definition

```ts
TestUser
```



# DjangoParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/backend-parser/src/parsers/django.parser.ts` (line 51)

Django REST Framework Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# EnvParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/config-docs-parser/src/parsers/env.parser.ts` (line 61)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# FIXTURES_PATH

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 22)



# FormatButton

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/toolbar/components/BoldItalicUnderlineToggles.tsx` (line 18)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `format` | `any` | ✓ | - |
| `addTitle` | `any` | ✓ | - |
| `removeTitle` | `any` | ✓ | - |
| `icon` | `any` | ✓ | - |
| `formatName` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_FormatButton_47bb73da["FormatButton"]
    class component_FormatButton_47bb73da rootComponent
```

## Relationships

- RENDERS → `ToggleSingleGroupWithItem`
- USES_HOOK → `useCellValues`
- USES_HOOK → `usePublisher`

## Referenced By

- `BoldItalicUnderlineToggles` (RENDERS)
- `StrikeThroughSupSubToggles` (RENDERS)



# Framework

**Kind:** Enum

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/dto/start-analysis.dto.ts` (line 3)

## Values

- `REACT`
- `ANGULAR`
- `VUE`
- `NEXT`
- `NEST`
- `AUTO`



# generateContentHash

**Kind:** Function

**Source:** `atloria-monorepo/apps/database-parser/src/utils/hash.util.ts` (line 8)

Generate a content hash for change detection

## Signature

```ts
function generateContentHash(content: string): string
```

## Parameters

| Name | Type |
|---|---|
| `content` | `string` |

**Returns:** `string`



# getHealth

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api-schema-parser/src/app.controller.ts` (line 21)

Health check endpoint

## Endpoint

`GET /health`

## Referenced By

- `AppController` (MODULE_DECLARES)



# getHealth

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/app.controller.ts` (line 11)

Health check endpoint

## Endpoint

`GET /`

## Referenced By

- `AppController` (MODULE_DECLARES)



# GraphQLParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/api-schema-parser/src/parsers/graphql.parser.ts` (line 57)

GraphQL Parser Implementation

Supports:
- GraphQL Schema Definition Language (SDL)
- Queries, Mutations, Subscriptions
- Object Types, Input Types, Enums, Interfaces, Unions
- Directives and field arguments

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# health

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/config-docs-parser/src/health.controller.ts` (line 5)

## Endpoint

`GET /health`

## Referenced By

- `HealthController` (MODULE_DECLARES)



# HealthController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/config-docs-parser/src/health.controller.ts` (line 3)

## Relationships

- MODULE_DECLARES → `health`



# HookInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 42)

Information about a hook usage

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `type` | `'built-in' | 'custom'` |
| `location` | `string` |
| `dependencies` | `string[]` |



# IntegrationService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/integration/integration.service.ts` (line 23)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `registerParser` | `registerParser(parser: IParser)` | `Promise` |
| `initializeParser` | `initializeParser(parserName: string, config: ParserConfig)` | `Promise` |
| `getParser` | `getParser(parserName: string)` | `IParser | null` |
| `hasParser` | `hasParser(parserName: string)` | `boolean` |
| `getRegisteredParsers` | `getRegisteredParsers()` | `Array<{
    name: string;
    version: string;
    patterns: string[];
    initialized: boolean;
  }>` |
| `findParserForFile` | `findParserForFile(filePath: string)` | `string | null` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: string[])` | `Promise` |
| `destroyParser` | `destroyParser(parserName: string)` | `Promise` |
| `destroyAll` | `destroyAll()` | `Promise` |
| `generateEntityId` | `generateEntityId(type: string, name: string, filePath: string)` | `string` |
| `generateRelationshipId` | `generateRelationshipId(sourceId: string, type: string, targetId: string)` | `string` |
| `validateEntity` | `validateEntity(entity: Partial)` | `{ valid: boolean; errors: string[] }` |
| `validateRelationship` | `validateRelationship(relationship: Partial)` | `{ valid: boolean; errors: string[] }` |



# KEY_PATTERNS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 139)

Key architectural patterns the agent should discover



# Microsoft.CodeAnalysis.CSharp

**Kind:** Service

**Source:** `atloria-monorepo/libs/parser-core/src/dotnet-bridge/Atloria.CSharpParser/Atloria.CSharpParser.csproj` (line 1)

NuGet package dependency

## Referenced By

- `Atloria.CSharpParser` (DEPENDS_ON)



# MigrationParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/database-parser/src/parsers/migration.parser.ts` (line 90)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# newComment

**Kind:** Graphql Subscription

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Subscribe to new comments on a post

## Relationships

- TYPE_OF → `Comment`

## Referenced By

- `Subscription` (CALLS_API)



# OrchestratorController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 26)

## Relationships

- MODULE_DECLARES → `dispatchJob`
- MODULE_DECLARES → `parseProject`
- MODULE_DECLARES → `getJobStatus`
- MODULE_DECLARES → `getJobResult`
- MODULE_DECLARES → `cancelJob`
- MODULE_DECLARES → `getQueueMetrics`
- MODULE_DECLARES → `getKGStatistics`
- MODULE_DECLARES → `getAvailableParsers`
- MODULE_DECLARES → `detectParser`
- MODULE_DECLARES → `healthCheck`
- DEPENDS_ON → `orchestratorservice`



# ParseFileRequest

**Kind:** Interface

**Source:** `atloria-monorepo/apps/config-docs-parser/src/services/parser-registry.service.ts` (line 25)

## Properties

| Property | Type |
|---|---|
| `filePath` | `string` |
| `content` | `string` |



# ParseJobDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/dto/parse-job.dto.ts` (line 27)

DTO for dispatching a single parse job

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `files` | `string[]` |
| `parserType` | `string` |
| `config` | `Record` |
| `priority` | `number` |



# ParserRegistryService

**Kind:** Service

**Source:** `atloria-monorepo/apps/config-docs-parser/src/services/parser-registry.service.ts` (line 30)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `onModuleInit` | `onModuleInit()` | `Promise` |
| `onModuleDestroy` | `onModuleDestroy()` | `Promise` |
| `configure` | `configure(config: ParserRegistryConfig)` | `Promise` |
| `getAllParsers` | `getAllParsers()` | `IParser[]` |
| `getParser` | `getParser(name: string)` | `IParser | undefined` |
| `hasParser` | `hasParser(name: string)` | `boolean` |
| `getParserNames` | `getParserNames()` | `string[]` |
| `findParsersForFile` | `findParsersForFile(filePath: string)` | `IParser[]` |
| `findBestParser` | `findBestParser(filePath: string)` | `IParser | undefined` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileRequest[])` | `Promise` |
| `getAllSupportedPatterns` | `getAllSupportedPatterns()` | `string[]` |
| `getStats` | `getStats()` | `{
    parserCount: number;
    parsers: Array<{ name: string; version: string; patterns: string[] }>;
    totalPatterns: number;
  }` |
| `destroyAll` | `destroyAll()` | `Promise` |
| `isInitialized` | `isInitialized()` | `boolean` |

## Relationships

- DEPENDS_ON → `markdownparser`
- DEPENDS_ON → `mdxparser`
- DEPENDS_ON → `envparser`
- DEPENDS_ON → `yamlparser`
- DEPENDS_ON → `jsonconfigparser`



# PmeAgentModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/pme-agent/src/pme-agent.module.ts` (line 8)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `queuemodule`



# PmeJobPayload

**Kind:** Interface

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/pme.processor.ts` (line 62)

## Properties

| Property | Type |
|---|---|
| `jobId` | `string` |
| `projectId` | `string` |
| `userId` | `string` |
| `organizationId` | `string` |
| `config` | `GenerationConfig` |



# PmeProcessor

**Kind:** Class

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/pme.processor.ts` (line 73)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `handleGenerate` | `handleGenerate(job: Job)` | `Promise` |
| `handleStrategy` | `handleStrategy(job: Job)` | `Promise` |
| `handleFinalize` | `handleFinalize(job: Job)` | `Promise` |
| `handleSiteGen` | `handleSiteGen(job: Job)` | `Promise` |
| `onActive` | `onActive(job: Job)` | `void` |
| `onCompleted` | `onCompleted(job: Job)` | `void` |
| `onFailed` | `onFailed(job: Job, error: Error)` | `void` |

## Properties

| Property | Type |
|---|---|
| `progressEmitter` | `ProgressEmitter` |



# post

**Kind:** Graphql Query

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Get a post by ID

## Relationships

- TYPE_OF → `Post`

## Referenced By

- `Query` (CALLS_API)



# PreviewShell

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/page.tsx` (line 357)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `url` | `string` | ✓ | - |
| `children` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_PreviewShell_be22912["PreviewShell"]
    class component_PreviewShell_be22912 rootComponent
```

## Referenced By

- `KbPanel` (RENDERS)
- `ManualPanel` (RENDERS)
- `ApiPanel` (RENDERS)
- `SupportPanel` (RENDERS)



# PrismaService

**Kind:** Service

**Source:** `atloria-monorepo/libs/database/src/lib/prisma.service.ts` (line 7)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `onModuleInit` | `onModuleInit()` | `unknown` |
| `onModuleDestroy` | `onModuleDestroy()` | `unknown` |
| `enableQueryLogging` | `enableQueryLogging()` | `unknown` |

## Relationships

- DEPENDS_ON → `configservice`



# privacy

**Kind:** Page

**Source:** `atloria-monorepo/templates/site-bootstrap/src/App.tsx`



# ProgressEmitter

**Kind:** Type

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/pme.processor.ts` (line 71)

Progress callback for WebSocket emission (injected from outside).

## Definition

```ts
(event: PmeProgressEvent) => void
```



# RelationType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/web/src/components/Graph/types.ts` (line 8)

Relationship types in the Knowledge Graph

## Values

- `CONTAINS`
- `USES`
- `CALLS`
- `REFERENCES`
- `IMPLEMENTS`
- `EXTENDS`
- `DEPENDS_ON`



# Role

**Kind:** Enum

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

User roles

## Referenced By

- `User` (TYPE_OF)



# StartAnalysisDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/dto/start-analysis.dto.ts` (line 12)

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `repoUrl` | `string` |
| `branch` | `string` |
| `folderPath` | `string` |
| `framework` | `Framework` |
| `patterns` | `string[]` |
| `modules` | `string[]` |
| `tokenBudget` | `number` |
| `organizationId` | `string` |
| `triggeredBy` | `string` |



# StorageHelperService

**Kind:** Service

**Source:** `atloria-monorepo/apps/cli/src/services/storage-helper.service.ts` (line 1)



# Atloria (self dogfood)

## Overview

Auto-generated technical documentation for **Atloria (self dogfood)** — 30529 entities (24923 doc comments, 1520 interfaces, 785 functions, 782 components).

## Architecture

```mermaid
flowchart LR
  service_StorageHelperService_751da417["StorageHelperService"]
  service_Crop_140a6041["Crop"]
  service_ParserService_5634fec["ParserService"]
  service_EntityMapper_2dd3ba0b["EntityMapper"]
  service_ParserCoreBridge_5f634fe8["ParserCoreBridge"]
  service_ChunkerService_36d48187["ChunkerService"]
  service_FeatureExtractorService_54b31c9a["FeatureExtractorService"]
  service_AnalyzerService_509b5604["AnalyzerService"]
  service_SynthesizerService_5be315["SynthesizerService"]
  service_StructureService_335fa54b["StructureService"]
  service_V4dStructureService_1c78148e["V4dStructureService"]
  service_PhaseService_465e9705["PhaseService"]
  service_SessionService_22a97883["SessionService"]
  service_DocPlannerService_224fae1["DocPlannerService"]
  service_AgentContextService_36c11d80["AgentContextService"]
  service_AgentWriterService_58c6015c["AgentWriterService"]
  service_DocVerifierService_6b28454a["DocVerifierService"]
  service_GeneratorService_252aea01["GeneratorService"]
  service_VerifierAgentService_acd24ae["VerifierAgentService"]
  service_OpenAIReviewerService_36f27c12["OpenAIReviewerService"]
  service_VerifierService_3e00a087["VerifierService"]
  service_HybridMapperService_54fe3fb9["HybridMapperService"]
  service_LoginSelectorDetectorService_32760a58["LoginSelectorDetectorService"]
  service_ScreenshotCapturerService_6ed39a45["ScreenshotCapturerService"]
```

## Modules

- **ActivityModule**
- **AgentModule**
- **AIModule**
- **AnalyticsModule**
- **AppModule**
- **AssetsModule**
- **AudienceModule**
- **AuditModule**
- **AuthModule**
- **SamlModule**
- **BillingModule**
- **BitbucketModule**
- **BoardsModule**
- **BrandingModule**
- **CaptureModule**
- **CollaborationModule**
- **CommentModule**
- **ThrottlingModule**
- **DashboardModule**
- **DocVersionModule**
- **DocumentModule**
- **DraftDocumentModule**
- **DocumentationModule**
- **EmailModule**
- **EventsModule**
- **GatewayModule**
- **GitHubModule**
- **GithubAppModule**
- **GitLabModule**
- **GraphModule**
- **InvitationModule**
- **IssuesModule**
- **ManualsInsightsModule**
- **NotificationModule**
- **OpsModule**
- **OrganizationModule**
- **ParserModule**
- **ParsingModule**
- **PmeModule**
- **ProjectModule**
- **ScreenshotModule**
- **SuggestionModule**
- **SupportAgentModule**
- **TechnicalDocsModule**
- **TemplateModule**
- **TrialModule**
- **WebhookModule**
- **WorkflowModule**
- **AppModule**
- **AppModule**
- **AnalysisModule**
- **AppModule**
- **GitModule**
- **AppModule**
- **AppModule**
- **AppModule**
- **AppModule**
- **IntegrationModule**
- **KnowledgeGraphModule**
- **OrchestratorModule**
- **QueueModule**
- **UsersModule**
- **PmeAgentModule**
- **QueueModule**
- **AppModule**
- **DiscoveryModule**
- **PdfModule**
- **PlaywrightModule**
- **ScreenshotModule**
- **StorageModule**
- **DatabaseModule**
- **Atloria.CSharpParser** — .NET Exe project (C#)

## Entry Points

- Controller: **ActivityController** (`atloria-monorepo/apps/api/src/activity/activity.controller.ts`)
- Controller: **AgentController** (`atloria-monorepo/apps/api/src/agent/agent.controller.ts`)
- Controller: **AIController** (`atloria-monorepo/apps/api/src/ai/ai.controller.ts`)
- Controller: **AnalyticsController** (`atloria-monorepo/apps/api/src/analytics/analytics.controller.ts`)
- Controller: **AnalyticsExportController** (`atloria-monorepo/apps/api/src/analytics/export/analytics-export.controller.ts`)
- Controller: **AppController** (`atloria-monorepo/apps/api/src/app/app.controller.ts`)
- Controller: **AssetsController** (`atloria-monorepo/apps/api/src/assets/assets.controller.ts`)
- Controller: **AudienceController** (`atloria-monorepo/apps/api/src/audience/audience.controller.ts`)
- Controller: **AuditController** (`atloria-monorepo/apps/api/src/audit/audit.controller.ts`)
- Controller: **AuthController** (`atloria-monorepo/apps/api/src/auth/auth.controller.ts`)
- Controller: **SamlController** (`atloria-monorepo/apps/api/src/auth/saml/saml.controller.ts`)
- Controller: **BillingController** (`atloria-monorepo/apps/api/src/billing/billing.controller.ts`)
- Controller: **BitbucketController** (`atloria-monorepo/apps/api/src/bitbucket/bitbucket.controller.ts`)
- Controller: **BoardsController** (`atloria-monorepo/apps/api/src/boards/boards.controller.ts`)
- Controller: **BrandingController** (`atloria-monorepo/apps/api/src/branding/branding.controller.ts`)
- Controller: **CaptureController** (`atloria-monorepo/apps/api/src/capture/capture.controller.ts`)
- Controller: **PublicCaptureController** (`atloria-monorepo/apps/api/src/capture/public-capture.controller.ts`)
- Controller: **CommentController** (`atloria-monorepo/apps/api/src/comment/comment.controller.ts`)
- Controller: **DashboardController** (`atloria-monorepo/apps/api/src/dashboard/dashboard.controller.ts`)
- Controller: **DocVersionController** (`atloria-monorepo/apps/api/src/doc-version/doc-version.controller.ts`)
- `GET /activities` → list
- `GET /activities/documents/:id` → getDocumentActivities
- `GET /activities/projects/:id` → getProjectActivities
- `GET /activities/recent/projects` → getRecentProjects
- `GET /activities/recent/documents` → getRecentDocuments
- `GET /agent/status` → getStatus
- `POST /ai/enhance` → enhance
- `POST /ai/outline` → generateOutline
- `POST /ai/improve` → improve
- `POST /ai/summarize` → summarize
- `GET /ai/providers` → listProviders
- `POST /analytics/track` → track
- `GET /analytics/:projectId/overview` → getOverview
- `GET /analytics/:projectId/versions` → getVersionTraffic
- `GET /analytics/:projectId/documents` → getTopDocuments
- `GET /analytics/:projectId/search-queries` → getTopSearchQueries
- `GET /analytics/:projectId/daily-traffic` → getDailyTraffic
- `GET /analytics/:projectId/devices` → getDeviceBreakdown
- `GET /analytics/:projectId/sources` → getSourceBreakdown
- `GET /analytics/:projectId/geo` → getGeoBreakdown
- `GET /analytics/:projectId/zero-result-searches` → getZeroResultSearches
- `GET /analytics/:projectId/ghost-docs` → getGhostDocs
- `GET /analytics/:projectId/trending-docs` → getTrendingDocs
- `GET /analytics/:projectId/scroll-histogram` → getScrollHistogram
- `POST /analytics/feedback` → submitFeedback
- `GET /analytics/:projectId/feedback-summary` → getFeedbackSummary
- `POST /analytics/:projectId/export` → exportNow
- `GET /analytics/:projectId/reports` → listReports
- `POST /analytics/:projectId/reports` → createReport
- `PATCH /analytics/:projectId/reports/:id` → updateReport

## Key Components

_The most-referenced entities — start here._

- **Description** (doc comment) — referenced 15×
- **Example Input** (doc comment) — referenced 15×
- **Example Output** (doc comment) — referenced 15×
- **DEVELOPER_STANDARDS.md** (doc comment) — referenced 12×
- **User** (graphql type) — referenced 11×
- **Your Prompt:** (doc comment) — referenced 11×
- **MANDATORY READING** (doc comment) — referenced 11×
- **Your Mission** (doc comment) — referenced 11×
- **Technology Stack** (doc comment) — referenced 11×
- **Code Location** (doc comment) — referenced 11×



# TemplateCategory

**Kind:** Type

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 146)

## Definition

```ts
| 'general'
  | 'api'
  | 'user-guide'
  | 'tutorial'
  | 'reference'
```



# User

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

User account

`User` is a GraphQL object type representing a user account in the API, including identity fields (id, email, name), authorization context (`role`), and social/content relationships (profile, posts, followers/following). It serves as the central node for querying user-centric data and derived counts (`followerCount`, `followingCount`) in the graph.

## Diagram

```mermaid
graph LR
  User[User]
  Role[Role]
  Profile[Profile]
  Post[Post]
  Follow[Follow]

  User -->|role: Role!| Role
  User -->|profile: Profile| Profile
  User -->|posts: [Post!]!| Post
  User -->|followers: [Follow!]!| Follow
  User -->|following: [Follow!]!| Follow
  User -->|followerCount: Int!| followerCount[(Int)]
  User -->|followingCount: Int!| followingCount[(Int)]
```

## Usage

```ts
import { gql, GraphQLClient } from "graphql-request";

const client = new GraphQLClient(process.env.API_URL!, {
  headers: { authorization: `Bearer ${process.env.API_TOKEN}` },
});

const GetUserWithRelations = gql`
  query GetUserWithRelations($id: ID!) {
    user(id: $id) {
      id
      email
      name
      role
      profile {
        id
        bio
      }
      posts {
        id
        title
      }
      followerCount
      followingCount
    }
  }
`;

type GetUserWithRelationsResult = {
  user: {
    id: string;
    email: string;
    name: string;
    role: "ADMIN" | "USER" | string;
    profile: { id: string; bio?: string | null } | null;
    posts: Array<{ id: string; title: string }>;
    followerCount: number;
    followingCount: number;
  } | null;
};

async function fetchUser(id: string) {
  const data = await client.request(GetUserWithRelations, { id });
  return data.user;
}

// Example call
fetchUser("user_123").then(console.log).catch(console.error);
```

## AI Coding Instructions

- Treat `User` as the hub type: keep resolver logic for `posts`, `profile`, `followers`, and `following` consistent with the underlying data model (IDs, join tables, pagination if applicable).
- Ensure `followerCount`/`followingCount` are derived efficiently (prefer aggregated queries over loading full `followers`/`following` lists just to count).
- Respect nullability: `profile` can be `null`, but list fields like `posts` are non-null lists of non-null items (`[Post!]!`) and should always resolve to an array.
- Avoid leaking sensitive fields: `email` is non-nullable, so enforce authorization checks in the `User` query resolver if email visibility is restricted.
- Keep `role` aligned with the `Role` enum values; validate and migrate consistently when adding new roles.

## Relationships

- TYPE_OF → `Role`
- TYPE_OF → `Profile`
- TYPE_OF → `Post`
- TYPE_OF → `Follow`
- TYPE_OF → `Follow`
- TYPE_OF → `DateTime`
- TYPE_OF → `DateTime`

## Referenced By

- `user` (TYPE_OF)
- `searchUsers` (TYPE_OF)
- `createUser` (TYPE_OF)
- `updateUser` (TYPE_OF)
- `Post` (TYPE_OF)
- `Comment` (TYPE_OF)
- `Like` (TYPE_OF)
- `Follow` (TYPE_OF)
- `Follow` (TYPE_OF)
- `UserConnection` (TYPE_OF)
- `AuthPayload` (TYPE_OF)



# User Management API

**Kind:** API Schema

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

RESTful API for user management operations

## Relationships

- IMPLEMENTS_API → `getUsers`
- IMPLEMENTS_API → `createUser`
- IMPLEMENTS_API → `getUserById`
- IMPLEMENTS_API → `updateUser`
- IMPLEMENTS_API → `deleteUser`
- IMPLEMENTS_API → `login`
- TYPE_OF → `User`
- TYPE_OF → `UserWithProfile`
- TYPE_OF → `Profile`
- TYPE_OF → `CreateUser`
- TYPE_OF → `UpdateUser`
- TYPE_OF → `LoginRequest`
- TYPE_OF → `AuthResponse`
- TYPE_OF → `Error`



# $createCodeBlockNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/codeblock/CodeBlockNode.tsx` (line 275)

## Signature

```ts
function $createCodeBlockNode(options: Partial): CodeBlockNode
```

## Parameters

| Name | Type |
|---|---|
| `options` | `Partial` |

**Returns:** `CodeBlockNode`



# accept

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/suggestion/suggestion.controller.ts` (line 29)

## Endpoint

`POST /documents/:documentId/suggestions/:id/accept`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `SuggestionController` (MODULE_DECLARES)



# AccessibilityViolation

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 12)

Accessibility violation

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `description` | `string` |
| `help` | `string` |
| `helpUrl` | `string` |
| `impact` | `'minor' | 'moderate' | 'serious' | 'critical'` |
| `nodes` | `{
    html: string;
    target: string[];
    failureSummary?: string;
  }[]` |



# AccuracyReport

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/stage-11.types.ts` (line 28)

## Properties

| Property | Type |
|---|---|
| `documentId` | `string` |
| `title` | `string` |
| `accuracyScore` | `number` |
| `claims` | `{
    total: number;
    verified: number;
    flagged: number;
    uncertain: number;
  }` |
| `issues` | `VerificationIssue[]` |
| `passesThreshold` | `boolean` |
| `requiredActions` | `string[]` |



# activeEditor$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 129)

Holds a reference to the current Lexical editor instance - can be the root editor or a nested editor.



# ActivityFiltersDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/activity/dto/activity-filters.dto.ts` (line 3)

## Properties

| Property | Type |
|---|---|
| `organizationId` | `string` |
| `projectId` | `string` |
| `userId` | `string` |
| `entityType` | `string` |
| `entityId` | `string` |
| `startDate` | `string` |
| `endDate` | `string` |



# AgentAdapterService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/support-agent/agent-adapter.service.ts` (line 40)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `execute` | `execute(message: string, executionConfig: AgentExecutionConfig)` | `Promise` |
| `executeStream` | `executeStream(message: string, executionConfig: AgentExecutionConfig)` | `AsyncGenerator` |

## Relationships

- DEPENDS_ON → `configservice`
- DEPENDS_ON → `prismaservice`



# AgentAnalyticsController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/events/agent-analytics.controller.ts` (line 12)

Agent-native analytics — "who/what AI is reading your docs". Authed, org-scoped
read model over the agent_read events the public agent surfaces record. Guard/scope
pattern mirrors ManualsInsightsController.

## Relationships

- MODULE_DECLARES → `traffic`
- DEPENDS_ON → `agentanalyticsservice`



# AgentConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/types.ts` (line 14)

Agent Core Runtime Types

Our interfaces for agent configuration, tool definitions, and run results.
These are the contracts that domain layers (PME, doc-automation, etc.) code against.
The SDK's types are mapped to these in agent-runtime.ts — if the SDK changes,
only that file needs updating.

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `instructions` | `string | ((context: RunContext) => string | Promise)` |
| `model` | `string` |
| `modelSettings` | `AgentModelSettings` |
| `tools` | `ToolDefinition[]` |
| `handoffs` | `AgentConfig[]` |
| `handoffDescription` | `string` |
| `inputGuardrails` | `GuardrailDefinition[]` |
| `outputGuardrails` | `OutputGuardrailDefinition[]` |
| `outputType` | `'text' | JsonSchemaOutput` |
| `maxTurns` | `number` |



# AgentEndedEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 151)

## Properties

| Property | Type |
|---|---|
| `totalUsage` | `{
    inputTokens: number;
    outputTokens: number;
    totalTokens: number;
  }` |
| `turnCount` | `number` |



# AgentFactory

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/tools/spawn-agent.tool.ts` (line 33)

Factory function that creates sub-agent configs on demand.
Domain layers implement this to control what instructions, model,
and tools sub-agents receive.

The `model` in options is already resolved by the router — factory
should use it as-is when provided.

## Definition

```ts
(
  name: string,
  task: string,
  tools?: string[],
  options?: { rootDir?: string; model?: string },
) => import('../runtime/types').AgentConfig
```



# AgentModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/agent/agent.module.ts` (line 6)

## Relationships

- MODULE_DECLARES → `agentcontroller`
- MODULE_PROVIDES → `agentservice`
- MODULE_PROVIDES → `agentgateway`
- MODULE_EXPORTS → `agentservice`
- MODULE_EXPORTS → `agentgateway`



# AgentRuntime

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/agent-runtime.ts` (line 45)

AgentRuntime — the SDK-based agent loop implementation.
Wraps

**Implements:** `IAgentLoop`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `run` | `run(config: AgentConfig, input: string, options: RunOptions)` | `Promise` |
| `runStreamed` | `runStreamed(config: AgentConfig, input: string | AgentInputItem[], options: RunOptions)` | `Promise` |



# AgentWriterService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-10-generation/agent-writer.service.ts` (line 1)



# AIProvidersResponse

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 14)

## Properties

| Property | Type |
|---|---|
| `providers` | `AIProvider[]` |
| `default` | `AIProviderName` |



# AIProviderType

**Kind:** Type

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/providers/ai-provider.interface.ts` (line 98)

AI Provider type selection

## Definition

```ts
'claude' | 'openai' | 'azure-responses'
```



# analyzeAngularTemplate

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/template-analyzer.ts` (line 599)

Analyze Angular template file

## Signature

```ts
function analyzeAngularTemplate(templateContent: string): TemplateAnalysis
```

## Parameters

| Name | Type |
|---|---|
| `templateContent` | `string` |

**Returns:** `TemplateAnalysis`



# analyzeAuthFailureWithAI

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/utils/ai-auth-debugger.ts` (line 127)

Ask AI to analyze authentication failure and suggest fixes

## Signature

```ts
async function analyzeAuthFailureWithAI(diagnostics: AuthDiagnostics, config: AuthConfig, debugGuideContent: string): Promise<{
  analysis: string;
  suggestedFixes: Array<{
    type: 'alert-handling' | 'selector-change' | 'timing-adjustment' | 'method-change';
    description: string;
    code?: string;
  }>;
}>
```

## Parameters

| Name | Type |
|---|---|
| `diagnostics` | `AuthDiagnostics` |
| `config` | `AuthConfig` |
| `debugGuideContent` | `string` |

**Returns:** `Promise<{
  analysis: string;
  suggestedFixes: Array<{
    type: 'alert-handling' | 'selector-change' | 'timing-adjustment' | 'method-change';
    description: string;
    code?: string;
  }>;
}>`



# AngularDetector

**Kind:** Class

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/detectors/angular-detector.ts` (line 77)

Angular Detector

## Methods

| Method | Signature | Returns |
|---|---|---|
| `detectComponents` | `detectComponents(entities: Entity[])` | `DetectedAngularComponent[]` |
| `detectServices` | `detectServices(entities: Entity[])` | `DetectedAngularService[]` |
| `getComponentSummary` | `getComponentSummary(component: DetectedAngularComponent)` | `string` |



# AnnotationEmitterService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/annotation-emitter.service.ts` (line 59)

TS port of the atlorix Python annotation producer
(tools/capture_annotations.py + tools/emit_annotations.py).

Locates a step's target element on the LIVE page, converts it to percent-of-
natural-image coordinates, and builds the non-destructive overlay payload +
the `#atloria-annotations=` URL fragment the web viewer consumes. Coordinates
only — the screenshot pixels are never touched (moat intact).

## Methods

| Method | Signature | Returns |
|---|---|---|
| `recomputeTargetBoxPct` | `recomputeTargetBoxPct(page: Page, selector: string, opts: { fullPage: boolean })` | `Promise` |
| `buildStepAnnotations` | `buildStepAnnotations(boxPct: BoxPct, stepIndex: number)` | `Annotation[]` |
| `toFragment` | `toFragment(annotations: Annotation[])` | `string` |



# apiDocumentationTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/api-documentation.template.ts` (line 3)



# APIEndpointEntity

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/entity.interface.ts` (line 536)

API Endpoint entity

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.API_ENDPOINT` |
| `method` | `'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD'` |
| `path` | `string` |
| `pathParams` | `ParameterDefinition[]` |
| `queryParams` | `ParameterDefinition[]` |
| `requestBody` | `SchemaDefinition` |
| `responses` | `ResponseDefinition[]` |
| `authentication` | `AuthenticationInfo` |
| `rateLimit` | `RateLimitInfo` |
| `middleware` | `string[]` |
| `controller` | `string` |
| `operationId` | `string` |



# APIFlow

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/relationship.interface.ts` (line 391)

API flow showing component → API → service → model chain

## Properties

| Property | Type |
|---|---|
| `endpoint` | `{
    id: string;
    name: string;
    path: string;
    method: string;
  }` |
| `callers` | `Array<{
    id: string;
    name: string;
    type: string;
    filePath: string;
  }>` |
| `services` | `Array<{
    id: string;
    name: string;
    filePath: string;
  }>` |
| `models` | `Array<{
    id: string;
    name: string;
    tableName: string;
  }>` |
| `relationships` | `Relationship[]` |



# ApiProvider

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/providers/api.provider.ts` (line 54)

API data provider
Fetches from Atloria REST API

**Implements:** `DataProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: DataProviderConfig)` | `Promise` |
| `getProjectMetadata` | `getProjectMetadata()` | `Promise` |
| `getEntities` | `getEntities()` | `Promise` |
| `getEntitiesByType` | `getEntitiesByType(type: string)` | `Promise` |
| `getEntityById` | `getEntityById(id: string)` | `Promise` |
| `getRelationships` | `getRelationships()` | `Promise` |
| `getRelationshipsForEntity` | `getRelationshipsForEntity(entityId: string)` | `Promise` |
| `saveParseResults` | `saveParseResults(results: ParseResult[], project: DetectedProject, workflowSignals: WorkflowSignals, workflowOptions: {
      enableAiWorkflows?: boolean;
      aiModel?: string;
      forceWorkflowDiscovery?: boolean;
    }, businessContextText: string)` | `Promise` |
| `saveDocumentation` | `saveDocumentation(pages: Array<{
      slug: string;
      title: string;
      description: string;
      type: string;
      content: string;
      order: number;
      parentSlug?: string;
      entityId?: string;
    }>, _navigation: Array<{
      title: string;
      href: string;
      children?: Array<{ title: string; href: string }>;
    }>)` | `Promise` |
| `destroy` | `destroy()` | `Promise` |



# AppController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/app.controller.ts` (line 4)

## Relationships

- MODULE_DECLARES → `getHealth`
- MODULE_DECLARES → `getInfo`
- DEPENDS_ON → `appservice`



# applyCardMove

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 154)

Apply a card move to local board state for optimistic UI.
Returns a NEW board object — does not mutate.

## Signature

```ts
function applyCardMove(board: BoardData, cardId: string, toColumnId: string, position: number): BoardData
```

## Parameters

| Name | Type |
|---|---|
| `board` | `BoardData` |
| `cardId` | `string` |
| `toColumnId` | `string` |
| `position` | `number` |

**Returns:** `BoardData`



# applyHunks

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/tools/edit-file.tool.ts` (line 625)

Apply parsed hunks to file content with fuzzy line offset matching.
Hunks are applied in reverse order (bottom-to-top) to preserve line numbers.

## Signature

```ts
function applyHunks(content: string, hunks: DiffHunk[], fuzzLines): { success: boolean; content?: string; error?: string; lastNewText?: string }
```

## Parameters

| Name | Type |
|---|---|
| `content` | `string` |
| `hunks` | `DiffHunk[]` |
| `fuzzLines` | `any` |

**Returns:** `{ success: boolean; content?: string; error?: string; lastNewText?: string }`



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/app.module.ts` (line 9)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `gitmodule`
- MODULE_IMPORTS → `analysismodule`
- MODULE_DECLARES → `appcontroller`
- MODULE_PROVIDES → `appservice`



# AppService

**Kind:** Service

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/app.service.ts` (line 4)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getHealth` | `getHealth()` | `unknown` |
| `getInfo` | `getInfo()` | `unknown` |

## Relationships

- DEPENDS_ON → `gitservice`



# areParsersInitialized

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 165)

Check if parsers are initialized

## Signature

```ts
function areParsersInitialized(): boolean
```

**Returns:** `boolean`



# AskFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/mcp-toolset.ts` (line 34)

Optional grounded-QA backend (LLM). Injected so the toolset stays pure/testable.

## Definition

```ts
(question: string, context: DocSearchHit[]) => Promise<{ answer: string; citations: string[] }>
```



# AssemblerDeps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/assembler.ts` (line 22)

## Properties

| Property | Type |
|---|---|
| `templateDir` | `string` |
| `componentLibraryDir` | `string` |



# assertPerformanceMetrics

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/performance.ts` (line 126)

Assert performance metrics meet thresholds

## Signature

```ts
async function assertPerformanceMetrics(page: Page, thresholds: Partial<{
    ttfb: number;
    fcp: number;
    lcp: number;
    cls: number;
    domContentLoaded: number;
    load: number;
    resourceCount: number;
    totalSize: number;
    domNodes: number;
  }>): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |
| `thresholds` | `Partial<{
    ttfb: number;
    fcp: number;
    lcp: number;
    cls: number;
    domContentLoaded: number;
    load: number;
    resourceCount: number;
    totalSize: number;
    domNodes: number;
  }>` |

**Returns:** `Promise`



# assertPublicHttpUrl

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/ssrf.ts` (line 26)

Validate that a URL is http(s) and does not point at a private address
(by hostname pattern or DNS resolution). Throws BadRequestException.

## Signature

```ts
async function assertPublicHttpUrl(rawUrl: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `rawUrl` | `string` |

**Returns:** `Promise`



# AtloriaWebSocketClient

**Kind:** Class

**Source:** `atloria-monorepo/apps/web/src/lib/websocket-client.ts` (line 30)

AtloriaWebSocketClient

Manages WebSocket connections for real-time updates.
Supports multiple namespaces (comments, documents) and channel subscriptions.

**Implements:** `WebSocketClient`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `setToken` | `setToken(token: string | null)` | `void` |
| `joinDocument` | `joinDocument(documentId: string, namespace: NamespaceType)` | `void` |
| `leaveDocument` | `leaveDocument(documentId: string, namespace: NamespaceType)` | `void` |
| `subscribe` | `subscribe(channel: string, handler: SubscriptionHandler)` | `() => void` |
| `on` | `on(event: string, handler: SubscriptionHandler)` | `void` |
| `off` | `off(event: string, handler: SubscriptionHandler)` | `void` |
| `emit` | `emit(event: string, data: any)` | `void` |
| `disconnect` | `disconnect()` | `void` |
| `isConnected` | `isConnected()` | `boolean` |



# AuthConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/utils/ai-auth-debugger.ts` (line 12)

## Properties

| Property | Type |
|---|---|
| `loginUrl` | `string` |
| `credentials` | `{
    usernameSelector: string;
    passwordSelector: string;
    submitSelector: string;
    username: string;
    password: string;
  }` |
| `waitAfterLogin` | `number` |
| `testUrl` | `string` |



# AuthenticatedScreenshotOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/playwright/playwright.service.ts` (line 22)

## Properties

| Property | Type |
|---|---|
| `targetUrl` | `string` |
| `loginUrl` | `string` |
| `username` | `string` |
| `password` | `string` |
| `usernameSelector` | `string` |
| `passwordSelector` | `string` |
| `submitSelector` | `string` |
| `successSelector` | `string` |
| `browserType` | `BrowserType` |
| `viewport` | `{
    width: number;
    height: number;
  }` |
| `fullPage` | `boolean` |
| `waitForSelector` | `string` |
| `waitForTimeout` | `number` |



# authOptions

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/lib/auth.ts` (line 93)

NextAuth configuration

## Definition

```ts
NextAuthOptions
```



# Backdrop

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/DeskDialogs.tsx` (line 19)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `onClose` | `Function` | ✓ | - |
| `children` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_Backdrop_3d5e3532["Backdrop"]
    class component_Backdrop_3d5e3532 rootComponent
```

## Referenced By

- `SnoozeMenu` (RENDERS)
- `DuplicateDialog` (RENDERS)
- `ShortcutOverlay` (RENDERS)



# BatchConfigDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 555)

Batch configuration DTO

Controls batch-level settings:
- Concurrency and parallelism
- Browser selection
- Retry behavior
- Screenshot format and quality
- Deduplication

## Properties

| Property | Type |
|---|---|
| `maxConcurrency` | `number` |
| `browser` | `Browser` |
| `maxRetries` | `number` |
| `retryDelayMs` | `number` |
| `screenshotTimeout` | `number` |
| `defaultViewport` | `ViewportDto` |
| `format` | `Format` |
| `quality` | `number` |
| `checkDuplicates` | `boolean` |



# BatchScreenshotController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 41)

Controller for batch screenshot operations

Endpoints:
- POST /screenshot/batch - Create and start a batch job
- GET /screenshot/batch/:jobId/status - Get job status and results
- POST /screenshot/validate-selectors - Validate selectors exist on a page

`BatchScreenshotController` exposes HTTP endpoints for creating and running screenshot batch jobs, querying their status/results, and validating CSS/XPath selectors against a target page. It acts as the API boundary for the screenshot-worker service, delegating orchestration to underlying services/queues and returning job progress and artifacts to callers.

## Diagram

```mermaid
graph LR
  Client[Client / API Consumer] -->|POST /screenshot/batch| C[BatchScreenshotController]
  Client -->|GET /screenshot/batch/:jobId/status| C
  Client -->|POST /screenshot/validate-selectors| C

  C --> S[Batch Screenshot Service]
  S --> Q[(Job Queue / Worker)]
  Q --> W[Browser Runner (Playwright/Puppeteer)]
  W --> R[(Storage: screenshots & metadata)]
  S --> R
  C -->|status/results| Client
```

## Usage

```ts
// Example: calling the controller endpoints from a Node client (e.g., another service)
import axios from "axios";

const baseURL = process.env.SCREENSHOT_WORKER_URL ?? "http://localhost:3000";

async function runBatch() {
  // 1) Create/start a batch screenshot job
  const createRes = await axios.post(`${baseURL}/screenshot/batch`, {
    // Shape depends on your DTOs; adjust to match your API contract.
    pages: [
      { url: "https://example.com", selectors: ["header", "#main"] },
      { url: "https://example.com/about", selectors: ["h1", ".content"] },
    ],
    viewport: { width: 1280, height: 720 },
    fullPage: true,
  });

  const jobId: string = createRes.data.jobId;
  console.log("Created job:", jobId);

  // 2) Poll for job status/results
  while (true) {
    const statusRes = await axios.get(
      `${baseURL}/screenshot/batch/${encodeURIComponent(jobId)}/status`,
    );

    const { status, progress, results, error } = statusRes.data;
    console.log({ status, progress });

    if (status === "completed") {
      // results commonly include screenshot URLs/paths and per-page metadata
      console.log("Batch results:", results);
      break;
    }

    if (status === "failed") {
      throw new Error(error ?? "Batch screenshot job failed");
    }

    await new Promise((r) => setTimeout(r, 1000));
  }
}

async function validateSelectors() {
  const res = await axios.post(`${baseURL}/screenshot/validate-selectors`, {
    url: "https://example.com",
    selectors: ["#main", ".does-not-exist"],
  });

  // Example response: { valid: ["#main"], invalid: [".does-not-exist"] }
  console.log("Selector validation:", res.data);
}

runBatch()
  .then(validateSelectors)
  .catch((e) => {
    console.error(e);
    process.exit(1);
  });
```

## AI Coding Instructions

- Keep controller methods thin: perform input validation/DTO parsing and delegate orchestration to a service/queue layer; avoid embedding browser/screenshot logic in the controller.
- Preserve idempotency and clarity for `GET /screenshot/batch/:jobId/status`: never mutate job state on reads; return a stable schema for `status`, `progress`, and `results`.
- Normalize and validate all external inputs (URLs, selectors, viewport/fullPage flags) to prevent SSRF-like issues and to avoid expensive browser launches for obviously invalid requests.
- Treat job IDs as opaque: always `encodeURIComponent` in routing/clients and avoid assumptions about format when adding logging or storage keys.
- When adding new endpoints, align with existing NestJS patterns (DTOs, validation pipes, consistent HTTP status codes) and ensure integration points (queue, storage, runner) are injected and testable.

## Relationships

- MODULE_DECLARES → `createBatchJob`
- MODULE_DECLARES → `createFlowJob`
- MODULE_DECLARES → `reshootFlowStep`
- MODULE_DECLARES → `reshootFlowLocales`
- MODULE_DECLARES → `getJobStatus`
- MODULE_DECLARES → `getPageHtml`
- MODULE_DECLARES → `validateSelectors`
- DEPENDS_ON → `batchscreenshotservice`
- DEPENDS_ON → `flowreplayservice`
- DEPENDS_ON → `playwrightservice`



# BillingPlanKey

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/billing/billing.constants.ts` (line 31)

## Definition

```ts
'pro' | 'business'
```



# BrandVoiceConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/brand-voice.guardrail.ts` (line 42)

## Properties

| Property | Type |
|---|---|
| `brandVoice` | `string` |
| `additionalBannedTerms` | `string[]` |
| `allowSuperlatives` | `boolean` |



# Browser

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 540)

## Definition

```ts
typeof BROWSERS[number]
```



# BROWSERS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 539)



# BucketKey

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 85)

## Definition

```ts
| 'triage'
  | 'needs_first'
  | 'needs_next'
  | 'investigating'
  | 'waiting'
  | 'paused'
  | 'done'
  | 'mine'
  | 'unassigned'
```



# buildCoordinatorSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/coordinator.prompts.ts` (line 21)

## Signature

```ts
function buildCoordinatorSystemPrompt(config: GenerationConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `config` | `GenerationConfig` |

**Returns:** `string`



# buildSiteGenSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/agents/site-gen.prompts.ts` (line 16)

## Signature

```ts
function buildSiteGenSystemPrompt(config: SiteGenPromptConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `config` | `SiteGenPromptConfig` |

**Returns:** `string`



# burnRedactions

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 72)

Burn opaque BLACK rectangles into an image, destroying the underlying pixels.

Boxes are percent (0-100) of the natural image; each is converted to a clamped
pixel rect and composited as a filled black overlay. Unlike an annotation
overlay (coordinates on a URL fragment), this is DESTRUCTIVE by design — a
redacted region can never be recovered from the stored asset. Degenerate boxes
(sub-pixel or off-canvas) are skipped. No boxes → the original buffer is returned
untouched (no re-encode).

## Signature

```ts
async function burnRedactions(buffer: Buffer, boxes: BoxPct[], imgW: number, imgH: number): Promise
```

## Parameters

| Name | Type |
|---|---|
| `buffer` | `Buffer` |
| `boxes` | `BoxPct[]` |
| `imgW` | `number` |
| `imgH` | `number` |

**Returns:** `Promise`



# ChangeType

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/generators/versioning/version-diff.ts` (line 13)

Change type

## Values

- `Added`
- `Removed`
- `Modified`



# CloneResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/git/git.service.ts` (line 17)

## Properties

| Property | Type |
|---|---|
| `clonePath` | `string` |
| `targetPath` | `string` |
| `repoUrl` | `string` |
| `branch` | `string` |
| `folderPath` | `string` |



# CloudStorageProvider

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/storage/cloud-storage.provider.ts` (line 26)

Cloud storage provider implementation

**Implements:** `IStorageProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getMode` | `getMode()` | `StorageMode` |
| `saveScreenshot` | `saveScreenshot(buffer: Buffer, metadata: ScreenshotMetadata)` | `Promise` |
| `findExistingScreenshot` | `findExistingScreenshot(metadata: Partial)` | `Promise` |
| `saveDocument` | `saveDocument(document: DocumentMetadata)` | `Promise` |
| `documentExists` | `documentExists(projectId: string, categoryPath: string[], slug: string)` | `Promise` |
| `listDocuments` | `listDocuments(projectId: string, categoryPath: string[])` | `Promise>` |



# CollaborationPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/collaboration.page.ts` (line 7)

Collaboration feature page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `getUserCursors` | `getUserCursors()` | `Locator` |
| `getCursorCount` | `getCursorCount()` | `Promise` |
| `getPresenceIndicators` | `getPresenceIndicators()` | `Locator` |
| `getCollaboratorCount` | `getCollaboratorCount()` | `Promise` |
| `getConnectionStatus` | `getConnectionStatus()` | `Promise<'connected' | 'connecting' | 'disconnected'>` |
| `waitForConnection` | `waitForConnection()` | `Promise` |
| `getUserByName` | `getUserByName(name: string)` | `Locator` |
| `isUserPresent` | `isUserPresent(name: string)` | `Promise` |
| `openShareDialog` | `openShareDialog()` | `Promise` |
| `getCursorPosition` | `getCursorPosition(userName: string)` | `Promise<{ x: number; y: number } | null>` |
| `getCollaboratorColor` | `getCollaboratorColor(userName: string)` | `Promise` |
| `isStatusBarVisible` | `isStatusBarVisible()` | `Promise` |
| `getStatusBarText` | `getStatusBarText()` | `Promise` |
| `simulateDisconnection` | `simulateDisconnection()` | `Promise` |
| `waitForReconnection` | `waitForReconnection()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `statusBar` | `Locator` |
| `userCursors` | `Locator` |
| `presenceIndicators` | `Locator` |
| `connectionStatus` | `Locator` |
| `userList` | `Locator` |
| `shareButton` | `Locator` |



# COMPACTION_SUMMARY_SCHEMA

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/context/compaction-types.ts` (line 165)

JSON Schema definition for CompactionSummary.
Passed to the model via `response_format: { type: 'json_schema', json_schema: ... }`
to guarantee structured output.



# CompareType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/document/dto/compare-document.dto.ts` (line 4)

## Values

- `VERSION`
- `REVISION`



# create

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.controller.ts` (line 49)

## Endpoint

`POST /users`

## Referenced By

- `UsersController` (MODULE_DECLARES)



# createFlowJob

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 123)

Create and start a flow-replay job (WS-A)

POST /api/screenshot/flow

Replays a recorded flow (start URL + ordered actions) in ONE browser context,
shooting a screenshot after each action. Returns immediately with a job ID;
poll GET /api/screenshot/batch/:jobId/status?organizationId=… — the status
payload carries a `flowSteps` array ({ flowStepId, blobUrl, annotationsFragment }).

`auth` is OPTIONAL — a PUBLIC startUrl needs none, which makes the endpoint
smoke-testable without customer credentials. `capturedBy` (a real user UUID)
IS required so the job and Screenshot rows satisfy their DB foreign keys.

## Endpoint

`POST /screenshot/flow`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# createPost

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Create a new post

## Relationships

- TYPE_OF → `Post`
- TYPE_OF → `CreatePostInput`

## Referenced By

- `Mutation` (CALLS_API)



# CtaLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 19)

## Definition

```ts
'banner' | 'split-form'
```



# DiscoveryModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/discovery.module.ts` (line 7)

## Relationships

- MODULE_IMPORTS → `playwrightmodule`
- MODULE_DECLARES → `discoverycontroller`
- MODULE_PROVIDES → `discoveryservice`
- MODULE_PROVIDES → `pageprofilerservice`
- MODULE_EXPORTS → `discoveryservice`
- MODULE_EXPORTS → `pageprofilerservice`



# DocumentSource

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 33)

Document source indicates how the document was created

## Values

- `AI`
- `PARSER`
- `USER`
- `FLOW`
- `API`



# EntityType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 15)

Entity Interfaces

Defines all entity types discovered by parsers.
Entities represent code constructs like components, services, models, etc.

## Values

- `COMPONENT`
- `HOOK`
- `PAGE`
- `LAYOUT`
- `ROUTE`
- `CONTEXT`
- `PROVIDER`
- `STORE`
- `CONTROLLER`
- `SERVICE`
- `REPOSITORY`
- `MIDDLEWARE`
- `GUARD`
- `INTERCEPTOR`
- `PIPE`
- `MODULE`
- `EVENT_HANDLER`
- `JOB_PROCESSOR`
- `API_ENDPOINT`
- `GRAPHQL_QUERY`
- `GRAPHQL_MUTATION`
- `GRAPHQL_SUBSCRIPTION`
- `GRAPHQL_TYPE`
- `RPC_METHOD`
- `WEBSOCKET_ENDPOINT`
- `DATABASE_MODEL`
- `DATABASE_MIGRATION`
- `DATABASE_SEED`
- `DATABASE_VIEW`
- `DATABASE_PROCEDURE`
- `DOCKER_SERVICE`
- `K8S_DEPLOYMENT`
- `K8S_SERVICE`
- `K8S_CONFIGMAP`
- `TERRAFORM_RESOURCE`
- `CI_WORKFLOW`
- `MARKDOWN_DOC`
- `API_SCHEMA`
- `DOC_COMMENT`
- `ENV_VARIABLE`
- `CONFIG_FILE`
- `FEATURE_FLAG`
- `CLASS`
- `FUNCTION`
- `INTERFACE`
- `TYPE`
- `ENUM`
- `CONSTANT`
- `VARIABLE`
- `DECORATOR`



# ExpressParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/backend-parser/src/parsers/express.parser.ts` (line 42)

Express Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# extractComponentNameFromPath

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 483)

Extract the component name from a file path

## Signature

```ts
function extractComponentNameFromPath(filePath: string): string
```

## Parameters

| Name | Type |
|---|---|
| `filePath` | `string` |

**Returns:** `string`



# FetchAudiencesFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 60)

Fetch target audiences defined for this project.

## Definition

```ts
(
  projectId: string,
) => Promise
```



# FIXTURES_PATH

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/setup.ts` (line 18)



# generateEntityId

**Kind:** Function

**Source:** `atloria-monorepo/apps/database-parser/src/utils/hash.util.ts` (line 19)

Generate a unique entity ID

## Signature

```ts
function generateEntityId(filePath: string, entityType: string, name: string): string
```

## Parameters

| Name | Type |
|---|---|
| `filePath` | `string` |
| `entityType` | `string` |
| `name` | `string` |

**Returns:** `string`



# getInfo

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/app.controller.ts` (line 19)

Service info endpoint

## Endpoint

`GET /info`

## Referenced By

- `AppController` (MODULE_DECLARES)



# getParsers

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api-schema-parser/src/app.controller.ts` (line 29)

List supported parsers

## Endpoint

`GET /parsers`

## Referenced By

- `AppController` (MODULE_DECLARES)



# GrpcParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/api-schema-parser/src/parsers/grpc.parser.ts` (line 37)

gRPC Parser Implementation

Supports:
- Protocol Buffers syntax (proto2 and proto3)
- Services and RPCs
- Messages and nested types
- Enums
- Options and comments

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# ImportInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 17)

Information about an import statement

## Properties

| Property | Type |
|---|---|
| `source` | `string` |
| `importType` | `'default' | 'named' | 'namespace' | 'side-effect'` |
| `imported` | `string` |
| `local` | `string` |



# IntegrationModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/integration/integration.module.ts` (line 14)

## Relationships

- MODULE_PROVIDES → `integrationservice`
- MODULE_EXPORTS → `integrationservice`



# JsonConfigParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/config-docs-parser/src/parsers/json-config.parser.ts` (line 63)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# KEY_TECH_FACTS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 119)

Key tech stack facts the agent should mention (from READING dependency files)



# KGSyncService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/knowledge-graph/sync/kg-sync.service.ts` (line 23)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `sync` | `sync(parseResult: ParseResult)` | `Promise` |
| `syncBatch` | `syncBatch(parseResults: ParseResult[])` | `Promise` |
| `syncProject` | `syncProject(projectResult: ProjectParseResult)` | `Promise` |
| `resyncProject` | `resyncProject(projectId: string, parseResults: ParseResult[])` | `Promise` |
| `getSyncStatus` | `getSyncStatus(projectId: string)` | `Promise<{
    totalEntities: number;
    totalRelationships: number;
    lastSyncedAt?: Date;
  }>` |

## Relationships

- DEPENDS_ON → `knowledgegraphservice`



# MilestoneCard

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/social-proof/social-proof-timeline.tsx` (line 50)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `milestone` | `Milestone` | ✓ | - |
| `t` | `Function` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_MilestoneCard_150ebeb1["MilestoneCard"]
    class component_MilestoneCard_150ebeb1 rootComponent
```

## Relationships

- RENDERS → `DateBadge`

## Referenced By

- `SocialProofTimeline` (RENDERS)



# newFollower

**Kind:** Graphql Subscription

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Subscribe to new followers

## Relationships

- TYPE_OF → `Follow`

## Referenced By

- `Subscription` (CALLS_API)



# NextjsParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/frontend-parser/src/parsers/nextjs.parser.ts` (line 53)

**Extends:** `ReactParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `version` | `string` |
| `supportedPatterns` | `string[]` |



# ParseProcessor

**Kind:** Class

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parse.processor.ts` (line 68)

**Implements:** `OnModuleInit`, `OnModuleDestroy`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `onModuleInit` | `onModuleInit()` | `Promise` |
| `onModuleDestroy` | `onModuleDestroy()` | `Promise` |
| `handleParse` | `handleParse(job: Job)` | `Promise` |
| `onActive` | `onActive(job: Job)` | `void` |
| `onCompleted` | `onCompleted(job: Job, result: ParseResult[])` | `void` |
| `onFailed` | `onFailed(job: Job, error: Error)` | `void` |
| `onProgress` | `onProgress(job: Job, progress: number)` | `void` |



# ParserRegistryConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/config-docs-parser/src/services/parser-registry.service.ts` (line 19)

## Properties

| Property | Type |
|---|---|
| `rootDir` | `string` |
| `enabledParsers` | `string[]` |
| `parserOptions` | `Record` |



# PmeCompactionStrategy

**Kind:** Class

**Source:** `atloria-monorepo/libs/pme-core/src/context/pme-compaction-strategy.ts` (line 31)

**Implements:** `CompactionStrategy`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `shouldPreserve` | `shouldPreserve(item: ContextItem)` | `boolean` |
| `summarize` | `summarize(items: ContextItem[])` | `string` |



# Post

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Blog post

`Post` is a GraphQL object type representing a blog post in the backend API, including its core content (`title`, `content`) and publication state (`published`, `publishedAt`). It acts as an aggregate root that links to related entities like `author`, `comments`, `likes`, and `tags`, while also exposing derived data such as `commentCount`. This type is typically returned by post-related queries and mutations and drives client rendering of post detail and list views.

## Diagram

```mermaid
graph LR
  Post[Post]
  User[User]
  Comment[Comment]
  Like[Like]
  Tag[Tag]

  Post -->|author: User!| User
  Post -->|comments: [Comment!]!| Comment
  Post -->|likes: [Like!]!| Like
  Post -->|tags: [Tag!]!| Tag

  Post -->|id: ID!| ID[(ID)]
  Post -->|title: String!| String[(String)]
  Post -->|content: String!| String2[(String)]
  Post -->|published: Boolean!| Bool[(Boolean)]
  Post -->|publishedAt: DateTime| DateTime[(DateTime)]
  Post -->|commentCount: Int!| Int[(Int)]
```

## Usage

```ts
// Example using graphql-request in a Next.js/NestJS-compatible setup.
import { GraphQLClient, gql } from "graphql-request";

const client = new GraphQLClient(process.env.API_URL!, {
  headers: {
    // e.g. Authorization: `Bearer ${token}`,
  },
});

const GET_POST = gql`
  query GetPost($id: ID!) {
    post(id: $id) {
      id
      title
      content
      published
      publishedAt
      commentCount
      author {
        id
        name
      }
      tags {
        id
        name
      }
      comments {
        id
        content
        author {
          id
          name
        }
      }
      likes {
        id
        user {
          id
          name
        }
      }
    }
  }
`;

type GetPostResult = {
  post: {
    id: string;
    title: string;
    content: string;
    published: boolean;
    publishedAt: string | null;
    commentCount: number;
    author: { id: string; name: string };
    tags: Array<{ id: string; name: string }>;
    comments: Array<{ id: string; content: string; author: { id: string; name: string } }>;
    likes: Array<{ id: string; user: { id: string; name: string } }>;
  };
};

export async function fetchPost(id: string) {
  const data = await client.request(GET_POST, { id });
  return data.post;
}

// Usage:
// const post = await fetchPost("post_123");
// console.log(post.title, post.commentCount);
```

## AI Coding Instructions

- Treat `Post` as an aggregate: keep `author`, `comments`, `likes`, and `tags` resolved consistently (avoid partial resolver behavior that returns `null` for non-nullable fields).
- Ensure `commentCount: Int!` stays in sync with `comments` (compute via DB aggregation where possible; avoid N+1 counting per post).
- Respect publication semantics: if `published` is `false`, `publishedAt` should typically be `null` (enforce in mutations and resolvers).
- When adding fields, keep GraphQL nullability intentional: only mark as non-null (`!`) if the resolver/data layer can guarantee it under all conditions.

## Relationships

- TYPE_OF → `DateTime`
- TYPE_OF → `User`
- TYPE_OF → `Comment`
- TYPE_OF → `Like`
- TYPE_OF → `Tag`
- TYPE_OF → `DateTime`
- TYPE_OF → `DateTime`

## Referenced By

- `post` (TYPE_OF)
- `createPost` (TYPE_OF)
- `updatePost` (TYPE_OF)
- `newPost` (TYPE_OF)
- `User` (TYPE_OF)
- `Comment` (TYPE_OF)
- `Like` (TYPE_OF)
- `Tag` (TYPE_OF)
- `PostConnection` (TYPE_OF)



# posts

**Kind:** Graphql Query

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Get posts with filters

## Relationships

- TYPE_OF → `PostConnection`

## Referenced By

- `Query` (CALLS_API)



# PrismaParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/database-parser/src/parsers/prisma.parser.ts` (line 67)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# ProfilePage

**Kind:** Component

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/pages/profile/[id].tsx` (line 21)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `initialUser` | `unknown` | - | - |

## Diagram

```mermaid
graph TD
    component_ProfilePage_560b332b["ProfilePage"]
    class component_ProfilePage_560b332b rootComponent
```

## Relationships

- RENDERS → `Layout`
- RENDERS → `Head`
- RENDERS → `UserProfile`
- USES_HOOK → `useRouter`



# ProjectInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 12)

Ground Truth — Amlak Project

Known facts about the amlak repo that we score the agent's output against.
Built from manual inspection on 2026-03-22, updated with agent discoveries.

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `path` | `string` |
| `tech` | `string` |
| `description` | `string` |
| `language` | `'typescript' | 'python' | 'mixed'` |



# QueueModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/queue.module.ts` (line 6)

## Relationships

- MODULE_PROVIDES → `pmeprocessor`
- MODULE_EXPORTS → `bullmodule`



# RedisService

**Kind:** Service

**Source:** `atloria-monorepo/libs/database/src/lib/redis.service.ts` (line 7)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `onModuleInit` | `onModuleInit()` | `unknown` |
| `onModuleDestroy` | `onModuleDestroy()` | `unknown` |
| `getClient` | `getClient()` | `Redis | null` |
| `isAvailable` | `isAvailable()` | `boolean` |
| `get` | `get(key: string)` | `Promise` |
| `set` | `set(key: string, value: string, ttlSeconds: number)` | `Promise` |
| `del` | `del(key: string)` | `Promise` |
| `exists` | `exists(key: string)` | `Promise` |
| `setJson` | `setJson(key: string, value: T, ttlSeconds: number)` | `Promise` |
| `getJson` | `getJson(key: string)` | `Promise` |
| `cached` | `cached(key: string, fetchFn: () => Promise, ttlSeconds: unknown)` | `Promise` |
| `invalidatePattern` | `invalidatePattern(pattern: string)` | `Promise` |

## Relationships

- DEPENDS_ON → `configservice`



# RenderRecursiveWrappers

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/MDXEditor.tsx` (line 179)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `wrappers` | `any` | ✓ | - |
| `children` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_RenderRecursiveWrappers_4c55724f["RenderRecursiveWrappers"]
    class component_RenderRecursiveWrappers_4c55724f rootComponent
```

## Relationships

- RENDERS → `Wrapper`
- RENDERS → `RenderRecursiveWrappers`

## Referenced By

- `RichTextEditor` (RENDERS)
- `RenderRecursiveWrappers` (RENDERS)



# Root

**Kind:** Page

**Source:** `atloria-monorepo/templates/site-bootstrap/src/App.tsx`



# SUPERLATIVES_LIST

**Kind:** Constant

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/brand-voice.guardrail.ts` (line 124)

Exported for testing — the list of superlatives the guardrail checks.



# System.Text.Json

**Kind:** Service

**Source:** `atloria-monorepo/libs/parser-core/src/dotnet-bridge/Atloria.CSharpParser/Atloria.CSharpParser.csproj` (line 1)

NuGet package dependency

## Referenced By

- `Atloria.CSharpParser` (DEPENDS_ON)



# test

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web-e2e/src/fixtures/base.fixture.ts` (line 75)

Extended test with custom fixtures



# TestFixtures

**Kind:** Type

**Source:** `atloria-monorepo/apps/web-e2e/src/fixtures/base.fixture.ts` (line 25)

Extended test fixtures for Atloria E2E tests

## Definition

```ts
{
  /**
   * Authenticated page - user is logged in
   */
  authenticatedPage: Page;

  /**
   * Run accessibility checks on the page
   */
  checkAccessibility: (page: Page, options?: AccessibilityOptions) => Promise;

  /**
   * Test user credentials
   */
  testUser: TestUser;

  /**
   * S…
```



# User

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `email` | `string` |
| `name` | `string` |
| `role` | `string` |
| `createdAt` | `string` |

## Referenced By

- `createUser` (REFERENCES)
- `updateUser` (REFERENCES)
- `User Management API` (TYPE_OF)
- `UserWithProfile` (EXTENDS)
- `AuthResponse` (TYPE_OF)



# UsersController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.controller.ts` (line 29)

## Relationships

- MODULE_DECLARES → `findAll`
- MODULE_DECLARES → `findOne`
- MODULE_DECLARES → `create`
- MODULE_DECLARES → `update`
- MODULE_DECLARES → `remove`
- MODULE_DECLARES → `getUserPosts`
- MODULE_DECLARES → `getFollowers`
- DEPENDS_ON → `usersservice`



# $createDirectiveNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/directives/DirectiveNode.tsx` (line 147)

## Signature

```ts
function $createDirectiveNode(mdastNode: Directives, key: NodeKey): DirectiveNode
```

## Parameters

| Name | Type |
|---|---|
| `mdastNode` | `Directives` |
| `key` | `NodeKey` |

**Returns:** `DirectiveNode`



# activate

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/doc-version/doc-version.controller.ts` (line 160)

## Endpoint

`POST /doc-versions/:projectId/:versionId/activate`

| Parameter | In | Type | Required |
|---|---|---|---|
| `versionId` | query | `string` | ✓ |

## Referenced By

- `DocVersionController` (MODULE_DECLARES)



# activeEditorSubscriptions$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 464)



# AddCardsDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/boards/dto/card.dto.ts` (line 3)

## Properties

| Property | Type |
|---|---|
| `issueIds` | `string[]` |
| `columnId` | `string` |



# AgentAnalyticsService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/events/agent-analytics.service.ts` (line 28)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `agentTraffic` | `agentTraffic(projectId: string, organizationId: string, days: unknown)` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`



# AgentContextResult

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-10-generation/agent-context.service.ts` (line 36)

## Properties

| Property | Type |
|---|---|
| `documentId` | `string` |
| `contextSummary` | `string` |
| `userWorkflow` | `string` |
| `uiElements` | `string[]` |
| `validations` | `string[]` |
| `errorStates` | `string[]` |
| `relatedFeatures` | `string[]` |



# AgentController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/agent/agent.controller.ts` (line 12)

## Relationships

- MODULE_DECLARES → `getStatus`
- DEPENDS_ON → `agentservice`



# AgentDefinition

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/plugins/plugin-types.ts` (line 62)

A sub-agent definition contributed by a plugin.

Each `.md` file in a plugin's `agents/` directory produces one
AgentDefinition.

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `description` | `string` |
| `instructions` | `string` |
| `tools` | `string[]` |
| `model` | `string` |



# AgentErrorEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 139)

## Properties

| Property | Type |
|---|---|
| `message` | `string` |
| `recoverable` | `boolean` |



# AgentInputItem

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/types.ts` (line 246)

Opaque SDK input item — domain layers pass these through without interpreting.
The actual type is determined by the underlying SDK.

## Definition

```ts
unknown
```



# AgentSession

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/session/agent-session.ts` (line 80)

Interactive agent session.

Usage:
```typescript
const session = new AgentSession(runtime, agentConfig, { maxTurns: 30 });
session.on('tool_start', (e) => console.log(`Using ${e.toolName}...`));
session.on('agent_message', (e) => console.log(e.text));

const result = await session.send('Build a login page');
const result2 = await session.send('Add password validation');
```

**Extends:** `EventEmitter`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `on` | `on(event: K, listener: (data: SessionEventMap[K]) => void)` | `this` |
| `off` | `off(event: K, listener: (data: SessionEventMap[K]) => void)` | `this` |
| `emit` | `emit(event: K, data: SessionEventMap[K])` | `boolean` |
| `send` | `send(message: string)` | `Promise` |
| `inject` | `inject(message: string)` | `void` |
| `cancel` | `cancel()` | `void` |
| `getState` | `getState()` | `SessionState` |
| `getHistory` | `getHistory()` | `AgentHistoryItem[]` |
| `getUsage` | `getUsage()` | `TokenUsage` |
| `getSendCount` | `getSendCount()` | `number` |
| `getTurnCount` | `getTurnCount()` | `number` |
| `getSnapshot` | `getSnapshot()` | `{ conversationHistory: AgentHistoryItem[]; sdkHistory: unknown[] }` |
| `loadHistory` | `loadHistory(conversationHistory: AgentHistoryItem[], sdkHistory: unknown[])` | `void` |
| `end` | `end()` | `void` |
| `setVerbose` | `setVerbose(enabled: boolean)` | `void` |
| `isVerbose` | `isVerbose()` | `boolean` |
| `isPlanMode` | `isPlanMode()` | `boolean` |
| `getActiveModel` | `getActiveModel()` | `string | undefined` |
| `approvePlan` | `approvePlan(feedback: string)` | `Promise` |
| `revisePlan` | `revisePlan(feedback: string)` | `Promise` |
| `fork` | `fork(branchName: string)` | `AgentSession` |



# AIModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/ai/ai.module.ts` (line 20)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `configmodule`
- MODULE_DECLARES → `aicontroller`
- MODULE_PROVIDES → `aiservice`
- MODULE_PROVIDES → `aiusageservice`
- MODULE_PROVIDES → `azureclaudeprovider`
- MODULE_PROVIDES → `azureopenaiprovider`
- MODULE_PROVIDES → `ratelimitguard`
- MODULE_PROVIDES → `filecontextservice`
- MODULE_PROVIDES → `codeanalysisservice`
- MODULE_PROVIDES → `uianalyzerservice`
- MODULE_PROVIDES → `playwrightgeneratorservice`
- MODULE_PROVIDES → `businesscontextparserservice`
- MODULE_EXPORTS → `aiservice`
- MODULE_EXPORTS → `aiusageservice`
- MODULE_EXPORTS → `azureclaudeprovider`
- MODULE_EXPORTS → `azureopenaiprovider`
- MODULE_EXPORTS → `filecontextservice`
- MODULE_EXPORTS → `codeanalysisservice`
- MODULE_EXPORTS → `uianalyzerservice`
- MODULE_EXPORTS → `playwrightgeneratorservice`
- MODULE_EXPORTS → `businesscontextparserservice`



# AIRequestLog

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 42)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `timestamp` | `Date` |
| `provider` | `AIProviderName` |
| `operation` | `'enhance' | 'outline' | 'improve' | 'summarize' | 'complete'` |
| `status` | `'success' | 'error' | 'pending'` |
| `tokensUsed` | `number` |
| `duration` | `number` |
| `errorMessage` | `string` |



# AnalyticsProvider

**Kind:** Type

**Source:** `atloria-monorepo/templates/site-bootstrap/src/lib/analytics.ts` (line 8)

Analytics Engine

Config-driven analytics — supports Azure Application Insights (default),
Google Analytics 4, and Meta Pixel. No tracking until cookie consent.

## Definition

```ts
| 'azure-app-insights'
  | 'google-analytics'
  | 'meta-pixel'
  | 'none'
```



# AnalyzerService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-04-analysis/analyzer.service.ts` (line 1)



# analyzeStateMachine

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/state-machine-analyzer.ts` (line 225)

Analyze complete state machine from code

Combines enum parsing and transition extraction to build a complete
state machine definition.

## Signature

```ts
function analyzeStateMachine(code: string, enumName: string, filePath: string): StateMachine
```

## Parameters

| Name | Type |
|---|---|
| `code` | `string` |
| `enumName` | `string` |
| `filePath` | `string` |

**Returns:** `StateMachine`



# AngularSelectorExtractor

**Kind:** Class

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/detectors/angular-selector-extractor.ts` (line 18)

Angular Selector Extractor

## Methods

| Method | Signature | Returns |
|---|---|---|
| `extractFromTemplate` | `extractFromTemplate(template: string)` | `ExtractedSelectors` |



# APIFlow

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/relationship.interface.ts` (line 406)

API flow showing component → API → service → model chain

## Properties

| Property | Type |
|---|---|
| `endpoint` | `{
    id: string;
    name: string;
    path: string;
    method: string;
  }` |
| `callers` | `Array<{
    id: string;
    name: string;
    type: string;
    filePath: string;
  }>` |
| `services` | `Array<{
    id: string;
    name: string;
    filePath: string;
  }>` |
| `models` | `Array<{
    id: string;
    name: string;
    tableName: string;
  }>` |
| `relationships` | `Relationship[]` |



# apiRateLimitingTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/api-rate-limiting.template.ts` (line 3)



# AppConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/config.interface.ts` (line 14)

Configuration Interfaces

Defines configuration types for the parser orchestrator system.

## Properties

| Property | Type |
|---|---|
| `port` | `number` |
| `host` | `string` |
| `environment` | `'development' | 'staging' | 'production'` |
| `debug` | `boolean` |
| `logLevel` | `'debug' | 'info' | 'warn' | 'error'` |



# applyFiltersToBoard

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Boards/BoardFilters.tsx` (line 86)

Filter a whole board (returns a new board with filtered cards per column)

## Signature

```ts
function applyFiltersToBoard(board: BoardData, f: BoardFiltersState): BoardData
```

## Parameters

| Name | Type |
|---|---|
| `board` | `BoardData` |
| `f` | `BoardFiltersState` |

**Returns:** `BoardData`



# AppService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/app.service.ts` (line 4)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getHealth` | `getHealth()` | `unknown` |
| `getInfo` | `getInfo()` | `unknown` |

## Relationships

- DEPENDS_ON → `storageservice`



# AssemblyResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/types.ts` (line 98)

## Properties

| Property | Type |
|---|---|
| `success` | `boolean` |
| `outputDir` | `string` |
| `filesWritten` | `string[]` |
| `errors` | `Array<{ stage: AssemblyStage; message: string; context?: Record }>` |
| `warnings` | `string[]` |
| `durationMs` | `number` |



# audienceSlugToScope

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/project/audience-scope.util.ts` (line 20)

Map a public audience slug to its doc-set scope.
'technical' | 'api' | 'developer' → 'technical'; everything else → 'user'.

## Signature

```ts
function audienceSlugToScope(audienceSlug: string | null): DocAudienceScope
```

## Parameters

| Name | Type |
|---|---|
| `audienceSlug` | `string | null` |

**Returns:** `DocAudienceScope`



# AuthDiagnostics

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/utils/ai-auth-debugger.ts` (line 25)

## Properties

| Property | Type |
|---|---|
| `phase` | `string` |
| `timestamp` | `number` |
| `screenshots` | `string[]` |
| `pageState` | `{
    url: string;
    title: string;
    hasLoginForm: boolean;
    hasPasswordField: boolean;
    errors: string[];
    alerts: Array<{ text: string; role: string }>;
    formInputsFilled: number;
    localStorageKeys: string[];
    cookieCount: number;
    pendingRequests: number;
  }` |
| `attemptLog` | `Array<{
    action: string;
    method: string;
    success: boolean;
    error?: string;
  }>` |



# authenticateWithAI

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/utils/ai-auth-debugger.ts` (line 274)

Main entry point: AI-driven authentication with automatic debugging

## Signature

```ts
async function authenticateWithAI(page: any, _context: any, config: AuthConfig, maxRetries: number): Promise<{
  success: boolean;
  diagnostics: AuthDiagnostics[];
  aiAnalysis?: any;
}>
```

## Parameters

| Name | Type |
|---|---|
| `page` | `any` |
| `_context` | `any` |
| `config` | `AuthConfig` |
| `maxRetries` | `number` |

**Returns:** `Promise<{
  success: boolean;
  diagnostics: AuthDiagnostics[];
  aiAnalysis?: any;
}>`



# azureRuntimeConfig

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/runtime-config.ts` (line 79)

Helper: create a RuntimeConfig with defaults for Azure GPT-5.4.
Uses DEFAULT_LOOP_ENGINE (env-switchable).

## Signature

```ts
function azureRuntimeConfig(azureConfig: AzureModelProviderConfig): RuntimeConfig
```

## Parameters

| Name | Type |
|---|---|
| `azureConfig` | `AzureModelProviderConfig` |

**Returns:** `RuntimeConfig`



# BatchRequestBuilder

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/test/helpers/batch-builder.ts` (line 19)

Builder for constructing test batch screenshot requests

Usage:
  const batch = new BatchRequestBuilder()
    .withProjectId('test-project')
    .withScreenshot({ url: 'http://localhost:3000', description: 'Test' })
    .build();

## Methods

| Method | Signature | Returns |
|---|---|---|
| `withProjectId` | `withProjectId(projectId: string)` | `this` |
| `withOrganizationId` | `withOrganizationId(organizationId: string)` | `this` |
| `withCapturedBy` | `withCapturedBy(capturedBy: string)` | `this` |
| `withName` | `withName(name: string)` | `this` |
| `withDescription` | `withDescription(description: string)` | `this` |
| `withConfig` | `withConfig(config: Partial)` | `this` |
| `withAuth` | `withAuth(auth: Partial)` | `this` |
| `withScreenshot` | `withScreenshot(screenshot: Partial)` | `this` |
| `withScreenshots` | `withScreenshots(screenshots: Partial[])` | `this` |
| `build` | `build()` | `TakeBatchScreenshotsDto` |



# BatchTask

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/batch-screenshot.service.ts` (line 33)

Task representation for parallel execution

## Properties

| Property | Type |
|---|---|
| `index` | `number` |
| `item` | `BatchScreenshotItemDto` |
| `priority` | `number` |



# BoardTemplate

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/boards/dto/create-board.dto.ts` (line 3)

## Definition

```ts
'default' | 'simple' | 'empty'
```



# BrowserType

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/playwright/playwright.service.ts` (line 4)

## Definition

```ts
'chromium' | 'firefox' | 'webkit'
```



# buildCopywriterSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/copywriter.prompts.ts` (line 20)

System prompt for the copywriter agent.
Establishes tone, constraints, and self-critique loop.

## Signature

```ts
function buildCopywriterSystemPrompt(config: GenerationConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `config` | `GenerationConfig` |

**Returns:** `string`



# CATEGORY_LABELS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 36)

## Definition

```ts
Record
```



# checkAriaLabels

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 259)

Check ARIA labels

## Signature

```ts
async function checkAriaLabels(page: Page): Promise<{
  elementsWithoutLabels: string[];
  elementsWithLabels: number;
}>
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |

**Returns:** `Promise<{
  elementsWithoutLabels: string[];
  elementsWithLabels: number;
}>`



# Code

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/projects/[id]/technical-docs/entity/[entityId]/page.tsx` (line 51)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `children` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_Code_5a818399["Code"]
    class component_Code_5a818399 rootComponent
```

## Referenced By

- `MethodsTable` (RENDERS)
- `FieldsTable` (RENDERS)
- `EntityDetailPage` (RENDERS)



# Comment

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Comment on a post

## Relationships

- TYPE_OF → `User`
- TYPE_OF → `Post`
- TYPE_OF → `Comment`
- TYPE_OF → `Comment`
- TYPE_OF → `DateTime`
- TYPE_OF → `DateTime`

## Referenced By

- `addComment` (TYPE_OF)
- `newComment` (TYPE_OF)
- `Post` (TYPE_OF)
- `Comment` (TYPE_OF)
- `Comment` (TYPE_OF)



# CommentSidebarPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/comments.page.ts` (line 7)

Comment sidebar page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `isVisible` | `isVisible()` | `Promise` |
| `waitForLoad` | `waitForLoad()` | `Promise` |
| `getCommentThreads` | `getCommentThreads()` | `Locator` |
| `getCommentByContent` | `getCommentByContent(content: string)` | `Locator` |
| `getCommentCount` | `getCommentCount()` | `Promise` |
| `addComment` | `addComment(content: string)` | `Promise` |
| `replyToComment` | `replyToComment(commentContent: string, replyContent: string)` | `Promise` |
| `resolveComment` | `resolveComment(commentContent: string)` | `Promise` |
| `unresolveComment` | `unresolveComment(commentContent: string)` | `Promise` |
| `deleteComment` | `deleteComment(commentContent: string)` | `Promise` |
| `isCommentResolved` | `isCommentResolved(commentContent: string)` | `Promise` |
| `getActiveCommentCount` | `getActiveCommentCount()` | `Promise` |
| `getResolvedCommentCount` | `getResolvedCommentCount()` | `Promise` |
| `hasNoComments` | `hasNoComments()` | `Promise` |
| `addCommentWithMention` | `addCommentWithMention(content: string, mentionUsername: string)` | `Promise` |
| `getReplies` | `getReplies(commentContent: string)` | `Locator` |
| `getReplyCount` | `getReplyCount(commentContent: string)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `sidebar` | `Locator` |
| `header` | `Locator` |
| `commentList` | `Locator` |
| `newCommentForm` | `Locator` |
| `commentInput` | `Locator` |
| `submitButton` | `Locator` |
| `emptyState` | `Locator` |
| `activeCount` | `Locator` |
| `resolvedCount` | `Locator` |
| `loadingSpinner` | `Locator` |



# ConfigFormat

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/storybook/types.ts` (line 14)

Configuration format detected

## Definition

```ts
'storybook' | 'ladle' | 'atloria' | 'none'
```



# ConnectionStatus

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/hooks/useCollaboration.ts` (line 59)

Connection status for the collaboration session

## Definition

```ts
'connecting' | 'connected' | 'disconnected' | 'error'
```



# ContentSafetyConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/content-safety.guardrail.ts` (line 43)

## Properties

| Property | Type |
|---|---|
| `checkFabricatedStats` | `boolean` |
| `checkDefamation` | `boolean` |
| `checkLegalClaims` | `boolean` |
| `checkFakeTestimonials` | `boolean` |



# copySections

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/copy.ts` (line 35)

Copy selected section .tsx files and their shared component dependencies
to the output directory.

## Signature

```ts
async function copySections(resolvedSections: ManifestSection[], componentLibraryDir: string, outputDir: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `resolvedSections` | `ManifestSection[]` |
| `componentLibraryDir` | `string` |
| `outputDir` | `string` |

**Returns:** `Promise`



# createAuthenticatedBatch

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/test/helpers/batch-builder.ts` (line 323)

Helper function to create an authenticated batch request

## Signature

```ts
function createAuthenticatedBatch(urls: string[], auth: {
    loginUrl: string;
    username: string;
    password: string;
    usernameSelector?: string;
    passwordSelector?: string;
    submitSelector?: string;
  }, options: {
    projectId?: string;
    organizationId?: string;
  }): TakeBatchScreenshotsDto
```

## Parameters

| Name | Type |
|---|---|
| `urls` | `string[]` |
| `auth` | `{
    loginUrl: string;
    username: string;
    password: string;
    usernameSelector?: string;
    passwordSelector?: string;
    submitSelector?: string;
  }` |
| `options` | `{
    projectId?: string;
    organizationId?: string;
  }` |

**Returns:** `TakeBatchScreenshotsDto`



# createMockParser

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 92)

Create a mock parser for testing

## Signature

```ts
function createMockParser(name: string, patterns: string[], parseResult: Partial): IParser
```

## Parameters

| Name | Type |
|---|---|
| `name` | `string` |
| `patterns` | `string[]` |
| `parseResult` | `Partial` |

**Returns:** `IParser`



# createUser

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

Create a new user

## Endpoint

`POST /users`

## Relationships

- REFERENCES → `CreateUser`
- REFERENCES → `User`
- REFERENCES → `Error`
- REFERENCES → `Error`

## Referenced By

- `User Management API` (IMPLEMENTS_API)



# createUser

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Create a new user

## Relationships

- TYPE_OF → `User`
- TYPE_OF → `CreateUserInput`

## Referenced By

- `Mutation` (CALLS_API)



# DEFAULT_BLOCKED_PATTERNS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/tools/bash.tool.ts` (line 55)

## Definition

```ts
RegExp[]
```



# DEFAULT_RETRY_CONFIG

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/retry-handler.service.ts` (line 22)

Default retry configuration

## Definition

```ts
RetryConfig
```



# DiffChangeType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/document/dto/compare-document.dto.ts` (line 44)

Diff change types emitted by the document comparison service.

NOTE: `MODIFIED` is retained for backward compatibility with older clients
but is no longer produced by `calculateTextDiff`. The new LCS-based diff
emits every edited line as a paired `REMOVED` + `ADDED` entry so the old
and new content are both preserved on the response.

## Values

- `ADDED`
- `REMOVED`
- `UNCHANGED`
- `MODIFIED`



# DiscoveryController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/discovery.controller.ts` (line 5)

## Relationships

- MODULE_DECLARES → `scan`
- DEPENDS_ON → `discoveryservice`



# DjangoParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/django.parser.ts` (line 48)

Django REST Framework Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# DocSearchFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/tools/query-docs.tool.ts` (line 15)

Search function signature — matches AzureSearchService.search() shape.
Injected at tool creation time.

## Definition

```ts
(
  query: string,
  projectId: string,
  maxResults?: number
) => Promise
```



# DocumentState

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 55)

Document state tracks the lifecycle stage of a document

## Values

- `DRAFT`
- `REVIEW`
- `PUBLISHED`
- `OUTDATED`



# EntityType

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/entity.interface.ts` (line 16)

Entity types that can be discovered by parsers

## Values

- `COMPONENT`
- `HOOK`
- `PAGE`
- `LAYOUT`
- `ROUTE`
- `CONTEXT`
- `PROVIDER`
- `STORE`
- `STATE_ACTION`
- `STATE_REDUCER`
- `STATE_SELECTOR`
- `STATE_MIDDLEWARE`
- `STATE_EFFECT`
- `STATE_STORE`
- `CONTROLLER`
- `SERVICE`
- `REPOSITORY`
- `MIDDLEWARE`
- `GUARD`
- `INTERCEPTOR`
- `PIPE`
- `MODULE`
- `EVENT_HANDLER`
- `JOB_PROCESSOR`
- `API_ENDPOINT`
- `GRAPHQL_QUERY`
- `GRAPHQL_MUTATION`
- `GRAPHQL_SUBSCRIPTION`
- `GRAPHQL_TYPE`
- `RPC_METHOD`
- `WEBSOCKET_ENDPOINT`
- `DATABASE_MODEL`
- `DATABASE_MIGRATION`
- `DATABASE_SEED`
- `DATABASE_VIEW`
- `DATABASE_PROCEDURE`
- `DOCKER_SERVICE`
- `K8S_DEPLOYMENT`
- `K8S_SERVICE`
- `K8S_CONFIGMAP`
- `TERRAFORM_RESOURCE`
- `CI_WORKFLOW`
- `MARKDOWN_DOC`
- `API_SCHEMA`
- `DOC_COMMENT`
- `ENV_VARIABLE`
- `CONFIG_FILE`
- `FEATURE_FLAG`
- `CLASS`
- `FUNCTION`



# Error

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `statusCode` | `integer` |
| `message` | `string` |
| `error` | `string` |

## Referenced By

- `createUser` (REFERENCES)
- `createUser` (REFERENCES)
- `getUserById` (REFERENCES)
- `User Management API` (TYPE_OF)



# extractDefaultValue

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 258)

Extract default value as a string representation

## Signature

```ts
function extractDefaultValue(node: t.Node): string
```

## Parameters

| Name | Type |
|---|---|
| `node` | `t.Node` |

**Returns:** `string`



# FastAPIParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/backend-parser/src/parsers/fastapi.parser.ts` (line 41)

FastAPI Parser implementation

Uses regex-based parsing for Python files since we can't use Python AST directly in Node.js

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# FetchCategoriesFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 43)

Fetch the document category tree for a project.

## Definition

```ts
(
  projectId: string,
) => Promise
```



# FileSystemProvider

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/providers/filesystem.provider.ts` (line 19)

File system data provider
Reads from local JSON files in outputDir

**Implements:** `DataProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: DataProviderConfig)` | `Promise` |
| `getProjectMetadata` | `getProjectMetadata()` | `Promise` |
| `getEntities` | `getEntities()` | `Promise` |
| `getEntitiesByType` | `getEntitiesByType(type: string)` | `Promise` |
| `getEntityById` | `getEntityById(id: string)` | `Promise` |
| `getRelationships` | `getRelationships()` | `Promise` |
| `getRelationshipsForEntity` | `getRelationshipsForEntity(entityId: string)` | `Promise` |
| `saveParseResults` | `saveParseResults(results: ParseResult[], project: DetectedProject)` | `Promise` |
| `destroy` | `destroy()` | `Promise` |



# generateRelationshipId

**Kind:** Function

**Source:** `atloria-monorepo/apps/database-parser/src/utils/hash.util.ts` (line 35)

Generate a relationship ID

## Signature

```ts
function generateRelationshipId(sourceId: string, type: string, targetId: string): string
```

## Parameters

| Name | Type |
|---|---|
| `sourceId` | `string` |
| `type` | `string` |
| `targetId` | `string` |

**Returns:** `string`



# getHealth

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/app.controller.ts` (line 11)

Health check endpoint

## Endpoint

`GET /`

## Referenced By

- `AppController` (MODULE_DECLARES)



# getJobStatus

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.controller.ts` (line 62)

Get analysis job status

GET /api/analysis/:jobId

Returns:
{
  "id": "uuid",
  "status": "analyzing" | "completed" | "failed",
  "progress": 75,
  "repoUrl": "...",
  "branch": "main",
  "folderPath": "packages/frontend",
  "framework": "react",
  "routesFound": 25,
  "componentsFound": 150,
  "modalsFound": 12,
  "createdAt": "2024-01-01T00:00:00Z",
  "completedAt": "2024-01-01T00:05:00Z"
}

## Endpoint

`GET /analysis/:jobId`

| Parameter | In | Type | Required |
|---|---|---|---|
| `jobId` | query | `string` | ✓ |

## Referenced By

- `AnalysisController` (MODULE_DECLARES)



# GitModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/git/git.module.ts` (line 4)

## Relationships

- MODULE_PROVIDES → `gitservice`
- MODULE_EXPORTS → `gitservice`



# GitService

**Kind:** Service

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/git/git.service.ts` (line 35)

Git service for cloning repositories with mono-repo support

Features:
- Shallow clones for speed (depth=1 by default)
- Support for specific branches
- Mono-repo folder path support
- Automatic cleanup of old clones
- Git authentication via tokens (for private repos)

`GitService` is a NestJS backend service responsible for cloning Git repositories to a local workspace for analysis, with built-in support for mono-repo subfolder targeting. It optimizes cloning via shallow clones (default `depth=1`), supports selecting specific branches, and handles authentication for private repositories via tokens. It also manages lifecycle concerns like cleaning up old clones to keep disk usage under control.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `clone` | `clone(options: CloneOptions)` | `Promise` |
| `cleanup` | `cleanup(clonePath: string)` | `Promise` |
| `cleanupOld` | `cleanupOld()` | `Promise` |
| `checkGitInstalled` | `checkGitInstalled()` | `Promise` |

## Diagram

```mermaid
sequenceDiagram
  autonumber
  actor Caller as Analyzer/Controller
  participant GitService as GitService
  participant FS as Local FS
  participant Git as Git CLI/Library
  participant Cleanup as Cleanup Job

  Caller->>GitService: clone({ repoUrl, branch?, token?, depth=1, monoRepoPath? })
  GitService->>Cleanup: cleanupOldClones()
  Cleanup->>FS: delete stale clone dirs
  GitService->>Git: git clone --depth=1 (--branch )  
  alt Private repo (token provided)
    GitService->>Git: inject auth (token in URL/headers)
  end
  Git->>FS: write working tree to 
  alt monoRepoPath provided
    GitService->>FS: resolve /
    GitService-->>Caller: return path to mono-repo subfolder
  else
    GitService-->>Caller: return path to repo root
  end
```

## Usage

```ts
import { Injectable } from '@nestjs/common';
import { GitService } from './git.service';

@Injectable()
export class RepoAnalysisService {
  constructor(private readonly git: GitService) {}

  async analyze() {
    const localPath = await this.git.clone({
      repoUrl: 'https://github.com/acme/atloria-monorepo.git',
      branch: 'main',
      depth: 1, // shallow clone for speed (default behavior)
      monoRepoPath: 'apps/code-analyzer', // optional: target subfolder within a mono-repo
      token: process.env.GITHUB_TOKEN, // optional: required for private repos
    });

    // Use localPath as the root for scanning/analysis
    // e.g., await this.scanner.scan(localPath);
    return { localPath };
  }
}
```

## AI Coding Instructions

- Prefer shallow clones (`depth=1`) unless the feature explicitly needs history; increasing depth can dramatically impact performance and disk usage.
- When adding auth changes, ensure tokens are never logged and are not written to disk (avoid persisting tokenized URLs in config files).
- Treat `monoRepoPath` as a resolved, validated subdirectory of the clone target to avoid path traversal or accidental analysis of the wrong folder.
- Keep cleanup idempotent and safe: only delete within the managed clones directory, and never remove user-provided paths outside that root.
- Integration point: callers should rely on the returned local path (repo root or mono-repo subfolder) and avoid assuming directory structure before `clone()` resolves it.



# KnowledgeGraphModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/knowledge-graph/kg.module.ts` (line 16)

## Relationships

- MODULE_IMPORTS → `configmodule`
- MODULE_PROVIDES → `knowledgegraphservice`
- MODULE_PROVIDES → `kgsyncservice`
- MODULE_EXPORTS → `knowledgegraphservice`
- MODULE_EXPORTS → `kgsyncservice`



# KnowledgeGraphService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/knowledge-graph/kg.service.ts` (line 24)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `isConnected` | `isConnected()` | `boolean` |
| `onModuleInit` | `onModuleInit()` | `unknown` |
| `onModuleDestroy` | `onModuleDestroy()` | `unknown` |
| `upsertEntity` | `upsertEntity(entity: Entity)` | `Promise` |
| `upsertBatch` | `upsertBatch(entities: Entity[])` | `Promise` |
| `getEntity` | `getEntity(id: string)` | `Promise` |
| `getEntitiesByType` | `getEntitiesByType(type: EntityType, limit: unknown)` | `Promise` |
| `deleteEntity` | `deleteEntity(id: string)` | `Promise` |
| `createRelationship` | `createRelationship(relationship: Relationship)` | `Promise` |
| `createRelationshipsBatch` | `createRelationshipsBatch(relationships: Relationship[])` | `Promise` |
| `getRelationships` | `getRelationships(entityId: string)` | `Promise` |
| `deleteRelationship` | `deleteRelationship(relationshipId: string)` | `Promise` |
| `getComponentDependencies` | `getComponentDependencies(componentId: string, depth: unknown)` | `Promise` |
| `getAPIFlow` | `getAPIFlow(endpointId: string)` | `Promise` |
| `query` | `query(cypher: string, params: Record)` | `Promise` |
| `clearAll` | `clearAll()` | `Promise` |
| `getStatistics` | `getStatistics()` | `Promise<{
    totalNodes: number;
    totalRelationships: number;
    nodesByLabel: Record;
    relationshipsByType: Record;
  }>` |

## Relationships

- DEPENDS_ON → `configservice`



# KNOWN_PROJECTS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 25)

## Definition

```ts
ProjectInfo[]
```



# MarkdownParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/config-docs-parser/src/parsers/markdown.parser.ts` (line 62)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# newPost

**Kind:** Graphql Subscription

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Subscribe to new posts from followed users

## Relationships

- TYPE_OF → `Post`

## Referenced By

- `Subscription` (CALLS_API)



# OpenAPIParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/api-schema-parser/src/parsers/openapi.parser.ts` (line 38)

OpenAPI Parser Implementation

Supports:
- OpenAPI 3.0.x and 3.1.x
- Swagger 2.0
- JSON and YAML formats

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# ParseProjectDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/dto/parse-job.dto.ts` (line 75)

DTO for parsing an entire project

## Properties

| Property | Type |
|---|---|
| `rootDir` | `string` |
| `parsers` | `string[]` |
| `includePatterns` | `string[]` |
| `excludePatterns` | `string[]` |
| `incremental` | `boolean` |
| `maxFiles` | `number` |
| `parallel` | `boolean` |
| `metadata` | `Record` |



# PARSE_QUEUE_NAME

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/constants.ts` (line 7)

Queue Constants



# ParserCategory

**Kind:** Enum

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/parser.interface.ts` (line 118)

Parser category for grouping

## Values

- `FRONTEND`
- `BACKEND`
- `DATABASE`
- `API_SCHEMA`
- `CONFIG`
- `DOCUMENTATION`
- `INFRASTRUCTURE`



# PdfModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/pdf/pdf.module.ts` (line 6)

## Relationships

- MODULE_IMPORTS → `playwrightmodule`
- MODULE_DECLARES → `pdfcontroller`
- MODULE_PROVIDES → `pdfservice`
- MODULE_EXPORTS → `pdfservice`



# PerformanceMetrics

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/performance.ts` (line 24)

Performance metrics result

## Properties

| Property | Type |
|---|---|
| `ttfb` | `number` |
| `fcp` | `number` |
| `domContentLoaded` | `number` |
| `load` | `number` |
| `lcp` | `number` |
| `cls` | `number` |
| `resourceCount` | `number` |
| `totalSize` | `number` |
| `jsHeapSize` | `number` |
| `domNodes` | `number` |



# PmeMetricsCollector

**Kind:** Class

**Source:** `atloria-monorepo/libs/pme-core/src/tracing/pme-metrics.ts` (line 33)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `recordJob` | `recordJob(status: string)` | `void` |
| `recordQaScore` | `recordQaScore(sectionType: string, score: number)` | `void` |
| `recordVariantSelection` | `recordVariantSelection(variantKey: string)` | `void` |
| `recordGenerationTime` | `recordGenerationTime(durationMs: number)` | `void` |
| `recordSectionType` | `recordSectionType(sectionType: string)` | `void` |
| `recordTokenUsage` | `recordTokenUsage(inputTokens: number, outputTokens: number)` | `void` |
| `getMetrics` | `getMetrics()` | `PmeMetrics` |
| `toPrometheus` | `toPrometheus()` | `string` |



# PropInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 31)

Information about a prop definition

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `type` | `string` |
| `required` | `boolean` |
| `defaultValue` | `string` |
| `description` | `string` |



# ReactParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/frontend-parser/src/parsers/react.parser.ts` (line 76)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `version` | `string` |
| `supportedPatterns` | `string[]` |



# searchUsers

**Kind:** Graphql Query

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Search users by name or email

## Relationships

- TYPE_OF → `User`

## Referenced By

- `Query` (CALLS_API)



# SequelizeParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/database-parser/src/parsers/sequelize.parser.ts` (line 25)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# StatCard

**Kind:** Component

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/components/StatCard.tsx` (line 15)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `label` | `any` | ✓ | - |
| `value` | `any` | ✓ | - |
| `icon` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_StatCard_b56783e["StatCard"]
    class component_StatCard_b56783e rootComponent
```



# StepCard

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/how-it-works/how-it-works-timeline.tsx` (line 20)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `step` | `Step` | ✓ | - |
| `t` | `Function` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_StepCard_3fd6c6ab["StepCard"]
    class component_StepCard_3fd6c6ab rootComponent
```

## Relationships

- RENDERS → `Icon`

## Referenced By

- `HowItWorksTimeline` (RENDERS)



# TargetingTask

**Kind:** Interface

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 152)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `task` | `string` |
| `expectedProjects` | `string[]` |
| `expectedFiles` | `string[]` |
| `expectedKeywords` | `string[]` |



# terms

**Kind:** Page

**Source:** `atloria-monorepo/templates/site-bootstrap/src/App.tsx`



# THEME_PRESETS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/pme-core/src/tools/theme.ts` (line 93)

## Definition

```ts
Record
```



# TreeItem

**Kind:** Component

**Source:** `atloria-monorepo/packages/ui-react/src/components/NavigationTree.tsx` (line 59)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `node` | `DocumentTreeNode` | ✓ | - |
| `level` | `number` | ✓ | - |
| `activeId` | `string` | - | - |
| `expandedIds` | `string[]` | ✓ | - |
| `onToggleExpand` | `Function` | ✓ | - |
| `onItemClick` | `Function` | - | - |
| `showStateIndicator` | `boolean` | - | - |
| `focusedId` | `string | null` | ✓ | - |
| `onFocusChange` | `Function` | ✓ | - |
| `onKeyDown` | `Function` | ✓ | - |
| `itemRefs` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_TreeItem_636541b4["TreeItem"]
    class component_TreeItem_636541b4 rootComponent
```

## Relationships

- RENDERS → `TreeItem`
- USES_HOOK → `useCallback`

## Referenced By

- `TreeItem` (RENDERS)
- `NavigationTree` (RENDERS)



# WCAGLevel

**Kind:** Type

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 7)

WCAG conformance levels

## Definition

```ts
'A' | 'AA' | 'AAA'
```



# WEB_VITALS_THRESHOLDS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/performance.ts` (line 6)

Web Vitals thresholds (based on Google's guidelines)



# $createLexicalJsxNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/jsx/LexicalJsxNode.tsx` (line 144)

## Signature

```ts
function $createLexicalJsxNode(mdastNode: MdastJsx, importStatement: ImportStatement): LexicalJsxNode
```

## Parameters

| Name | Type |
|---|---|
| `mdastNode` | `MdastJsx` |
| `importStatement` | `ImportStatement` |

**Returns:** `LexicalJsxNode`



# activePlugins$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 911)

The names of the plugins that are currently active.



# addCards

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/boards/boards.controller.ts` (line 153)

## Endpoint

`POST /projects/:projectId/boards/:boardId/cards`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |
| `boardId` | query | `string` | ✓ |

## Referenced By

- `BoardsController` (MODULE_DECLARES)



# AddMemberDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/project/dto/add-member.dto.ts` (line 6)

## Properties

| Property | Type |
|---|---|
| `userId` | `string` |
| `role` | `UserRole` |



# AgentExecutionConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/support-agent/agent-adapter.service.ts` (line 24)

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `organizationId` | `string` |
| `projectName` | `string` |
| `agentName` | `string` |
| `systemPrompt` | `string` |
| `workspace` | `string` |
| `language` | `string` |
| `conversationHistory` | `Array<{ role: string; content: string }>` |



# AgentHistoryItem

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/types.ts` (line 148)

## Properties

| Property | Type |
|---|---|
| `role` | `'user' | 'assistant' | 'tool'` |
| `content` | `string` |
| `agentName` | `string` |
| `toolName` | `string` |



# AgentProtocolEventHandler

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/protocol/agent-protocol.ts` (line 92)

Handler signature used by SessionEventBridge listeners

## Definition

```ts
(
  event: AgentProtocolEvent,
) => void
```



# AgentScreenshotSpec

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/agent-screenshot-mapper.ts` (line 74)

Screenshot spec produced by agent analysis — ready for worker

## Properties

| Property | Type |
|---|---|
| `placeholderId` | `string` |
| `description` | `string` |
| `url` | `string` |
| `confidence` | `'exact' | 'inferred'` |
| `matchedRoute` | `string` |
| `actions` | `ScreenshotAction[]` |
| `waitForSelector` | `string` |
| `viewport` | `{ width: number; height: number }` |
| `stateType` | `'default' | 'hover' | 'modal' | 'error' | 'success'` |
| `category` | `string` |



# AgentService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/agent/agent.service.ts` (line 84)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `createSession` | `createSession(socketId: string, payload: AgentStartPayload)` | `Promise` |
| `getSession` | `getSession(socketId: string)` | `ManagedSession | undefined` |
| `destroySession` | `destroySession(socketId: string)` | `void` |
| `getActiveSessionCount` | `getActiveSessionCount()` | `number` |

## Relationships

- DEPENDS_ON → `configservice`



# AIController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/ai/ai.controller.ts` (line 23)

## Relationships

- MODULE_DECLARES → `enhance`
- MODULE_DECLARES → `generateOutline`
- MODULE_DECLARES → `improve`
- MODULE_DECLARES → `summarize`
- MODULE_DECLARES → `listProviders`
- DEPENDS_ON → `aiservice`



# AiderPolyglotAdapter

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/aider-adapter.ts` (line 49)

**Implements:** `BenchmarkAdapter`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `loadTasks` | `loadTasks(config: BenchmarkRunConfig)` | `Promise` |
| `setupTask` | `setupTask(task: BenchmarkTask, workDir: string)` | `Promise` |
| `buildPrompt` | `buildPrompt(task: BenchmarkTask)` | `string` |
| `evaluate` | `evaluate(task: BenchmarkTask, workDir: string)` | `Promise<{ passed: boolean; details: string }>` |
| `cleanup` | `cleanup(_task: BenchmarkTask, workDir: string)` | `Promise` |



# AISettings

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 19)

## Properties

| Property | Type |
|---|---|
| `defaultProvider` | `AIProviderName` |
| `maxTokens` | `number` |
| `temperature` | `number` |
| `enableStreaming` | `boolean` |
| `autoSave` | `boolean` |



# AnalyticsModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/analytics/analytics.module.ts` (line 13)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `emailmodule`
- MODULE_DECLARES → `analyticscontroller`
- MODULE_DECLARES → `analyticsexportcontroller`
- MODULE_PROVIDES → `analyticsservice`
- MODULE_PROVIDES → `feedbackservice`
- MODULE_PROVIDES → `analyticsexportservice`
- MODULE_PROVIDES → `scheduledreportsservice`
- MODULE_EXPORTS → `analyticsservice`
- MODULE_EXPORTS → `feedbackservice`
- MODULE_EXPORTS → `analyticsexportservice`
- MODULE_EXPORTS → `scheduledreportsservice`



# analyzeTemplate

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/template-analyzer.ts` (line 41)

Main entry point: Analyze a template and extract structured data

## Signature

```ts
function analyzeTemplate(templateContent: string, framework: 'angular' | 'vue' | 'react'): TemplateAnalysis
```

## Parameters

| Name | Type |
|---|---|
| `templateContent` | `string` |
| `framework` | `'angular' | 'vue' | 'react'` |

**Returns:** `TemplateAnalysis`



# APICallMapper

**Kind:** Class

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/api-call-mapper.ts` (line 80)

API Call Mapper

## Methods

| Method | Signature | Returns |
|---|---|---|
| `detectAPICalls` | `detectAPICalls(entities: Entity[])` | `DetectedAPICall[]` |
| `detectEndpoints` | `detectEndpoints(entities: Entity[])` | `DetectedEndpoint[]` |
| `mapCallsToEndpoints` | `mapCallsToEndpoints(calls: DetectedAPICall[], endpoints: DetectedEndpoint[])` | `APIMapping[]` |



# APIFlowDiagramOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/generators/diagrams/api-flow-diagram.generator.ts` (line 21)

Options for API flow diagram generation

## Properties

| Property | Type |
|---|---|
| `diagramType` | `'flowchart' | 'sequence'` |
| `showHttpMethods` | `boolean` |
| `showParameters` | `boolean` |
| `showMiddleware` | `boolean` |
| `direction` | `'LR' | 'TD' | 'RL' | 'BT'` |
| `maxDepth` | `number` |
| `includeTheme` | `boolean` |



# apiVersioningTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/api-versioning.template.ts` (line 3)



# ASTNode

**Kind:** Type

**Source:** `atloria-monorepo/packages/core/src/rendering/types.ts` (line 82)

Union type of all AST nodes

## Definition

```ts
TextNode | AudienceNode | VariantNode | BlockDefinitionNode | IncludeNode
```



# AuthContextService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/auth-context.service.ts` (line 15)

Service for authenticated browser-context lifecycle.

Extracted verbatim from BatchScreenshotService so that batch capture,
flow-replay (WS-A) and clip capture (WS-B) can all share ONE implementation
of login / session-loss detection / re-auth without forking it.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `createAuthenticatedContext` | `createAuthenticatedContext(browser: Browser, auth: BatchAuthConfigDto, config: Required, locale: string)` | `Promise` |
| `isSessionLost` | `isSessionLost(page: Page, auth: BatchAuthConfigDto, targetUrl: string)` | `Promise` |
| `reAuthenticate` | `reAuthenticate(context: BrowserContext, auth: BatchAuthConfigDto, config: Required)` | `Promise` |



# AuthenticationInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 570)

Authentication information

## Properties

| Property | Type |
|---|---|
| `type` | `'jwt' | 'oauth' | 'api-key' | 'basic' | 'bearer' | 'none'` |
| `scopes` | `string[]` |
| `optional` | `boolean` |



# AuthResponse

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `accessToken` | `string` |
| `refreshToken` | `string` |
| `user` | `User` |

## Relationships

- TYPE_OF → `User`

## Referenced By

- `login` (REFERENCES)
- `User Management API` (TYPE_OF)



# baseLang

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/app/p/[slugId]/components/uiStrings.ts` (line 520)

Normalize a language code ('ar', 'ar-SA', 'AR') to its base lowercase form.

## Signature

```ts
function baseLang(lang: string | null): string
```

## Parameters

| Name | Type |
|---|---|
| `lang` | `string | null` |

**Returns:** `string`



# BatchScreenshotItemDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 346)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `description` | `string` |
| `url` | `string` |
| `expectedState` | `string` |
| `viewport` | `ViewportDto` |
| `fullPage` | `boolean` |
| `waitFor` | `WaitForDto` |
| `waitForSelector` | `string` |
| `waitForTimeout` | `number` |
| `actions` | `ScreenshotActionDto[]` |
| `stateType` | `StateType` |
| `category` | `string` |
| `clip` | `ClipDto` |
| `metadata` | `Record` |
| `timing` | `TimingConfigDto` |
| `data` | `DataConfigDto` |
| `interaction` | `InteractionConfigDto` |
| `error` | `ErrorConfigDto` |
| `componentHints` | `ComponentHintsDto` |
| `flowStepId` | `string` |
| `priority` | `number` |
| `stateResolution` | `StateResolutionConfigDto` |
| `parentPlaceholderId` | `string` |
| `sequenceOrder` | `number` |



# benchReportCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/bench.command.ts` (line 198)

## Signature

```ts
async function benchReportCommand(reportPath: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `reportPath` | `string` |

**Returns:** `Promise`



# BenchRunOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/commands/bench.command.ts` (line 32)

## Properties

| Property | Type |
|---|---|
| `preset` | `'starter' | 'full'` |
| `tasks` | `string` |
| `maxTasks` | `string` |
| `parallel` | `string` |
| `maxTurns` | `string` |
| `timeout` | `string` |
| `output` | `string` |
| `model` | `string` |
| `repoDir` | `string` |
| `costLimit` | `string` |
| `attempts` | `string` |
| `provider` | `'azure' | 'anthropic'` |



# BoxPct

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 11)

Pure geometry + image helpers shared by the clip-capture (WS-B) flow.

These are intentionally framework-free pure functions (no Playwright, no Nest
DI) so they can be unit-tested in isolation and reused by any workstream.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `w` | `number` |
| `h` | `number` |



# buildAdaptivePrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/adaptive-prompt.ts` (line 52)

## Signature

```ts
function buildAdaptivePrompt(options: AdaptivePromptOptions): string
```

## Parameters

| Name | Type |
|---|---|
| `options` | `AdaptivePromptOptions` |

**Returns:** `string`



# buildApiExecutor

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/mcp/api-executor.ts` (line 44)

## Signature

```ts
function buildApiExecutor(cfg: ApiExecutorConfig): ApiExecFn
```

## Parameters

| Name | Type |
|---|---|
| `cfg` | `ApiExecutorConfig` |

**Returns:** `ApiExecFn`



# buildLayoutSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/layout.prompts.ts` (line 10)

## Signature

```ts
function buildLayoutSystemPrompt(): string
```

**Returns:** `string`



# CaptureAction

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/capture/dto/create-flow.dto.ts` (line 16)

## Definition

```ts
(typeof CAPTURE_ACTIONS)[number]
```



# categoryFullLabels

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/constants/templateCategories.ts` (line 31)

Full labels for detailed views (preview modal, etc.)

## Definition

```ts
Record
```



# CategoryMeta

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/types.ts` (line 115)

## Properties

| Property | Type |
|---|---|
| `required` | `boolean` |
| `maxPick` | `number` |



# Cell

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/table/TableEditor.tsx` (line 319)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `align` | `any` | ✓ | - |
| `...props` | `object` | - | - |

## Diagram

```mermaid
graph TD
    component_Cell_6cdf5d6c["Cell"]
    class component_Cell_6cdf5d6c rootComponent
```

## Relationships

- RENDERS → `CellElement`
- RENDERS → `CellEditor`

## Referenced By

- `TableEditor` (RENDERS)



# checkColorContrast

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 200)

Check color contrast

## Signature

```ts
async function checkColorContrast(page: Page, selector: string): Promise<{
  foreground: string;
  background: string;
  ratio: number;
  passes: boolean;
}>
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |
| `selector` | `string` |

**Returns:** `Promise<{
  foreground: string;
  background: string;
  ratio: number;
  passes: boolean;
}>`



# ChunkerService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-02-chunking/chunker.service.ts` (line 1)



# ConnectionType

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/generators/diagrams/deployment-diagram.generator.ts` (line 57)

Connection types between deployment nodes

## Definition

```ts
'http' | 'https' | 'grpc' | 'tcp' | 'websocket' | 'database' | 'message-queue'
```



# CoordinatorDependencies

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/agents/coordinator.agent.ts` (line 25)

## Properties

| Property | Type |
|---|---|
| `searchFn` | `DocSearchFn` |
| `generateFn` | `ContentGenerateFn` |
| `storeFn` | `StoreAssetFn` |
| `generateImageFn` | `ImageGenerateFn` |
| `findScreenshotsFn` | `FindScreenshotsFn` |



# copyTemplate

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/copy.ts` (line 18)

Copy the entire site-bootstrap template to outputDir,
excluding node_modules and other non-essential files.

## Signature

```ts
async function copyTemplate(templateDir: string, outputDir: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `templateDir` | `string` |
| `outputDir` | `string` |

**Returns:** `Promise`



# CountValue

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 71)

counts values are numbers per contract; we tolerate {count, breach} if the backend enriches later

## Definition

```ts
number | { count: number; breach?: number }
```



# createSimpleBatch

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/test/helpers/batch-builder.ts` (line 295)

Helper function to create a simple batch request

## Signature

```ts
function createSimpleBatch(urls: string[], options: {
    projectId?: string;
    organizationId?: string;
    config?: Partial;
  }): TakeBatchScreenshotsDto
```

## Parameters

| Name | Type |
|---|---|
| `urls` | `string[]` |
| `options` | `{
    projectId?: string;
    organizationId?: string;
    config?: Partial;
  }` |

**Returns:** `TakeBatchScreenshotsDto`



# DEFAULT_LOOP_ENGINE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/runtime-config.ts` (line 72)

Default loop engine. Set to 'live-swe' to use the Live-SWE-agent loop
(79% SWE-bench) by default, or 'openai-sdk' for the SDK-based loop.

Can be overridden per-call via RuntimeConfig.loop.engine or via
ATLORIA_LOOP_ENGINE environment variable.

## Definition

```ts
LoopConfig['engine']
```



# deletePost

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Delete a post

## Referenced By

- `Mutation` (CALLS_API)



# deleteUser

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

Delete user

## Endpoint

`DELETE /users/{id}`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `User Management API` (IMPLEMENTS_API)



# destroyAllParsers

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 146)

Cleanup all parser instances

## Signature

```ts
async function destroyAllParsers(): Promise
```

**Returns:** `Promise`



# DjangoTemplateParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/django-template.parser.ts` (line 71)

Django Template Parser

Extracts entities and relationships from Django template files.

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: { rootDir: string })` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# DocumentEditPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/documents.page.ts` (line 141)

Document edit page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto(documentId: string)` | `Promise` |
| `setTitle` | `setTitle(title: string)` | `Promise` |
| `getTitle` | `getTitle()` | `Promise` |
| `setContent` | `setContent(content: string)` | `Promise` |
| `getContent` | `getContent()` | `Promise` |
| `waitForSave` | `waitForSave()` | `Promise` |
| `clickDone` | `clickDone()` | `Promise` |
| `setType` | `setType(type: string)` | `Promise` |
| `setSlug` | `setSlug(slug: string)` | `Promise` |
| `toggleAudience` | `toggleAudience(audience: string)` | `Promise` |
| `openSettings` | `openSettings()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `titleInput` | `Locator` |
| `editor` | `Locator` |
| `saveStatus` | `Locator` |
| `doneButton` | `Locator` |
| `settingsButton` | `Locator` |
| `typeSelect` | `Locator` |
| `slugInput` | `Locator` |



# DocumentType

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 20)

Document types define the nature of the documentation

## Values

- `MANUAL`
- `GENERATED`
- `HYBRID`
- `WIKI`
- `API_GUIDE`
- `USER_MANUAL`
- `SOP`



# EntityType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/graph/interfaces/entity.interface.ts` (line 1)

## Values

- `FEATURE`
- `API`
- `COMPONENT`
- `USER_STORY`
- `BUG`
- `REQUIREMENT`
- `FUNCTION`
- `CLASS`
- `MODULE`



# extractExportedNamesFromDeclaration

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 386)

Extract exported names from export declarations

## Signature

```ts
function extractExportedNamesFromDeclaration(path: NodePath): Set
```

## Parameters

| Name | Type |
|---|---|
| `path` | `NodePath` |

**Returns:** `Set`



# FaqLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 18)

## Definition

```ts
'accordion' | 'two-column'
```



# FetchFeaturesFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 31)

Fetch user-facing features for a project (from doc-automation Stage 3 output or KG).

## Definition

```ts
(
  projectId: string,
  options?: { limit?: number; minConfidence?: number },
) => Promise
```



# FIXTURE_PAGES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/test/fixtures/pages/index.ts` (line 9)

Test fixture pages for screenshot testing



# FlowAction

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 42)

## Definition

```ts
(typeof FLOW_ACTIONS)[number]
```



# Follow

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Follow relationship

## Relationships

- TYPE_OF → `User`
- TYPE_OF → `User`
- TYPE_OF → `DateTime`

## Referenced By

- `followUser` (TYPE_OF)
- `newFollower` (TYPE_OF)
- `User` (TYPE_OF)
- `User` (TYPE_OF)



# getInfo

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/app.controller.ts` (line 19)

Service info endpoint

## Endpoint

`GET /info`

## Referenced By

- `AppController` (MODULE_DECLARES)



# getProjectJobs

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.controller.ts` (line 74)

Get all analysis jobs for a project

GET /api/analysis/project/:projectId

Returns: [ { ...job }, { ...job } ]

## Endpoint

`GET /analysis/project/:projectId`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |

## Referenced By

- `AnalysisController` (MODULE_DECLARES)



# MdxGenerator

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/generators/mdx.generator.ts` (line 82)

MDX Generator class
Generates MDX documentation from entities

## Methods

| Method | Signature | Returns |
|---|---|---|
| `generate` | `generate()` | `Promise` |
| `generateContent` | `generateContent()` | `Promise<{ pages: DocPage[]; navigation: NavItem[] }>` |



# MdxParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/config-docs-parser/src/parsers/mdx.parser.ts` (line 60)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# NestjsParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/backend-parser/src/parsers/nestjs.parser.ts` (line 67)

NestJS Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# OrchestratorModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.module.ts` (line 17)

## Relationships

- MODULE_IMPORTS → `queuemodule`
- MODULE_IMPORTS → `knowledgegraphmodule`
- MODULE_DECLARES → `orchestratorcontroller`
- MODULE_PROVIDES → `orchestratorservice`
- MODULE_EXPORTS → `orchestratorservice`



# OrchestratorService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.service.ts` (line 43)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `dispatchParseJob` | `dispatchParseJob(options: {
    projectId: string;
    files: string[];
    parserType: string;
    config?: Record;
    priority?: number;
  })` | `Promise` |
| `parseProject` | `parseProject(config: ParseProjectConfig)` | `Promise` |
| `getJobStatus` | `getJobStatus(jobId: string)` | `Promise` |
| `getResult` | `getResult(jobId: string)` | `Promise` |
| `cancelJob` | `cancelJob(jobId: string)` | `Promise` |
| `getQueueMetrics` | `getQueueMetrics()` | `unknown` |
| `getKGStatistics` | `getKGStatistics()` | `unknown` |
| `determineParser` | `determineParser(filePath: string)` | `string | null` |
| `getAvailableParsers` | `getAvailableParsers()` | `string[]` |
| `getParserPatterns` | `getParserPatterns(parser: string)` | `string[] | null` |

## Relationships

- DEPENDS_ON → `configservice`
- DEPENDS_ON → `queueservice`
- DEPENDS_ON → `knowledgegraphservice`
- DEPENDS_ON → `kgsyncservice`



# ParserCategory

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/parser.interface.ts` (line 117)

Parser category for grouping

## Values

- `FRONTEND`
- `BACKEND`
- `DATABASE`
- `API_SCHEMA`
- `CONFIG`
- `DOCUMENTATION`
- `INFRASTRUCTURE`



# ParseResultDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/dto/parse-job.dto.ts` (line 147)

DTO for parse result response

## Properties

| Property | Type |
|---|---|
| `jobId` | `string` |
| `status` | `string` |
| `entitiesCount` | `number` |
| `relationshipsCount` | `number` |
| `duration` | `number` |



# ParseStatus

**Kind:** Enum

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/parse-result.interface.ts` (line 18)

Status of a parse operation

## Values

- `SUCCESS`
- `PARTIAL`
- `FAILED`
- `SKIPPED`
- `IN_PROGRESS`
- `QUEUED`



# PdfController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/pdf/pdf.controller.ts` (line 16)

## Relationships

- MODULE_DECLARES → `renderPdf`
- DEPENDS_ON → `pdfservice`



# PlaywrightModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/playwright/playwright.module.ts` (line 4)

## Relationships

- MODULE_PROVIDES → `playwrightservice`
- MODULE_EXPORTS → `playwrightservice`



# PME_JOB_OPTIONS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/constants.ts` (line 3)



# PmeTurnHook

**Kind:** Class

**Source:** `atloria-monorepo/libs/pme-core/src/context/pme-turn-hook.ts` (line 127)

**Implements:** `TurnHook`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `beforeModelCall` | `beforeModelCall(args: TurnHookArgs)` | `Promise<{ instructions?: string; input?: unknown[] }>` |

## Properties

| Property | Type |
|---|---|
| `compactionLog` | `Array<{
    turn: number;
    beforeTokens: number;
    afterTokens: number;
    truncatedResults: number;
  }>` |



# PROJECT_FIXTURES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 28)

Project fixture paths



# StepCircle

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/how-it-works/how-it-works-timeline.tsx` (line 43)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `num` | `number` | ✓ | - |
| `variant` | `unknown | unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_StepCircle_5a4f7255["StepCircle"]
    class component_StepCircle_5a4f7255 rootComponent
```

## Referenced By

- `HowItWorksTimeline` (RENDERS)



# TestCollaborationSession

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 202)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `documentId` | `string` |
| `users` | `{
    id: string;
    name: string;
    color: string;
    cursor?: { x: number; y: number };
  }[]` |
| `createdAt` | `string` |



# TypeORMParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/database-parser/src/parsers/typeorm.parser.ts` (line 25)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# user

**Kind:** Graphql Query

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Get a user by ID

## Relationships

- TYPE_OF → `User`

## Referenced By

- `Query` (CALLS_API)



# UserProfile

**Kind:** Component

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/components/UserProfile.tsx` (line 33)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `userId` | `any` | ✓ | - |
| `showStats` | `any` | - | true |
| `onProfileLoad` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_UserProfile_131907c4["UserProfile"]
    class component_UserProfile_131907c4 rootComponent
```

## Relationships

- RENDERS → `LoadingSpinner`
- RENDERS → `Avatar`
- RENDERS → `StatCard`
- USES_HOOK → `useAuth`
- USES_HOOK → `useState`
- USES_HOOK → `useQuery`
- USES_HOOK → `useEffect`



# VARIANT_STYLES

**Kind:** Constant

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/variant.prompts.ts` (line 18)

## Definition

```ts
VariantStyle[]
```



# VideoEmbed

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Viewer/MarkdownRenderer.tsx` (line 471)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `embedUrl` | `string` | ✓ | - |
| `provider` | `string` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_VideoEmbed_432f8f5f["VideoEmbed"]
    class component_VideoEmbed_432f8f5f rootComponent
```

## Referenced By

- `CustomDiv` (RENDERS)
- `CustomLink` (RENDERS)
- `CustomImage` (RENDERS)



# VueParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/frontend-parser/src/parsers/vue.parser.ts` (line 76)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `version` | `string` |
| `supportedPatterns` | `string[]` |



# $isCodeBlockNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/codeblock/CodeBlockNode.tsx` (line 284)

## Signature

```ts
function $isCodeBlockNode(node: LexicalNode | null | undefined): node is CodeBlockNode
```

## Parameters

| Name | Type |
|---|---|
| `node` | `LexicalNode | null | undefined` |

**Returns:** `node is CodeBlockNode`



# ActionButton

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/common/ErrorState.tsx` (line 84)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `href` | `string` | ✓ | - |
| `label` | `string` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ActionButton_9f189["ActionButton"]
    class component_ActionButton_9f189 rootComponent
```

## Relationships

- USES_HOOK → `useRouter`

## Referenced By

- `ErrorContent` (RENDERS)
- `ErrorState` (RENDERS)



# addActivePlugin$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 917)

Add a plugin name to the list of active plugins.



# addColumn

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/boards/boards.controller.ts` (line 93)

## Endpoint

`POST /projects/:projectId/boards/:boardId/columns`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |
| `boardId` | query | `string` | ✓ |

## Referenced By

- `BoardsController` (MODULE_DECLARES)



# AgentExecutionResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/support-agent/agent-adapter.service.ts` (line 35)

## Properties

| Property | Type |
|---|---|
| `response` | `string` |
| `toolCalls` | `Array<{ tool: string; input: any; result: any }>` |



# AgentModelSettings

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/types.ts` (line 35)

## Properties

| Property | Type |
|---|---|
| `temperature` | `number` |
| `topP` | `number` |
| `maxTokens` | `number` |
| `frequencyPenalty` | `number` |
| `presencePenalty` | `number` |
| `toolChoice` | `'auto' | 'required' | 'none'` |
| `parallelToolCalls` | `boolean` |
| `reasoningEffort` | `'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh'` |



# AgentProtocolEventType

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/protocol/agent-protocol.ts` (line 82)

All canonical protocol event names

## Definition

```ts
keyof AgentProtocolEventMap
```



# AggregatedResult

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/batched-screenshot-processor.ts` (line 56)

## Properties

| Property | Type |
|---|---|
| `totalCaptured` | `number` |
| `totalFailed` | `number` |
| `totalReplaced` | `number` |
| `totalDocumentsUpdated` | `number` |
| `batchesCompleted` | `number` |
| `totalBatches` | `number` |
| `cancelled` | `boolean` |



# AiCostRateLimitGuard

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/technical-docs/guards/ai-cost-rate-limit.guard.ts` (line 14)

Rate limit for COST-BEARING AI endpoints (/ask, /mcp, /assist, /rag/index, /enrich).
Each request spends real money (embedding + gpt-5.5), and /ask + /mcp are reachable
ANONYMOUSLY on public projects — so unlike the per-user AI guard this one:
 - keys by userId when authenticated, else by client IP (anonymous still limited)
 - never fails open to unlimited: when Redis is unavailable it falls back to a
   per-instance in-memory window (weaker, but bounded) instead of waving traffic through.

`AiCostRateLimitGuard` is a NestJS guard that rate-limits **cost-bearing AI endpoints** (e.g. `/ask`, `/mcp`, `/assist`, `/rag/index`, `/enrich`) to control real spend from embeddings and LLM calls. It keys limits by `userId` when authenticated, otherwise by **client IP** so anonymous access on public projects is still bounded. If Redis is unavailable, it **does not fail open**—it falls back to a per-instance in-memory window to keep traffic limited.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `canActivate` | `canActivate(context: ExecutionContext)` | `Promise` |
| `onModuleDestroy` | `onModuleDestroy()` | `unknown` |

## Diagram

```mermaid
sequenceDiagram
  participant Client
  participant Controller
  participant Guard as AiCostRateLimitGuard
  participant Redis
  participant Memory as InMemoryWindow
  participant AI as AI Provider (Embeddings/LLM)

  Client->>Controller: HTTP request to cost-bearing endpoint
  Controller->>Guard: canActivate(context)

  alt Authenticated
    Guard->>Guard: key = userId
  else Anonymous (public project)
    Guard->>Guard: key = client IP
  end

  Guard->>Redis: increment/check window(key)
  alt Redis available + under limit
    Redis-->>Guard: allow
    Guard-->>Controller: proceed
    Controller->>AI: perform embedding/LLM call
    AI-->>Controller: response
    Controller-->>Client: 200 OK
  else Redis available + over limit
    Redis-->>Guard: deny
    Guard-->>Client: 429 Too Many Requests
  else Redis unavailable
    Guard->>Memory: increment/check window(key)
    alt under limit
      Memory-->>Guard: allow
      Guard-->>Controller: proceed
      Controller->>AI: perform embedding/LLM call
      AI-->>Controller: response
      Controller-->>Client: 200 OK
    else over limit
      Memory-->>Guard: deny
      Guard-->>Client: 429 Too Many Requests
    end
  end
```

## Usage

```ts
import { Controller, Post, UseGuards, Body } from '@nestjs/common';
import { AiCostRateLimitGuard } from '../technical-docs/guards/ai-cost-rate-limit.guard';

@Controller()
export class AskController {
  // Apply guard to a cost-bearing endpoint
  @Post('/ask')
  @UseGuards(AiCostRateLimitGuard)
  async ask(@Body() body: { prompt: string }) {
    // If this runs, the request has passed rate limiting.
    // Perform your embedding + LLM call here.
    return { answer: `You asked: ${body.prompt}` };
  }
}

// Alternatively, apply at the controller level:
// @UseGuards(AiCostRateLimitGuard)
// @Controller('/mcp')
// export class McpController { ... }
```

## AI Coding Instructions

- Preserve the **keying strategy**: use `userId` when authenticated; otherwise fall back to **client IP** so anonymous usage is still rate-limited.
- Never change behavior to **fail open** on Redis errors; keep the **in-memory fallback** bounded to prevent unlimited spend during outages.
- Ensure the guard is applied only to **cost-bearing** routes; don’t blanket-apply to non-AI endpoints unless you intend to throttle them too.
- When integrating behind proxies/CDNs, confirm the **true client IP extraction** is correct (e.g., trusted proxy headers) to avoid mis-keying or over-throttling.

## Relationships

- DEPENDS_ON → `configservice`



# AIUsageStats

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/types/ai.ts` (line 27)

## Properties

| Property | Type |
|---|---|
| `totalRequests` | `number` |
| `requestsToday` | `number` |
| `requestsThisWeek` | `number` |
| `requestsThisMonth` | `number` |
| `tokenUsage` | `{
    total: number;
    today: number;
    thisWeek: number;
    thisMonth: number;
  }` |
| `topProvider` | `AIProviderName` |
| `lastRequestAt` | `Date` |



# AnalyticsController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/analytics/analytics.controller.ts` (line 9)

## Relationships

- MODULE_DECLARES → `track`
- MODULE_DECLARES → `getOverview`
- MODULE_DECLARES → `getVersionTraffic`
- MODULE_DECLARES → `getTopDocuments`
- MODULE_DECLARES → `getTopSearchQueries`
- MODULE_DECLARES → `getDailyTraffic`
- MODULE_DECLARES → `getDeviceBreakdown`
- MODULE_DECLARES → `getSourceBreakdown`
- MODULE_DECLARES → `getGeoBreakdown`
- MODULE_DECLARES → `getZeroResultSearches`
- MODULE_DECLARES → `getGhostDocs`
- MODULE_DECLARES → `getTrendingDocs`
- MODULE_DECLARES → `getScrollHistogram`
- MODULE_DECLARES → `submitFeedback`
- MODULE_DECLARES → `getFeedbackSummary`
- DEPENDS_ON → `analyticsservice`
- DEPENDS_ON → `feedbackservice`



# analyzeVueTemplate

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/template-analyzer.ts` (line 609)

Analyze Vue template section

## Signature

```ts
function analyzeVueTemplate(templateContent: string): TemplateAnalysis
```

## Parameters

| Name | Type |
|---|---|
| `templateContent` | `string` |

**Returns:** `TemplateAnalysis`



# AnthropicModel

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/anthropic-adapter.ts` (line 107)

**Implements:** `Model`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getResponse` | `getResponse(request: ModelRequest)` | `Promise` |
| `getStreamedResponse` | `getStreamedResponse(request: ModelRequest)` | `AsyncIterable` |
| `getRetryAdvice` | `getRetryAdvice(args: ModelRetryAdviceRequest)` | `ModelRetryAdvice | undefined` |



# APIError

**Kind:** Class

**Source:** `atloria-monorepo/packages/api-client/src/types/errors.ts` (line 4)

Base API error class

**Extends:** `Error`



# APIFlowDiagramResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/generators/diagrams/api-flow-diagram.generator.ts` (line 68)

Result of API flow diagram generation

## Properties

| Property | Type |
|---|---|
| `mermaidCode` | `string` |
| `stats` | `{
    /** Number of frontend callers */
    callerCount: number;
    /** Number of services involved */
    serviceCount: number;
    /** Number of database models accessed */
    modelCount: number;
    /** Total nodes in diagram */
    totalNodes: number;
    /** Total edges/relationships */
    totalEdges: number;
  }` |
| `cssClasses` | `string[]` |



# AppModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/app/app.module.ts` (line 54)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `throttlingmodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `githubmodule`
- MODULE_IMPORTS → `gitlabmodule`
- MODULE_IMPORTS → `bitbucketmodule`
- MODULE_IMPORTS → `gatewaymodule`
- MODULE_IMPORTS → `collaborationmodule`
- MODULE_IMPORTS → `activitymodule`
- MODULE_IMPORTS → `notificationmodule`
- MODULE_IMPORTS → `assetsmodule`
- MODULE_IMPORTS → `audiencemodule`
- MODULE_IMPORTS → `commentmodule`
- MODULE_IMPORTS → `suggestionmodule`
- MODULE_IMPORTS → `documentmodule`
- MODULE_IMPORTS → `documentationmodule`
- MODULE_IMPORTS → `templatemodule`
- MODULE_IMPORTS → `projectmodule`
- MODULE_IMPORTS → `organizationmodule`
- MODULE_IMPORTS → `invitationmodule`
- MODULE_IMPORTS → `dashboardmodule`
- MODULE_IMPORTS → `aimodule`
- MODULE_IMPORTS → `billingmodule`
- MODULE_IMPORTS → `parsermodule`
- MODULE_IMPORTS → `parsingmodule`
- MODULE_IMPORTS → `graphmodule`
- MODULE_IMPORTS → `screenshotmodule`
- MODULE_IMPORTS → `technicaldocsmodule`
- MODULE_IMPORTS → `eventsmodule`
- MODULE_IMPORTS → `githubappmodule`
- MODULE_IMPORTS → `trialmodule`
- MODULE_IMPORTS → `opsmodule`
- MODULE_IMPORTS → `supportagentmodule`
- MODULE_IMPORTS → `pmemodule`
- MODULE_IMPORTS → `agentmodule`
- MODULE_IMPORTS → `docversionmodule`
- MODULE_IMPORTS → `webhookmodule`
- MODULE_IMPORTS → `analyticsmodule`
- MODULE_IMPORTS → `auditmodule`
- MODULE_IMPORTS → `brandingmodule`
- MODULE_IMPORTS → `issuesmodule`
- MODULE_IMPORTS → `boardsmodule`
- MODULE_IMPORTS → `manualsinsightsmodule`
- MODULE_IMPORTS → `capturemodule`
- MODULE_DECLARES → `appcontroller`
- MODULE_PROVIDES → `appservice`



# architectureDecisionRecordTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/architecture-decision-record.template.ts` (line 3)



# AudienceLogicTree

**Kind:** Type

**Source:** `atloria-monorepo/packages/core/src/rendering/types.ts` (line 98)

Audience logic expression tree
Used for evaluating complex audience conditions

## Definition

```ts
AudienceLeaf | AudienceNotNode | AudienceAndNode | AudienceOrNode
```



# AuthPayload

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Authentication payload

## Relationships

- TYPE_OF → `User`

## Referenced By

- `login` (TYPE_OF)
- `refreshToken` (TYPE_OF)



# AuthResponseDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/auth/dto/auth-response.dto.ts` (line 50)

## Properties

| Property | Type |
|---|---|
| `accessToken` | `string` |
| `refreshToken` | `string` |
| `tokenType` | `any` |
| `expiresIn` | `number` |
| `user` | `UserResponseDto` |



# AuthState

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/hooks/useAuth.ts` (line 10)

## Properties

| Property | Type |
|---|---|
| `isAuthenticated` | `boolean` |
| `user` | `{ id: string; email: string } | null` |
| `token` | `string | null` |



# BatchScreenshotJobResponseDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 673)

Initial response after creating a batch screenshot job

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `status` | `JobStatus` |
| `projectId` | `string` |
| `organizationId` | `string` |
| `name` | `string` |
| `totalUrls` | `number` |
| `capturedUrls` | `number` |
| `failedUrls` | `number` |
| `progress` | `number` |
| `createdAt` | `Date` |
| `updatedAt` | `Date` |
| `completedAt` | `Date` |
| `error` | `string` |



# BatchScreenshotService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/batch-screenshot.service.ts` (line 87)

Service for batch screenshot processing

Orchestrates:
- Parallel task execution with concurrency limits
- Authentication session management
- Retry logic with exponential backoff
- Progress tracking and caching
- Content deduplication

## Methods

| Method | Signature | Returns |
|---|---|---|
| `createJob` | `createJob(request: TakeBatchScreenshotsDto)` | `Promise` |
| `processBatch` | `processBatch(request: TakeBatchScreenshotsDto)` | `Promise` |
| `getJobStatus` | `getJobStatus(jobId: string, organizationId: string)` | `Promise` |

## Relationships

- DEPENDS_ON → `playwrightservice`
- DEPENDS_ON → `storageservice`
- DEPENDS_ON → `screenshotmetadataservice`
- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `redisservice`
- DEPENDS_ON → `retryhandlerservice`
- DEPENDS_ON → `actionexecutorservice`
- DEPENDS_ON → `stateresolverservice`
- DEPENDS_ON → `authcontextservice`
- DEPENDS_ON → `pagesettleservice`
- DEPENDS_ON → `configservice`
- DEPENDS_ON → `discoveryservice`



# benchRunCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/bench.command.ts` (line 49)

## Signature

```ts
async function benchRunCommand(options: BenchRunOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `options` | `BenchRunOptions` |

**Returns:** `Promise`



# BoxPct

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/annotation-emitter.service.ts` (line 6)

Target box as PERCENT (0-100) of the natural image, top-left origin.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `w` | `number` |
| `h` | `number` |



# breachOf

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 242)

## Signature

```ts
function breachOf(v: CountValue | undefined): number
```

## Parameters

| Name | Type |
|---|---|
| `v` | `CountValue | undefined` |

**Returns:** `number`



# buildAutonomousInstructions

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 94)

Build the autonomous investigation-verify loop instructions.

This generates a system prompt section — not a complete system prompt.
Domain layers combine it with their own base instructions + tool usage guide.

The prompt teaches the agent to:
1. Investigate before acting (read files, explore structure, check config)
2. Prefer existing tools/scripts over writing from scratch
3. Plan based on what it discovers (not on assumptions)
4. Verify after every significant action
5. Loop until quality gates pass

## Signature

```ts
function buildAutonomousInstructions(options: AutonomousInstructionsOptions): string
```

## Parameters

| Name | Type |
|---|---|
| `options` | `AutonomousInstructionsOptions` |

**Returns:** `string`



# buildCompletePrompt

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/support-agent/prompts/rag-context-formatter.ts` (line 159)

Builds the complete prompt for the AI

## Signature

```ts
function buildCompletePrompt(systemPrompt: string, ragContext: FormattedRagContext, conversationHistory: Array<{ role: string; content: string }>, userMessage: string, projectName: string): string
```

## Parameters

| Name | Type |
|---|---|
| `systemPrompt` | `string` |
| `ragContext` | `FormattedRagContext` |
| `conversationHistory` | `Array<{ role: string; content: string }>` |
| `userMessage` | `string` |
| `projectName` | `string` |

**Returns:** `string`



# buildLayoutTaskPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/layout.prompts.ts` (line 36)

## Signature

```ts
function buildLayoutTaskPrompt(sectionType: SectionType, contentJson: string): string
```

## Parameters

| Name | Type |
|---|---|
| `sectionType` | `SectionType` |
| `contentJson` | `string` |

**Returns:** `string`



# categoryLabels

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/constants/templateCategories.ts` (line 7)

Human-readable labels for template categories
Used across template components for consistent display

## Definition

```ts
Record
```



# CellEditor

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/table/TableEditor.tsx` (line 340)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `focus` | `any` | ✓ | - |
| `setActiveCell` | `any` | ✓ | - |
| `parentEditor` | `any` | ✓ | - |
| `lexicalTable` | `any` | ✓ | - |
| `contents` | `any` | ✓ | - |
| `colIndex` | `any` | ✓ | - |
| `rowIndex` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_CellEditor_79b7a9f9["CellEditor"]
    class component_CellEditor_79b7a9f9 rootComponent
```

## Relationships

- RENDERS → `LexicalNestedComposer`
- RENDERS → `RichTextPlugin`
- RENDERS → `ContentEditable`
- RENDERS → `Child`
- RENDERS → `HistoryPlugin`
- USES_HOOK → `useCellValues`
- USES_HOOK → `useState`
- USES_HOOK → `useCallback`
- USES_HOOK → `useEffect`

## Referenced By

- `Cell` (RENDERS)



# ChangeType

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/document/services/document-revision.service.ts` (line 17)

## Definition

```ts
'CREATE' | 'UPDATE' | 'RESTORE'
```



# checkFocusVisibility

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 154)

Check focus visibility

## Signature

```ts
async function checkFocusVisibility(page: Page): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |

**Returns:** `Promise`



# ComparisonFeatureTableProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/comparison/comparison-feature-table.tsx` (line 14)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `descriptionKey` | `string` |
| `columns` | `{ nameKey: string; highlighted?: boolean }[]` |
| `features` | `{ featureKey: string; values: (boolean | string)[] }[]` |



# CopywriterDependencies

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/agents/copywriter.agent.ts` (line 15)

## Properties

| Property | Type |
|---|---|
| `searchFn` | `DocSearchFn` |
| `generateFn` | `ContentGenerateFn` |



# createAssembleSiteTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/assemble-site.tool.ts` (line 13)

## Signature

```ts
function createAssembleSiteTool(templateDir: string, componentLibraryDir: string): ToolDefinition
```

## Parameters

| Name | Type |
|---|---|
| `templateDir` | `string` |
| `componentLibraryDir` | `string` |

**Returns:** `ToolDefinition`



# CreateUser

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `email` | `string` |
| `password` | `string` |
| `name` | `string` |

## Referenced By

- `createUser` (REFERENCES)
- `User Management API` (TYPE_OF)



# cropBuffer

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 111)

Extract a pixel region from an encoded image buffer using sharp.
Returns the cropped image as a new buffer (original untouched).

## Signature

```ts
async function cropBuffer(buffer: Buffer, clip: ClipRect): Promise
```

## Parameters

| Name | Type |
|---|---|
| `buffer` | `Buffer` |
| `clip` | `ClipRect` |

**Returns:** `Promise`



# CSFVersion

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/storybook/types.ts` (line 9)

TypeScript types for Component Story Format (CSF) parsing
Supports both CSF 2.0 (Ladle) and CSF 3.0 (Storybook 7+)

## Definition

```ts
'2.0' | '3.0' | 'unknown'
```



# DataProvider

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/providers/data-provider.interface.ts` (line 47)

Data provider interface
Abstracts fetching entities from file system or API



# deleteUser

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Delete a user (admin only)

## Referenced By

- `Mutation` (CALLS_API)



# DeskAction

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 96)

## Definition

```ts
| 'accept'
  | 'investigating'
  | 'waiting'
  | 'snooze'
  | 'wake'
  | 'done'
  | 'reopen'
  | 'decline'
```



# detectParser

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 200)

Determine parser for a file

## Endpoint

`GET /api/orchestrator/parsers/detect`

| Parameter | In | Type | Required |
|---|---|---|---|
| `filePath` | query | `string` | ✓ |

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# DocPlannerService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-09-planning/doc-planner.service.ts` (line 1)



# DocsMcpToolset

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/mcp-toolset.ts` (line 53)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `toolDefinitions` | `toolDefinitions()` | `McpToolDef[]` |
| `call` | `call(name: string, args: Record)` | `Promise` |
| `searchDocs` | `searchDocs(query: string, limit: undefined)` | `DocSearchHit[]` |
| `readPage` | `readPage(path: string)` | `{ title: string; path: string; markdown: string } | null` |
| `listPages` | `listPages(section: string)` | `Array<{ title: string; path: string; section?: string }>` |
| `getEntity` | `getEntity(nameOrId: string)` | `{ entity: Entity; relationships: Array<{ direction: 'out' | 'in'; type: string; entity: string }>; source?: string } | null` |
| `searchEntities` | `searchEntities(query: string, kind: string)` | `Array<{ id: string; name: string; type: string }>` |
| `listEndpoints` | `listEndpoints(tag: string)` | `Array<{ method: string; path: string; summary: string }>` |
| `askQuestion` | `askQuestion(question: string)` | `Promise<{ answer: string; citations: string[] }>` |
| `callOperation` | `callOperation(args: Record)` | `Promise` |



# DocumentsPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/documents.page.ts` (line 7)

Documents list page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `getDocumentCards` | `getDocumentCards()` | `Locator` |
| `getDocumentByTitle` | `getDocumentByTitle(title: string)` | `Locator` |
| `search` | `search(query: string)` | `Promise` |
| `clearSearch` | `clearSearch()` | `Promise` |
| `clickNewDocument` | `clickNewDocument()` | `Promise` |
| `openDocument` | `openDocument(title: string)` | `Promise` |
| `editDocument` | `editDocument(title: string)` | `Promise` |
| `deleteDocument` | `deleteDocument(title: string)` | `Promise` |
| `getDocumentCount` | `getDocumentCount()` | `Promise` |
| `isEmpty` | `isEmpty()` | `Promise` |
| `filterByType` | `filterByType(type: string)` | `Promise` |
| `sortBy` | `sortBy(option: string)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `newDocumentButton` | `Locator` |
| `searchInput` | `Locator` |
| `documentList` | `Locator` |
| `filterDropdown` | `Locator` |
| `sortDropdown` | `Locator` |
| `emptyState` | `Locator` |



# EntityType

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 74)

Entity types in the Knowledge Graph

## Values

- `SCREEN`
- `COMPONENT`
- `API`
- `FLOW`
- `DB_ENTITY`
- `ROUTE`



# extractHooksFromPath

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 273)

Extract hooks used within a function path

## Signature

```ts
function extractHooksFromPath(path: NodePath): HookInfo[]
```

## Parameters

| Name | Type |
|---|---|
| `path` | `NodePath` |

**Returns:** `HookInfo[]`



# FeaturesLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 13)

## Definition

```ts
'grid' | 'alternating' | 'bento' | 'compact'
```



# FetchScreenshotsFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 65)

Fetch product screenshots, optionally filtered.

## Definition

```ts
(
  projectId: string,
  options?: {
    featureArea?: string;
    pageType?: string;
    viewport?: string;
    limit?: number;
  },
) => Promise
```



# FLOW_ACTIONS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 41)

Recorded actions (mirror api `CAPTURE_ACTIONS` in create-flow.dto.ts).
These are mapped to Playwright actions by the FlowReplayService.



# Format

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 543)

## Definition

```ts
typeof FORMATS[number]
```



# generateLargePrismaSchema

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 292)

Generate large Prisma schema for testing

## Signature

```ts
function generateLargePrismaSchema(modelCount: number): string
```

## Parameters

| Name | Type |
|---|---|
| `modelCount` | `number` |

**Returns:** `string`



# getJobStatus

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 239)

Get batch job status and results

GET /api/screenshot/batch/:jobId/status?organizationId=uuid

Poll this endpoint to track progress and retrieve results.

## Endpoint

`GET /screenshot/batch/:jobId/status`

| Parameter | In | Type | Required |
|---|---|---|---|
| `jobId` | query | `string` | ✓ |
| `organizationId` | query | `string` | ✓ |

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# GPT4_STANDARD_PROFILE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-profiles.ts` (line 145)

GPT-4.x family (gpt-4o, gpt-4-turbo, gpt-4.1, etc.)
Standard OpenAI models — no reasoning effort, temperature supported.

## Definition

```ts
ModelCapabilityProfile
```



# ParseJobStatus

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/parsing/dto/parse-status.dto.ts` (line 3)

## Values

- `QUEUED`
- `CLONING`
- `PARSING`
- `SYNCING`
- `COMPLETED`
- `FAILED`



# ParseStatus

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/parse-result.interface.ts` (line 18)

Status of a parse operation

## Values

- `SUCCESS`
- `PARTIAL`
- `FAILED`
- `SKIPPED`
- `IN_PROGRESS`
- `QUEUED`



# PME_QUEUE_NAME

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/src/queue/constants.ts` (line 1)



# QueueModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/queue.module.ts` (line 19)

## Relationships

- MODULE_PROVIDES → `queueservice`
- MODULE_PROVIDES → `parseprocessor`
- MODULE_EXPORTS → `queueservice`



# QueueService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/queue.service.ts` (line 18)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `addParseJob` | `addParseJob(payload: Omit, priority: unknown)` | `Promise` |
| `addParseJobsBulk` | `addParseJobsBulk(payloads: Array>)` | `Promise` |
| `getJobStatus` | `getJobStatus(jobId: string)` | `Promise` |
| `getJobResult` | `getJobResult(jobId: string)` | `Promise` |
| `waitForJob` | `waitForJob(jobId: string, timeout: unknown)` | `Promise` |
| `cancelJob` | `cancelJob(jobId: string)` | `Promise` |
| `getMetrics` | `getMetrics()` | `Promise` |
| `getWaitingJobs` | `getWaitingJobs(start: unknown, end: unknown)` | `Promise[]>` |
| `getActiveJobs` | `getActiveJobs()` | `Promise[]>` |
| `getFailedJobs` | `getFailedJobs(start: unknown, end: unknown)` | `Promise[]>` |
| `retryJob` | `retryJob(jobId: string)` | `Promise` |
| `cleanCompleted` | `cleanCompleted(grace: unknown)` | `Promise` |
| `cleanFailed` | `cleanFailed(grace: unknown)` | `Promise` |
| `pause` | `pause()` | `Promise` |
| `resume` | `resume()` | `Promise` |
| `isPaused` | `isPaused()` | `Promise` |

## Relationships

- DEPENDS_ON → `queue`



# RelationshipType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/relationship.interface.ts` (line 15)

Relationship Interfaces

Defines all relationship types between entities.
Relationships describe how code entities connect and interact.

## Values

- `RENDERS`
- `USES_HOOK`
- `USES_CONTEXT`
- `PROVIDES_CONTEXT`
- `USES_STORE`
- `DISPATCHES_ACTION`
- `CALLS_API`
- `IMPLEMENTS_API`
- `DEPENDS_ON`
- `USES_SERVICE`
- `INJECTS`
- `QUERIES_MODEL`
- `HAS_ONE`
- `HAS_MANY`
- `BELONGS_TO`
- `MANY_TO_MANY`
- `REFERENCES_MODEL`
- `IMPORTS`
- `EXTENDS`
- `IMPLEMENTS`
- `TYPE_OF`
- `CALLS`
- `EXPORTS`
- `RE_EXPORTS`
- `MODULE_IMPORTS`
- `MODULE_PROVIDES`
- `MODULE_EXPORTS`
- `MODULE_DECLARES`
- `DOCUMENTS`
- `REFERENCES`
- `LINKS_TO`
- `DEPLOYED_TO`
- `CONNECTS_TO`
- `CONTAINER_DEPENDS_ON`
- `EXPOSES_PORT`
- `USES_ENV`
- `USES_CONFIG`
- `REQUIRES_FEATURE`
- `TESTS`
- `MOCKS`



# SAMPLE_PROJECTS_PATH

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 23)



# ScreenshotController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.controller.ts` (line 176)

## Relationships

- MODULE_DECLARES → `takeScreenshot`
- MODULE_DECLARES → `takeResponsiveScreenshots`
- MODULE_DECLARES → `takeAuthenticatedScreenshot`
- MODULE_DECLARES → `takeSmartAuthenticatedScreenshot`
- DEPENDS_ON → `screenshotservice`



# ScreenshotModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.module.ts` (line 20)

## Relationships

- MODULE_IMPORTS → `playwrightmodule`
- MODULE_IMPORTS → `storagemodule`
- MODULE_IMPORTS → `discoverymodule`
- MODULE_DECLARES → `screenshotcontroller`
- MODULE_DECLARES → `batchscreenshotcontroller`
- MODULE_PROVIDES → `screenshotservice`
- MODULE_PROVIDES → `screenshotmetadataservice`
- MODULE_PROVIDES → `retryhandlerservice`
- MODULE_PROVIDES → `actionexecutorservice`
- MODULE_PROVIDES → `stateresolverservice`
- MODULE_PROVIDES → `authcontextservice`
- MODULE_PROVIDES → `pagesettleservice`
- MODULE_PROVIDES → `annotationemitterservice`
- MODULE_PROVIDES → `batchscreenshotservice`
- MODULE_PROVIDES → `flowreplayservice`
- MODULE_EXPORTS → `screenshotservice`
- MODULE_EXPORTS → `screenshotmetadataservice`
- MODULE_EXPORTS → `batchscreenshotservice`
- MODULE_EXPORTS → `flowreplayservice`



# SiteGenerator

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/generators/site.generator.ts` (line 54)

Static Site Generator

## Methods

| Method | Signature | Returns |
|---|---|---|
| `generate` | `generate(metadata: ProjectMetadata, entities: Entity[], relationships: Relationship[])` | `Promise` |



# startAnalysis

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/code-analyzer/src/app/analysis/analysis.controller.ts` (line 30)

Start a new code analysis job

POST /api/analysis

Body:
{
  "projectId": "uuid",
  "repoUrl": "https://github.com/user/repo.git",
  "branch": "main",
  "folderPath": "packages/frontend",  // Optional: for mono-repos
  "framework": "react",               // Optional: auto-detect if not provided
  "patterns": ["src/**\/*.tsx"],       // Optional: custom file patterns
  "modules": ["auth", "dashboard"],   // Optional: specific modules to analyze
  "tokenBudget": 150000,              // Optional: token budget for analysis
  "organizationId": "uuid",
  "triggeredBy": "user-uuid"
}

Returns: { jobId: "uuid" }

## Endpoint

`POST /analysis`

## Referenced By

- `AnalysisController` (MODULE_DECLARES)



# TestCommentData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 93)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `documentId` | `string` |
| `content` | `string` |
| `authorId` | `string` |
| `authorName` | `string` |
| `resolved` | `boolean` |
| `parentCommentId` | `string` |
| `createdAt` | `string` |
| `updatedAt` | `string` |



# TimelineDot

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/social-proof/social-proof-timeline.tsx` (line 37)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `variant` | `unknown | unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_TimelineDot_18ef7c67["TimelineDot"]
    class component_TimelineDot_18ef7c67 rootComponent
```

## Referenced By

- `SocialProofTimeline` (RENDERS)



# users

**Kind:** Graphql Query

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Get all users with pagination

## Relationships

- TYPE_OF → `UserConnection`

## Referenced By

- `Query` (CALLS_API)



# YamlParser

**Kind:** Class

**Source:** `atloria-monorepo/apps/config-docs-parser/src/parsers/yaml.parser.ts` (line 81)

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# $isDirectiveNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/directives/DirectiveNode.tsx` (line 155)

## Signature

```ts
function $isDirectiveNode(node: LexicalNode | null | undefined): node is DirectiveNode
```

## Parameters

| Name | Type |
|---|---|
| `node` | `LexicalNode | null | undefined` |

**Returns:** `node is DirectiveNode`



# AccordionItem

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/accordion-item.tsx` (line 19)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `questionKey` | `string` | ✓ | - |
| `answerKey` | `string` | ✓ | - |
| `defaultOpen` | `boolean` | - | false |

## Diagram

```mermaid
graph TD
    component_AccordionItem_6bd6a70f["AccordionItem"]
    class component_AccordionItem_6bd6a70f rootComponent
```

## Relationships

- RENDERS → `ChevronDown`
- RENDERS → `AnimatePresence`
- RENDERS → `motion-div`
- USES_HOOK → `useTranslation`
- USES_HOOK → `useState`



# addBottomAreaChild$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 755)

Lets you add React components below the editor.



# addComment

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/issues/issues.controller.ts` (line 96)

## Endpoint

`POST /projects/:projectId/issues/:issueId/comments`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |
| `issueId` | query | `string` | ✓ |

## Referenced By

- `IssuesController` (MODULE_DECLARES)



# AgentInjectPayload

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 84)

## Properties

| Property | Type |
|---|---|
| `message` | `string` |



# AgentNote

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 222)

A session-scoped note/learning the agent records as it works.
Injected into every subsequent turn so the agent builds up context.

## Properties

| Property | Type |
|---|---|
| `turn` | `number` |
| `content` | `string` |



# AIAssistedConfig

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/screenshot-worker.types.ts` (line 158)

AI-assisted capture configuration

## Properties

| Property | Type |
|---|---|
| `verifyAfterActions` | `boolean` |
| `recoveryEnabled` | `boolean` |
| `enrichMetadata` | `boolean` |



# AIService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/ai/ai.service.ts` (line 13)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getProvider` | `getProvider(name: string)` | `AIProvider` |
| `listProviders` | `listProviders()` | `unknown` |
| `enhanceDocument` | `enhanceDocument(documentId: string, providerName: string)` | `Promise` |
| `generateOutline` | `generateOutline(topic: string, audience: string, providerName: string)` | `Promise` |
| `improveWriting` | `improveWriting(text: string, providerName: string)` | `Promise` |
| `summarizeDocument` | `summarizeDocument(documentId: string, providerName: string)` | `Promise` |
| `streamCompletion` | `streamCompletion(prompt: string, providerName: string)` | `AsyncIterableIterator` |
| `generateText` | `generateText(prompt: string, providerName: string)` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `configservice`
- DEPENDS_ON → `azureclaudeprovider`
- DEPENDS_ON → `azureopenaiprovider`
- DEPENDS_ON → `azureresponsesprovider`
- DEPENDS_ON → `azureresponsesprovider`



# AnalyticsExportController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/analytics/export/analytics-export.controller.ts` (line 34)

## Relationships

- MODULE_DECLARES → `exportNow`
- MODULE_DECLARES → `listReports`
- MODULE_DECLARES → `createReport`
- MODULE_DECLARES → `updateReport`
- MODULE_DECLARES → `deleteReport`
- MODULE_DECLARES → `runReport`
- MODULE_DECLARES → `listExportHistory`
- DEPENDS_ON → `analyticsexportservice`
- DEPENDS_ON → `scheduledreportsservice`



# AnthropicModelProvider

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/anthropic-adapter.ts` (line 630)

**Implements:** `ModelProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getProfile` | `getProfile()` | `ModelCapabilityProfile` |
| `getModel` | `getModel(modelName: string)` | `AnthropicModel` |



# ArgType

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/storybook/types.ts` (line 19)

Arg type definition

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `description` | `string` |
| `type` | `{
    name: string;
    required?: boolean;
  }` |
| `defaultValue` | `unknown` |
| `control` | `{
    type: string;
    [key: string]: unknown;
  }` |
| `table` | `{
    type?: { summary: string };
    defaultValue?: { summary: string };
    category?: string;
  }` |
| `options` | `unknown[]` |



# ASK_CREDIT_COST

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/billing/billing.constants.ts` (line 22)



# AssetsModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/assets/assets.module.ts` (line 9)

## Relationships

- MODULE_IMPORTS → `configmodule`
- MODULE_IMPORTS → `databasemodule`
- MODULE_DECLARES → `assetscontroller`
- MODULE_PROVIDES → `assetsservice`
- MODULE_PROVIDES → `azureblobservice`
- MODULE_EXPORTS → `assetsservice`
- MODULE_EXPORTS → `azureblobservice`



# AtloriaAPIClient

**Kind:** Class

**Source:** `atloria-monorepo/packages/api-client/src/AtloriaAPIClient.ts` (line 19)

Main Atloria API client
Provides a unified interface for all API operations

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getInterceptors` | `getInterceptors()` | `InterceptorManager` |
| `setToken` | `setToken(token: string)` | `void` |
| `getToken` | `getToken()` | `string` |
| `initWebSocket` | `initWebSocket(url: string, config: WebSocketConfig)` | `WebSocketClient` |
| `getWebSocket` | `getWebSocket()` | `WebSocketClient | null` |
| `disconnectWebSocket` | `disconnectWebSocket()` | `void` |
| `login` | `login(email: string, password: string)` | `Promise` |
| `logout` | `logout()` | `Promise` |
| `refreshToken` | `refreshToken()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `audiences` | `AudienceEndpoints` |
| `auth` | `AuthEndpoints` |
| `comments` | `CommentEndpoints` |
| `documents` | `DocumentEndpoints` |
| `projects` | `ProjectEndpoints` |
| `suggestions` | `SuggestionEndpoints` |
| `users` | `UserEndpoints` |



# AudienceBlockProps

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Editor/AudienceBlock.tsx` (line 10)

Props for the AudienceBlock component

## Properties

| Property | Type |
|---|---|
| `audience` | `Audience` |
| `audienceLogic` | `string` |
| `children` | `React.ReactNode` |
| `onEdit` | `() => void` |
| `onDelete` | `() => void` |
| `isNested` | `boolean` |



# Avatar

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Comments/CommentThread.tsx` (line 293)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `user` | `unknown` | ✓ | - |
| `size` | `unknown | unknown | unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_Avatar_6ab6d3d7["Avatar"]
    class component_Avatar_6ab6d3d7 rootComponent
```

## Referenced By

- `CommentThread` (RENDERS)
- `CommentReply` (RENDERS)



# AvatarShape

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/avatar/Avatar.ts` (line 6)

## Definition

```ts
'circle' | 'square'
```



# AzureClaudeProvider

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/ai/providers/azure-claude.provider.ts` (line 48)

Azure AI Foundry Claude Provider
Uses native Anthropic Messages API endpoint through Azure AI Foundry
Endpoint: /anthropic/v1/messages

Authentication priority:
1. API Key (ANTHROPIC_FOUNDRY_API_KEY) - simplest, no az login needed
2. Azure AD (DefaultAzureCredential/AzureCliCredential) - fallback

**Implements:** `AIProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getAzureAIConfig` | `getAzureAIConfig()` | `Promise<{ endpoint: string; accessToken?: string; apiKey?: string; modelName: string } | null>` |
| `isAvailable` | `isAvailable()` | `Promise` |
| `generateText` | `generateText(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateTextWithUsage` | `generateTextWithUsage(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateStream` | `generateStream(prompt: string, options: GenerateOptions)` | `AsyncIterableIterator` |
| `analyze` | `analyze(content: string, type: AnalysisType)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |



# batchEnrichScreenshots

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/screenshot-metadata-enricher.ts` (line 321)

Batch enrich multiple screenshots

## Signature

```ts
function batchEnrichScreenshots(screenshots: Array<{ url: string; route: string; title?: string }>, entities: Entity[]): EnhancedScreenshotMetadata[]
```

## Parameters

| Name | Type |
|---|---|
| `screenshots` | `Array<{ url: string; route: string; title?: string }>` |
| `entities` | `Entity[]` |

**Returns:** `EnhancedScreenshotMetadata[]`



# BatchScreenshotStatusDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 732)

Full batch status response for polling

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `status` | `JobStatus` |
| `progress` | `number` |
| `totalUrls` | `number` |
| `capturedUrls` | `number` |
| `failedUrls` | `number` |
| `currentItem` | `string` |
| `currentStage` | `string` |
| `stageProgress` | `number` |
| `screenshots` | `ScreenshotResultDto[]` |
| `failures` | `ScreenshotFailureDto[]` |
| `flowSteps` | `{ flowStepId: number; blobUrl: string; annotationsFragment: string }[]` |
| `error` | `string` |
| `timestamps` | `{
    createdAt: Date;
    updatedAt: Date;
    startedAt?: Date;
    completedAt?: Date;
  }` |
| `estimatedCompletion` | `Date` |
| `stats` | `{
    averageCaptureTimeMs: number;
    successRate: number;
    retryCount: number;
  }` |



# BenchmarkEvent

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/types.ts` (line 274)

Typed events emitted by BenchmarkRunner for monitoring.

## Definition

```ts
| { type: 'run_start';    totalTasks: number; suite: string; model: string }
  | { type: 'task_start';   taskId: string; difficulty?: string; index: number; total: number }
  | { type: 'tool_call';    taskId: string; toolName: string; inputPreview: string }
  | { type: 'tool_result';  taskId: string…
```



# buildBashEnv

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/agent-hardening.ts` (line 56)

Build bash environment with pager-disabling variables.

Pattern from SWE-agent: Disable all interactive pagers and progress bars
to prevent the agent's bash commands from hanging on user input prompts.

Merges with existing env, overriding pager-related vars.

## Signature

```ts
function buildBashEnv(existingEnv: Record): Record
```

## Parameters

| Name | Type |
|---|---|
| `existingEnv` | `Record` |

**Returns:** `Record`



# buildCollectionUrl

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/lib/url-utils.ts` (line 66)

Build a collection URL from components

## Signature

```ts
function buildCollectionUrl(slug: string, urlId: string): string
```

## Parameters

| Name | Type |
|---|---|
| `slug` | `string` |
| `urlId` | `string` |

**Returns:** `string`



# buildMockupAnimationsCss

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/tools/mockups.ts` (line 103)

## Signature

```ts
function buildMockupAnimationsCss(): string
```

**Returns:** `string`



# buildSearchIndex

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/search-index.ts` (line 178)

Pure transform: corpus pages + entity graph → a compact static search index.
Deterministic for identical inputs (stable order, stable ids).

## Signature

```ts
function buildSearchIndex(slugWithId: string, pages: RawIndexPage[], entities: GraphEntity[], relationships: GraphRelationship[], generatedAt: Date): StaticSearchIndex
```

## Parameters

| Name | Type |
|---|---|
| `slugWithId` | `string` |
| `pages` | `RawIndexPage[]` |
| `entities` | `GraphEntity[]` |
| `relationships` | `GraphRelationship[]` |
| `generatedAt` | `Date` |

**Returns:** `StaticSearchIndex`



# CapturedDOMState

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/action-executor.service.ts` (line 13)

DOM state captured from a page

## Properties

| Property | Type |
|---|---|
| `url` | `string` |
| `html` | `string` |
| `hasModal` | `boolean` |
| `hasError` | `boolean` |
| `errorMessages` | `string[]` |
| `visibleButtons` | `{ selector: string; text: string; isEnabled: boolean }[]` |
| `visibleInputs` | `{ selector: string; type: string; placeholder: string }[]` |
| `isLoading` | `boolean` |
| `pageTitle` | `string` |



# captureDiagnostics

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/utils/ai-auth-debugger.ts` (line 52)

Capture comprehensive diagnostics about current page state

## Signature

```ts
async function captureDiagnostics(page: any, phase: string, attemptLog: any[]): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `any` |
| `phase` | `string` |
| `attemptLog` | `any[]` |

**Returns:** `Promise`



# categoryLabelsWithAll

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/constants/templateCategories.ts` (line 23)

Extended labels including "All" option for filter components

## Definition

```ts
Record
```



# checkHeadingHierarchy

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 317)

Check heading hierarchy

## Signature

```ts
async function checkHeadingHierarchy(page: Page): Promise<{ valid: boolean; issues: string[] }>
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |

**Returns:** `Promise<{ valid: boolean; issues: string[] }>`



# Child

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/realm-plugin.tsx` (line 25)

## Diagram

```mermaid
graph TD
    component_Child_3b902d1a["Child"]
    class component_Child_3b902d1a rootComponent
```

## Relationships

- USES_HOOK → `useCellValue`

## Referenced By

- `Example` (RENDERS)



# CodeBlockInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 889)

Code block information

## Properties

| Property | Type |
|---|---|
| `language` | `string` |
| `line` | `number` |
| `lines` | `number` |



# ComparisonRowProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/comparison-row.tsx` (line 11)

## Properties

| Property | Type |
|---|---|
| `featureKey` | `string` |
| `values` | `(boolean | string)[]` |



# CopywriterInput

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/copywriter.prompts.ts` (line 10)

## Properties

| Property | Type |
|---|---|
| `sectionType` | `SectionType` |
| `docContext` | `string` |
| `config` | `GenerationConfig` |



# createQueryProductKnowledgeTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 105)

## Signature

```ts
function createQueryProductKnowledgeTool(deps: ProductKnowledgeDeps): ToolDefinition
```

## Parameters

| Name | Type |
|---|---|
| `deps` | `ProductKnowledgeDeps` |

**Returns:** `ToolDefinition`



# Crop

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 1)



# DataProviderConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/providers/data-provider.interface.ts` (line 33)

Data provider configuration

## Properties

| Property | Type |
|---|---|
| `mode` | `'static' | 'dynamic'` |
| `outputDir` | `string` |
| `apiUrl` | `string` |
| `apiKey` | `string` |
| `projectId` | `string` |



# DeploymentNodeType

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/generators/diagrams/deployment-diagram.generator.ts` (line 22)

Types of deployment nodes

## Definition

```ts
| 'container'
  | 'service'
  | 'database'
  | 'cache'
  | 'queue'
  | 'api-gateway'
  | 'load-balancer'
  | 'external-service'
```



# DeskBucket

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/issues/dto/desk.dto.ts` (line 25)

## Definition

```ts
(typeof DESK_BUCKETS)[number]
```



# DeskState

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 137)

## Definition

```ts
'needs_first' | 'needs_next' | 'investigating' | 'waiting' | 'paused' | 'done'
```



# dispatchJob

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 34)

Dispatch a parse job

## Endpoint

`POST /api/orchestrator/jobs`

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# DocVerifierService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-10-generation/doc-verifier.service.ts` (line 1)



# DotNetParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/dotnet.parser.ts` (line 34)

.NET Parser implementation using Roslyn bridge

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(_config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `parseProject` | `parseProject(rootDir: string)` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# extractImportsFromDeclaration

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 98)

Extract imports from an ImportDeclaration node

## Signature

```ts
function extractImportsFromDeclaration(path: NodePath): ImportInfo[]
```

## Parameters

| Name | Type |
|---|---|
| `path` | `NodePath` |

**Returns:** `ImportInfo[]`



# FetchStatsFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 55)

Fetch aggregate product stats from the knowledge graph.

## Definition

```ts
(
  projectId: string,
) => Promise
```



# FindScreenshotsFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/tools/find-screenshots.tool.ts` (line 15)

Function signature for querying screenshots.
Injected at creation time — wraps PrismaService.screenshot.findMany().

## Definition

```ts
(
  projectId: string,
  options?: {
    urlPattern?: string;
    featureArea?: string;
    pageType?: string;
    viewport?: string;
    limit?: number;
  }
) => Promise
```



# flowKey

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 134)

Deterministic storage key for a flow step screenshot.

Naming scheme (WS-A flow-replay):
  flowKey('abc', 0)          => 'flows/abc/step-0.png'      (initial state, full page)
  flowKey('abc', 2)          => 'flows/abc/step-2.png'      (state after step 2, full page)
  flowKey('abc', 2, 'crop')  => 'flows/abc/step-2-crop.png' (tight crop around the target)

The no-variant key is the canonical FULL-PAGE image the docs reference (it is
the one the annotation fragment's coordinates are computed against). 'crop' is
an auxiliary tight close-up. 'full' is retained for backward compat.

## Signature

```ts
function flowKey(flowId: string, stepOrder: number, variant: 'full' | 'crop'): string
```

## Parameters

| Name | Type |
|---|---|
| `flowId` | `string` |
| `stepOrder` | `number` |
| `variant` | `'full' | 'crop'` |

**Returns:** `string`



# followUser

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Follow a user

## Relationships

- TYPE_OF → `Follow`

## Referenced By

- `Mutation` (CALLS_API)



# FORMATS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 542)



# FrameAction

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 41)

## Definition

```ts
typeof FRAME_ACTIONS[number]
```



# generateLargeReactFile

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 248)

Generate large file content for performance testing

## Signature

```ts
function generateLargeReactFile(componentCount: number): string
```

## Parameters

| Name | Type |
|---|---|
| `componentCount` | `number` |

**Returns:** `string`



# getPageHtml

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 308)

Validate selectors exist on a page

POST /api/screenshot/validate-selectors

Loads the page and checks if all provided selectors exist.
Use this to verify login form selectors before batch processing.

## Endpoint

`POST /screenshot/page-html`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# GPT5_FLAGSHIP_PROFILE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-profiles.ts` (line 125)

GPT-5.4 (Azure Responses API) — the Atloria primary model.
Key quirks:
  - reasoning_effort defaults to 'none' → skips tool calls
  - temperature is unsupported when reasoning is active
  - tool_choice: 'required' needed on turn 1 to force at least one call

## Definition

```ts
ModelCapabilityProfile
```



# Like

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Like on a post

## Relationships

- TYPE_OF → `User`
- TYPE_OF → `Post`
- TYPE_OF → `DateTime`

## Referenced By

- `likePost` (TYPE_OF)
- `Post` (TYPE_OF)



# LoginPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/auth.page.ts` (line 7)

Login page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `login` | `login(email: string, password: string)` | `Promise` |
| `loginAndWait` | `loginAndWait(email: string, password: string)` | `Promise` |
| `hasError` | `hasError()` | `Promise` |
| `getErrorMessage` | `getErrorMessage()` | `Promise` |
| `toggleRememberMe` | `toggleRememberMe()` | `Promise` |
| `goToRegister` | `goToRegister()` | `Promise` |
| `goToForgotPassword` | `goToForgotPassword()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `emailInput` | `Locator` |
| `passwordInput` | `Locator` |
| `submitButton` | `Locator` |
| `errorMessage` | `Locator` |
| `forgotPasswordLink` | `Locator` |
| `registerLink` | `Locator` |
| `rememberMeCheckbox` | `Locator` |



# LoginRequest

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `email` | `string` |
| `password` | `string` |

## Referenced By

- `login` (REFERENCES)
- `User Management API` (TYPE_OF)



# NotificationType

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 86)

Notification types

## Values

- `MENTION`
- `COMMENT`
- `SUGGESTION`
- `DOCUMENT_SHARED`
- `REVIEW_REQUEST`
- `SYSTEM`



# RelationshipType

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/relationship.interface.ts` (line 14)

Relationship Interfaces

Defines all relationship types between entities.
Relationships describe how code entities connect and interact.

## Values

- `RENDERS`
- `USES_HOOK`
- `USES_CONTEXT`
- `PROVIDES_CONTEXT`
- `USES_STORE`
- `DISPATCHES_ACTION`
- `SELECTS_STATE`
- `REDUCES`
- `TRIGGERS_EFFECT`
- `UPDATES_STORE`
- `CALLS_API`
- `IMPLEMENTS_API`
- `DEPENDS_ON`
- `USES_SERVICE`
- `INJECTS`
- `QUERIES_MODEL`
- `HAS_ONE`
- `HAS_MANY`
- `BELONGS_TO`
- `MANY_TO_MANY`
- `REFERENCES_MODEL`
- `IMPORTS`
- `EXTENDS`
- `IMPLEMENTS`
- `TYPE_OF`
- `CALLS`
- `EXPORTS`
- `RE_EXPORTS`
- `MODULE_IMPORTS`
- `MODULE_PROVIDES`
- `MODULE_EXPORTS`
- `MODULE_DECLARES`
- `DOCUMENTS`
- `REFERENCES`
- `LINKS_TO`
- `DEPLOYED_TO`
- `CONNECTS_TO`
- `CONTAINER_DEPENDS_ON`
- `EXPOSES_PORT`
- `USES_ENV`
- `USES_CONFIG`
- `REQUIRES_FEATURE`
- `TESTS`
- `MOCKS`



# RelationType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/graph/interfaces/entity.interface.ts` (line 13)

## Values

- `IMPLEMENTS`
- `DEPENDS_ON`
- `RELATES_TO`
- `REFERENCES`
- `BLOCKS`
- `CONTAINS`
- `USES`



# REQUIRED_PROJECT_ROOTS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 110)

Major project roots the agent MUST identify



# SAMPLE_PROJECTS_PATH

**Kind:** Constant

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/setup.ts` (line 19)



# StdioTransport

**Kind:** Class

**Source:** `atloria-monorepo/apps/cli/src/stdio-transport.ts` (line 34)

**Implements:** `AgentTransport`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `handleEvent` | `handleEvent(event: AgentProtocolEvent)` | `void` |



# StorageModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/storage/storage.module.ts` (line 4)

## Relationships

- MODULE_PROVIDES → `storageservice`
- MODULE_EXPORTS → `storageservice`



# TestDocumentData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 52)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `title` | `string` |
| `slug` | `string` |
| `content` | `string` |
| `type` | `'MANUAL' | 'GENERATED' | 'HYBRID' | 'WIKI' | 'API_GUIDE'` |
| `audiences` | `('TECHNICAL' | 'USER' | 'API' | 'INTERNAL')[]` |
| `createdAt` | `string` |
| `updatedAt` | `string` |



# UsersModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.module.ts` (line 13)

## Relationships

- MODULE_IMPORTS → `prismamodule`
- MODULE_IMPORTS → `eventemittermodule`
- MODULE_DECLARES → `userscontroller`
- MODULE_PROVIDES → `usersservice`
- MODULE_EXPORTS → `usersservice`



# UsersService

**Kind:** Service

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.service.ts` (line 15)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `findAll` | `findAll(paginationQuery: PaginationQueryDto)` | `unknown` |
| `findOne` | `findOne(id: string)` | `unknown` |
| `findByEmail` | `findByEmail(email: string)` | `unknown` |
| `create` | `create(createUserDto: CreateUserDto)` | `unknown` |
| `update` | `update(id: string, updateUserDto: UpdateUserDto)` | `unknown` |
| `remove` | `remove(id: string)` | `unknown` |
| `getUserPosts` | `getUserPosts(userId: string)` | `unknown` |
| `getFollowers` | `getFollowers(userId: string)` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `eventemitter2`



# $isLexicalJsxNode

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/jsx/LexicalJsxNode.tsx` (line 151)

## Signature

```ts
function $isLexicalJsxNode(node: LexicalNode | null | undefined): node is LexicalJsxNode
```

## Parameters

| Name | Type |
|---|---|
| `node` | `LexicalNode | null | undefined` |

**Returns:** `node is LexicalJsxNode`



# addComposerChild$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 737)



# addMember

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/project/project.controller.ts` (line 184)

## Endpoint

`POST /projects/:id/members`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `ProjectController` (MODULE_DECLARES)



# AgentMessageEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 107)

## Properties

| Property | Type |
|---|---|
| `text` | `string` |
| `agentName` | `string` |
| `delta` | `boolean` |



# AgentProtocolEvent

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/protocol/agent-protocol.ts` (line 85)

A fully typed protocol event — the unit flowing through transports

## Properties

| Property | Type |
|---|---|
| `type` | `T` |
| `timestamp` | `number` |
| `data` | `AgentProtocolEventMap[T]` |



# AIGenerateOptions

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/providers/ai-provider.interface.ts` (line 23)

## Properties

| Property | Type |
|---|---|
| `maxTokens` | `number` |
| `temperature` | `number` |
| `systemPrompt` | `string` |
| `messages` | `AIMessage[]` |
| `stopSequences` | `string[]` |
| `responseFormat` | `'text' | 'json_object'` |
| `timeout` | `number` |
| `images` | `string[]` |



# AIUsageService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/ai/ai-usage.service.ts` (line 87)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `calculateCost` | `calculateCost(model: string, usage: TokenUsage)` | `UsageCost` |
| `trackUsage` | `trackUsage(params: TrackUsageParams)` | `Promise` |
| `deductCredits` | `deductCredits(organizationId: string, amount: number, transaction: {
      referenceType: string;
      referenceId: string;
      description: string;
      userId: string;
    })` | `Promise<{ balance: number }>` |
| `getOrganizationUsage` | `getOrganizationUsage(organizationId: string, startDate: Date, endDate: Date)` | `unknown` |
| `getOrganizationBalance` | `getOrganizationBalance(organizationId: string)` | `unknown` |
| `addCredits` | `addCredits(organizationId: string, amount: number, userId: string, description: string, reference: { type: string; id: string })` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`



# AppController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/app/app.controller.ts` (line 5)

## Relationships

- MODULE_DECLARES → `getData`
- MODULE_DECLARES → `getPublicStats`
- MODULE_DECLARES → `healthCheck`
- DEPENDS_ON → `appservice`



# ASSIST_CREDIT_COST

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/billing/billing.constants.ts` (line 23)



# AsyncStatePattern

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/state-management.interface.ts` (line 266)

Async state pattern (for React Query, SWR, async Redux)

## Properties

| Property | Type |
|---|---|
| `states` | `{
    idle: boolean;
    loading: boolean;
    success: boolean;
    error: boolean;
  }` |
| `dataField` | `string` |
| `errorField` | `string` |
| `loadingField` | `string` |
| `queryKey` | `string` |
| `mutationFn` | `string` |
| `endpoint` | `string` |
| `hasRetry` | `boolean` |
| `hasOptimisticUpdate` | `boolean` |



# AtloriaAPIExplorer

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/api-explorer/APIExplorer.ts` (line 63)

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `willUpdate` | `willUpdate(changed: Map)` | `void` |
| `connectedCallback` | `connectedCallback()` | `void` |
| `disconnectedCallback` | `disconnectedCallback()` | `void` |
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `spec` | `OpenAPISpec` |
| `endpoints` | `APIEndpoint[]` |
| `environments` | `Environment[]` |
| `mode` | `'explorer' | 'documentation'` |
| `defaultEndpoint` | `string` |
| `proxyUrl` | `string` |
| `presetBearerToken` | `string` |



# AudienceModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/audience/audience.module.ts` (line 9)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_DECLARES → `audiencecontroller`
- MODULE_PROVIDES → `audienceservice`
- MODULE_EXPORTS → `audienceservice`



# AudienceSelectorModalProps

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Editor/AudienceSelectorModal.tsx` (line 11)

Props for the AudienceSelectorModal component

## Properties

| Property | Type |
|---|---|
| `open` | `boolean` |
| `onClose` | `() => void` |
| `onApply` | `(logic: string) => void` |
| `audiences` | `Audience[]` |
| `initialSelection` | `string[]` |



# AutonomousTurnHook

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 612)

TurnHook that drives autonomous agent behavior.

It watches what the agent is doing (via tool calls in input items)
and injects nudges when the agent skips investigation or verification.

Usage:
```typescript
const hook = new AutonomousTurnHook({
  maxTurns: 40,
  qualityGateProvider: async () => [
    { id: 'tests_pass', description: 'All tests pass', passed: false },
  ],
});
```

**Implements:** `TurnHook`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `updateTokenUsage` | `updateTokenUsage(inputTokens: number)` | `void` |
| `getCircleDetector` | `getCircleDetector()` | `CircleDetector | null` |
| `beforeModelCall` | `beforeModelCall(args: TurnHookArgs)` | `Promise<{ instructions?: string; input?: AgentInputItem[] }>` |
| `getState` | `getState()` | `Readonly` |
| `getRecentFiles` | `getRecentFiles()` | `readonly string[]` |

## Properties

| Property | Type |
|---|---|
| `onPreCompact` | `(data: { turnNumber: number; tokenCount: number; recentFiles: string[] }) => void` |
| `onPostCompact` | `(data: { turnNumber: number; summaryInjected: boolean }) => void` |



# AvatarSize

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/avatar/Avatar.ts` (line 5)

## Definition

```ts
'xs' | 'sm' | 'md' | 'lg' | 'xl'
```



# AzureOpenAIProvider

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/ai/providers/azure-openai.provider.ts` (line 47)

**Implements:** `AIProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `isAvailable` | `isAvailable()` | `Promise` |
| `generateText` | `generateText(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateTextWithUsage` | `generateTextWithUsage(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateStream` | `generateStream(prompt: string, options: GenerateOptions)` | `AsyncIterableIterator` |
| `analyze` | `analyze(content: string, type: AnalysisType)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |



# buildBenchmarkPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/adaptive-prompt.ts` (line 229)

Build a benchmark-optimized system prompt.

Unlike `buildAdaptivePrompt` (which has a 5-phase workflow including
"run baseline tests first"), this prompt is action-first:

  1. Read the issue → identify the source file and function
  2. Call edit_file immediately with the fix
  3. Run the targeted test to verify

The "establish baseline first" step is intentionally omitted because:
  - Baselines consume 50-80% of the turn budget on analysis
  - The model then produces text describing its plan instead of calling edit_file
  - Azure Responses API expires previous_response_id on completion → no second turn
  - SWE-bench eval applies the diff, not the agent's text response

Used by BenchmarkRunner instead of buildAdaptivePrompt.

## Signature

```ts
function buildBenchmarkPrompt(options: {
  workspace: string;
  toolGuide: string;
  repoMap?: string;
  domainRules?: string[];
  /** Specific test names that must pass (from SWE-bench FAIL_TO_PASS metadata) */
  failToPassTests?: string[];
}): string
```

## Parameters

| Name | Type |
|---|---|
| `options` | `{
  workspace: string;
  toolGuide: string;
  repoMap?: string;
  domainRules?: string[];
  /** Specific test names that must pass (from SWE-bench FAIL_TO_PASS metadata) */
  failToPassTests?: string[];
}` |

**Returns:** `string`



# buildComposerInsert

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/copilotUtils.ts` (line 69)

## Signature

```ts
function buildComposerInsert(answer: string, sources: CopilotAskSource[]): string
```

## Parameters

| Name | Type |
|---|---|
| `answer` | `string` |
| `sources` | `CopilotAskSource[]` |

**Returns:** `string`



# buildEntityPageIndexes

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/entity-page.ts` (line 228)

Build the shared indexes renderEntityPage can consume, ONCE, for callers that render many
pages from the same graph. Turns per-page O(entities+relationships) work into O(deg) lookups.

## Signature

```ts
function buildEntityPageIndexes(entities: Entity[], relationships: Relationship[]): {
  nameResolver: (id: string) => string;
  outgoingBySource: Map;
  incomingByTarget: Map;
}
```

## Parameters

| Name | Type |
|---|---|
| `entities` | `Entity[]` |
| `relationships` | `Relationship[]` |

**Returns:** `{
  nameResolver: (id: string) => string;
  outgoingBySource: Map;
  incomingByTarget: Map;
}`



# buildQaSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/qa.prompts.ts` (line 7)

QA Agent Prompts

Prompts for visual QA evaluation of generated marketing pages.

## Signature

```ts
function buildQaSystemPrompt(): string
```

**Returns:** `string`



# buildSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/support-agent/prompts/system-prompt-layers.ts` (line 239)

Assembles all prompt layers into a complete system prompt

## Signature

```ts
function buildSystemPrompt(context: PromptContext): string
```

## Parameters

| Name | Type |
|---|---|
| `context` | `PromptContext` |

**Returns:** `string`



# categoryVariants

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/constants/templateCategories.ts` (line 47)

Badge variants for each category

## Definition

```ts
Record<
  TemplateCategory,
  'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error' | 'default'
>
```



# checkKeyboardNavigation

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/accessibility.ts` (line 137)

Check keyboard navigation

## Signature

```ts
async function checkKeyboardNavigation(page: Page, expectedFocusOrder: string[]): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |
| `expectedFocusOrder` | `string[]` |

**Returns:** `Promise`



# ClipDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 190)

Clip region DTO for partial page screenshots

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `width` | `number` |
| `height` | `number` |



# ClipRect

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/crop.service.ts` (line 19)

A Playwright clip rect, in PIXELS.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `width` | `number` |
| `height` | `number` |



# Code

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/p/[slugId]/technical/entity/[entityId]/page.tsx` (line 37)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `children` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_Code_3887f2e4["Code"]
    class component_Code_3887f2e4 rootComponent
```

## Referenced By

- `MethodsTable` (RENDERS)
- `FieldsTable` (RENDERS)



# CodeBlockEditorContextProvider

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/codeblock/CodeBlockNode.tsx` (line 191)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `parentEditor` | `any` | ✓ | - |
| `lexicalNode` | `any` | ✓ | - |
| `children` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_CodeBlockEditorContextProvider_799537f6["CodeBlockEditorContextProvider"]
    class component_CodeBlockEditorContextProvider_799537f6 rootComponent
```

## Relationships

- RENDERS → `CodeBlockEditorContext-Provider`
- USES_HOOK → `useMemo`

## Referenced By

- `CodeBlockEditorContainer` (RENDERS)



# ComparisonFeatureTable

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/comparison/comparison-feature-table.tsx` (line 21)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `columns` | `unknown[]` | ✓ | - |
| `features` | `unknown[]` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ComparisonFeatureTable_3ab2c8e0["ComparisonFeatureTable"]
    class component_ComparisonFeatureTable_3ab2c8e0 rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `ComparisonRow`
- USES_HOOK → `useTranslation`



# ComponentEntity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 296)

Component entity (React, Vue, Angular)

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.COMPONENT` |
| `componentType` | `'functional' | 'class'` |
| `props` | `PropDefinition[]` |
| `hooks` | `HookUsage[]` |
| `events` | `EventDefinition[]` |
| `slots` | `SlotDefinition[]` |
| `childComponents` | `string[]` |
| `stateManagement` | `StateManagementInfo` |
| `exports` | `ExportInfo` |



# configCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/config.command.ts` (line 99)

Config command handler

## Signature

```ts
async function configCommand(options: ConfigOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `options` | `ConfigOptions` |

**Returns:** `Promise`



# CreatePostInput

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Input for creating a post

## Referenced By

- `createPost` (TYPE_OF)



# createReadManifestTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/read-manifest.tool.ts` (line 11)

## Signature

```ts
function createReadManifestTool(componentLibraryDir: string): ToolDefinition
```

## Parameters

| Name | Type |
|---|---|
| `componentLibraryDir` | `string` |

**Returns:** `ToolDefinition`



# CtaCardProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/cta/cta-card.tsx` (line 14)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `descriptionKey` | `string` |
| `primaryCtaKey` | `string` |
| `primaryCtaUrl` | `string` |
| `secondaryCtaKey` | `string` |
| `secondaryCtaUrl` | `string` |
| `icon` | `LucideIcon` |



# DeskTransition

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/issues/dto/desk.dto.ts` (line 37)

## Definition

```ts
(typeof DESK_TRANSITIONS)[number]
```



# DiscoveryService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/discovery.service.ts` (line 48)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `scan` | `scan(dto: DiscoveryScanRequestDto)` | `Promise` |
| `scanWithPage` | `scanWithPage(page: Page, baseUrl: string, dto: DiscoveryScanRequestDto, startTime: unknown)` | `Promise` |

## Relationships

- DEPENDS_ON → `playwrightservice`
- DEPENDS_ON → `pageprofilerservice`



# DocPage

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/generators/mdx.generator.ts` (line 40)

Documentation page content for API sync

## Properties

| Property | Type |
|---|---|
| `slug` | `string` |
| `title` | `string` |
| `description` | `string` |
| `type` | `string` |
| `content` | `string` |
| `order` | `number` |
| `parentSlug` | `string` |
| `entityId` | `string` |



# DocSearchResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 137)

Document search result from Azure AI Search.

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `title` | `string` |
| `content` | `string` |
| `moduleId` | `string` |
| `score` | `number` |



# DomainStatus

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/lib/api-client.ts` (line 42)

## Definition

```ts
| 'pending_dns'
  | 'verifying'
  | 'issuing_certificate'
  | 'live'
  | 'verification_failed'
  | 'certificate_failed'
  | 'offline'
  | 'removed'
```



# EntityMapper

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/services/entity-mapper.service.ts` (line 1)



# EnvParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/config-docs/env.parser.ts` (line 64)

Environment Variable Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(_config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# extractJSDocDescription

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 493)

Extract JSDoc description from leading comments

## Signature

```ts
function extractJSDocDescription(path: NodePath): string | undefined
```

## Parameters

| Name | Type |
|---|---|
| `path` | `NodePath` |

**Returns:** `string | undefined`



# FailureCategory

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/types.ts` (line 47)

Classified reason for task failure.

## Definition

```ts
| 'timeout'           // Task exceeded time limit
  | 'no_changes'        // Agent didn't modify any files
  | 'test_failure'      // Changes made but tests still fail
  | 'setup_error'       // Workspace setup failed (clone, patch, install)
  | 'agent_error'       // Agent runtime error
  | 'wrong_…
```



# FetchWorkflowsFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 37)

Fetch user workflows (state machines, journeys) discovered from code.

## Definition

```ts
(
  projectId: string,
  options?: { featureId?: string; limit?: number },
) => Promise
```



# findAll

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.controller.ts` (line 34)

## Endpoint

`GET /users`

| Parameter | In | Type | Required |
|---|---|---|---|
| `paginationQuery` | query | `PaginationQueryDto` | ✓ |

## Referenced By

- `UsersController` (MODULE_DECLARES)



# flowStepsKey

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/flow-replay.service.ts` (line 34)

Redis key holding the ordered per-step results for a flow-replay job.

## Signature

```ts
function flowStepsKey(jobId: string)
```

## Parameters

| Name | Type |
|---|---|
| `jobId` | `string` |



# FRAME_ACTIONS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 40)



# getAllParserInstances

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 139)

Get all parser instances

## Signature

```ts
function getAllParserInstances(): Map
```

**Returns:** `Map`



# GPT54_FAMILY_ROUTING_TABLE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-router.ts` (line 80)

Production routing table for atlas-docs-resource (East US 2).
Use this when all three GPT-5.4 family models are deployed.

Cost profile vs using gpt-5.4 for everything:
  - 60-70% of calls (explore/analyze/tool_dispatch) → nano/mini → ~15-6x cheaper
  - plan/implement (quality-critical) → gpt-5.4 full

## Definition

```ts
ModelRoutingTable
```



# HeroLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 12)

PME Core Types

Domain types for the Product Marketing Engine.
These are PME-specific — not generic agent types.

## Definition

```ts
'centered' | 'split-left' | 'split-right' | 'minimal'
```



# JobStatus

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 668)

## Definition

```ts
'pending' | 'running' | 'completed' | 'failed'
```



# likePost

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Like a post

## Relationships

- TYPE_OF → `Like`

## Referenced By

- `Mutation` (CALLS_API)



# LlmComplete

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/grounded-ask.ts` (line 13)

## Definition

```ts
(prompt: string) => Promise
```



# NewDocumentPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/documents.page.ts` (line 254)

New document page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `createBlankDocument` | `createBlankDocument(title: string)` | `Promise` |
| `createFromTemplate` | `createFromTemplate(templateName: string)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `titleInput` | `Locator` |
| `createButton` | `Locator` |
| `templateGallery` | `Locator` |



# renderPdf

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/pdf/pdf.controller.ts` (line 30)

Render composed HTML to a PDF binary.

POST /api/screenshot/pdf
Body: { "html": "…", "options": { "format": "A4" } }
Returns: application/pdf bytes.

The HTML may use CSS `page-break-after`/`page-break-before` to control
per-page breaks (the API's doc export puts one doc page per printed page).

## Endpoint

`POST /screenshot/pdf`

## Referenced By

- `PdfController` (MODULE_DECLARES)



# RepositoryProvider

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/parsing/dto/parse-project.dto.ts` (line 5)

## Values

- `GITHUB`
- `AZURE_DEVOPS`
- `GITLAB`



# SuggestionStatus

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 65)

Suggestion status tracks the review state of document suggestions

## Values

- `PENDING`
- `ACCEPTED`
- `REJECTED`



# TARGETING_TASKS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/pme-agent/test/discovery/ground-truth.ts` (line 164)

## Definition

```ts
TargetingTask[]
```



# TestTemplateData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 153)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `name` | `string` |
| `description` | `string` |
| `category` | `TemplateCategory` |
| `content` | `string` |
| `thumbnail` | `string` |
| `createdAt` | `string` |
| `updatedAt` | `string` |



# UpdateUser

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `email` | `string` |

## Referenced By

- `updateUser` (REFERENCES)
- `User Management API` (TYPE_OF)



# UserJourneyNodeType

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/user-journey.interface.ts` (line 18)

User Journey Interfaces

Defines data structures for representing user journeys and flows
that will be converted into Mermaid flowchart diagrams.

User journeys differ from state machines:
- State machines focus on system states and transitions
- User journeys focus on user actions, screens, and navigation paths

## Values

- `START`
- `END`
- `SCREEN`
- `ACTION`
- `DECISION`
- `MODAL`
- `PROCESS`
- `NAVIGATION`
- `SUBFLOW`



# addEditorWrapper$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 764)

Lets you add React components as wrappers around the editor.



# addReply

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/comment/comment.controller.ts` (line 315)

Add a reply to an existing comment

## Endpoint

`POST /documents/:documentId/comments/:id/replies`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `CommentController` (MODULE_DECLARES)



# admonitionLabelsMap

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/toolbar/components/ChangeAdmonitionType.tsx` (line 9)

## Signature

```ts
function admonitionLabelsMap(t: Translation): Record<(typeof ADMONITION_TYPES)[number], string>
```

## Parameters

| Name | Type |
|---|---|
| `t` | `Translation` |

**Returns:** `Record<(typeof ADMONITION_TYPES)[number], string>`



# AgentProtocolEventMap

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/protocol/agent-protocol.ts` (line 36)

## Properties

| Property | Type |
|---|---|
| `'agent:thinking'` | `{ agentName: string }` |
| `'agent:tool_start'` | `{ toolName: string; input: string }` |
| `'agent:tool_end'` | `{ toolName: string; outputPreview: string; durationMs: number }` |
| `'agent:message'` | `{ text: string; agentName: string; delta: boolean }` |
| `'agent:turn_done'` | `{ turnNumber: number; usage: TokenUsage }` |
| `'agent:error'` | `{ message: string; recoverable: boolean }` |
| `'agent:status_update'` | `{ code: string; message: string }` |
| `'agent:input_queued'` | `{ message: string; position: number }` |
| `'agent:verbose'` | `{ category: string; message: string; data?: Record; timestamp: number }` |
| `'agent:ended'` | `{ totalUsage: TokenUsage; turnCount: number }` |
| `'agent:todo'` | `{ items: ReadonlyArray; stats: TodoStats }` |
| `'agent:plan_ready'` | `{ plan: string }` |
| `'agent:plan_approved'` | `Record` |
| `'agent:model_switched'` | `{ from: string; to: string; reason: string }` |
| `'agent:session_start'` | `{ model: string; workspace?: string }` |
| `'agent:session_end'` | `{ totalUsage: TokenUsage; turnCount: number; reason: 'completed' | 'error' | 'cancelled' }` |
| `'agent:pre_compact'` | `{ turnNumber: number; tokenCount: number; recentFiles: string[] }` |
| `'agent:post_compact'` | `{ turnNumber: number; summaryInjected: boolean }` |
| `'agent:subagent_start'` | `{ agentName: string; task: string }` |
| `'agent:subagent_end'` | `{ agentName: string; output: string; durationMs: number }` |
| `'agent:user_prompt_submit'` | `{ message: string }` |



# AgentSendPayload

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 80)

## Properties

| Property | Type |
|---|---|
| `message` | `string` |



# AIMessage

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/providers/ai-provider.interface.ts` (line 10)

## Properties

| Property | Type |
|---|---|
| `role` | `'system' | 'user' | 'assistant'` |
| `content` | `string` |



# AnalyticsExportService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/analytics/export/analytics-export.service.ts` (line 46)

Generates analytics exports in PDF and CSV format.

PDF: built with pdfkit, branded cover page + KPIs grid + top tables.
     Returns a Buffer so the controller can stream it as a download or
     attach it to an email without writing to disk.

CSV: streams rows directly from Postgres via a Readable wrapper so we
     can export 100k+ row datasets without loading them into memory.

`AnalyticsExportService` generates analytics exports as branded PDF reports and high-volume CSV files for download or email delivery. It builds PDFs in-memory using `pdfkit` (cover page, KPI grid, and top tables) and returns a `Buffer` so callers can stream without touching disk. For CSV, it streams rows directly from Postgres through a `Readable` wrapper to handle 100k+ rows without loading results into memory.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `generatePDF` | `generatePDF(opts: {
    projectId: string;
    period: number;
    sections?: ExportSection[];
  })` | `Promise<{ buffer: Buffer; filename: string }>` |
| `generateCSV` | `generateCSV(opts: {
    projectId: string;
    period: number;
    table: 'pageviews' | 'searches';
  })` | `Promise<{ stream: Readable; filename: string }>` |

## Diagram

```mermaid
sequenceDiagram
  autonumber
  participant Client
  participant Controller as AnalyticsExportController
  participant Service as AnalyticsExportService
  participant DB as Postgres
  participant PDF as pdfkit
  participant Stream as Readable Stream

  Client->>Controller: Request export (format=pdf|csv, filters)
  Controller->>Service: generateExport(params)

  alt PDF export
    Service->>PDF: Build branded cover + KPI grid + top tables
    PDF-->>Service: Buffer (in-memory)
    Service-->>Controller: Buffer
    Controller-->>Client: Stream Buffer as download / email attachment
  else CSV export
    Service->>DB: Execute query with cursor/streaming
    DB-->>Service: Row stream
    Service->>Stream: Wrap rows into Readable (CSV lines)
    Stream-->>Controller: Stream
    Controller-->>Client: Stream CSV download (no buffering)
  end
```

## Usage

```ts
import { Controller, Get, Query, Res } from '@nestjs/common';
import type { Response } from 'express';
import { AnalyticsExportService } from './analytics-export.service';

@Controller('/analytics/exports')
export class AnalyticsExportController {
  constructor(private readonly exports: AnalyticsExportService) {}

  @Get()
  async export(
    @Query('format') format: 'pdf' | 'csv',
    @Query('from') from: string,
    @Query('to') to: string,
    @Res() res: Response,
  ) {
    const params = { from, to }; // add any filters/grouping required by your service

    if (format === 'pdf') {
      const pdfBuffer = await this.exports.generatePdf(params);

      res.setHeader('Content-Type', 'application/pdf');
      res.setHeader('Content-Disposition', `attachment; filename="analytics-${from}-to-${to}.pdf"`);
      res.send(pdfBuffer);
      return;
    }

    const csvStream = await this.exports.generateCsvStream(params);

    res.setHeader('Content-Type', 'text/csv; charset=utf-8');
    res.setHeader('Content-Disposition', `attachment; filename="analytics-${from}-to-${to}.csv"`);

    // Pipe directly to response to avoid buffering large datasets
    csvStream.pipe(res);
  }
}
```

## AI Coding Instructions

- Keep PDF generation fully in-memory (`Buffer` output); do not write temporary files—controllers should stream the buffer to HTTP or attach it to email.
- For CSV, preserve true streaming from Postgres through a `Readable`/pipe chain; avoid `.map()`/array accumulation or `await`-ing full result sets.
- Ensure headers and backpressure are handled correctly when piping streams; always set `Content-Type`/`Content-Disposition` before piping to the response.
- When adding new fields/tables to exports, update both the PDF layout (cover/KPI grid/top tables) and CSV column order/escaping consistently; test with large datasets (100k+ rows) for memory safety.
- Integration points: controller for HTTP streaming, email sender for PDF attachments, and DB query layer for cursor/streaming access—changes in query shape can impact both formats.

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `analyticsservice`



# AssetsController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/assets/assets.controller.ts` (line 21)

## Relationships

- MODULE_DECLARES → `uploadImage`
- MODULE_DECLARES → `listAssets`
- MODULE_DECLARES → `getAsset`
- MODULE_DECLARES → `deleteAsset`
- DEPENDS_ON → `assetsservice`



# AtloriaAvatar

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/avatar/Avatar.ts` (line 17)

An avatar component that displays images or initials

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `src` | `any` |
| `alt` | `any` |
| `name` | `any` |
| `initials` | `any` |
| `size` | `AvatarSize` |
| `shape` | `AvatarShape` |
| `status` | `'online' | 'offline' | 'busy' | 'away'` |
| `ring` | `any` |
| `clickable` | `any` |
| `group` | `any` |



# AuditModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/audit/audit.module.ts` (line 7)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_DECLARES → `auditcontroller`
- MODULE_PROVIDES → `auditservice`
- MODULE_EXPORTS → `auditservice`



# AuthConfigDiscovery

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/utils/permission-extractor.ts` (line 40)

Authentication configuration discovered in source code

## Properties

| Property | Type |
|---|---|
| `loginRoute` | `string` |
| `roles` | `string[]` |
| `roleSource` | `RoleSourceType` |
| `templatePermissions` | `string[]` |
| `guardNames` | `string[]` |



# AUTH_LOGIN_THROTTLE

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/common/throttling.module.ts` (line 19)



# AwarenessState

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/hooks/useCollaboration.ts` (line 48)

Awareness state for a user

## Properties

| Property | Type |
|---|---|
| `userId` | `string` |
| `userName` | `string` |
| `color` | `string` |
| `cursor` | `CursorPosition` |
| `selection` | `SelectionRange` |



# AzureModelProvider

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-adapter.ts` (line 663)

Azure Model Provider — factory that returns AzureResponsesModel instances.
Passed to the SDK Runner as the modelProvider.

Supports model fallback: if a fallbackModel is configured, the provider
wraps the primary model with automatic failover. When the primary model
fails with a non-transient error (e.g., model unavailable, quota exceeded),
it transparently switches to the fallback model for the rest of the run.

Inspired by Claude Code's FallbackTriggeredError → switch models pattern.

**Implements:** `ModelProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getProfile` | `getProfile()` | `ModelCapabilityProfile` |
| `getModel` | `getModel(modelName: string)` | `AzureResponsesModel` |



# AzureResponsesProvider

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/ai/providers/azure-responses.provider.ts` (line 34)

Azure Responses API Provider

Implements the NestJS AIProvider interface using the Azure OpenAI Responses API.
This is a fundamentally different API format from Chat Completions:
- Request: `input` (not `messages`), `instructions` (not system role), `max_output_tokens`
- Response: `output_text`, `usage.input_tokens`/`output_tokens`
- Streaming: typed `event:` + `data:` pairs with `response.output_text.delta` events

**Implements:** `AIProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `isAvailable` | `isAvailable()` | `Promise` |
| `generateText` | `generateText(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateTextWithUsage` | `generateTextWithUsage(prompt: string, options: GenerateOptions)` | `Promise` |
| `generateStream` | `generateStream(prompt: string, options: GenerateOptions)` | `AsyncIterableIterator` |
| `analyze` | `analyze(content: string, type: AnalysisType)` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `string` |



# BackendFramework

**Kind:** Type

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/framework.types.ts` (line 30)

Detected backend framework

## Definition

```ts
| 'dotnet'
  | 'express'
  | 'nestjs'
  | 'fastify'
  | 'koa'
  | 'hono'
  | 'fastapi'
  | 'django'
  | 'flask'
  | 'spring'
  | 'rails'
  | 'laravel'
  | 'unknown'
```



# buildCodeReviewPlan

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/workflows/code-review.ts` (line 59)

Build a code review orchestration plan.

Launches 3 parallel reviewers with different focuses and applies
confidence-based filtering to produce a deduplicated, prioritized
issue list.

## Signature

```ts
function buildCodeReviewPlan(options: {
  diffContext?: string;
  guidelines?: string;
  confidenceThreshold?: number;
}): OrchestrationPlan
```

## Parameters

| Name | Type |
|---|---|
| `options` | `{
  diffContext?: string;
  guidelines?: string;
  confidenceThreshold?: number;
}` |

**Returns:** `OrchestrationPlan`



# buildDocumentUrl

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/lib/url-utils.ts` (line 52)

Build a document URL from components

## Signature

```ts
function buildDocumentUrl(slug: string, urlId: string, audience: string): string
```

## Parameters

| Name | Type |
|---|---|
| `slug` | `string` |
| `urlId` | `string` |
| `audience` | `string` |

**Returns:** `string`



# buildGroundedPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/grounded-ask.ts` (line 18)

Build the grounded prompt: each source leads with its citable [path] id.

## Signature

```ts
function buildGroundedPrompt(question: string, context: DocSearchHit[]): string
```

## Parameters

| Name | Type |
|---|---|
| `question` | `string` |
| `context` | `DocSearchHit[]` |

**Returns:** `string`



# buildQaTaskPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/qa.prompts.ts` (line 73)

## Signature

```ts
function buildQaTaskPrompt(pageUrl: string, viewport: string): string
```

## Parameters

| Name | Type |
|---|---|
| `pageUrl` | `string` |
| `viewport` | `string` |

**Returns:** `string`



# certSecretName

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/project/k8s-ingress.service.ts` (line 21)

## Signature

```ts
function certSecretName(domain: string): string
```

## Parameters

| Name | Type |
|---|---|
| `domain` | `string` |

**Returns:** `string`



# checkMemoryLeaks

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/performance.ts` (line 253)

Check for memory leaks by monitoring heap size

## Signature

```ts
async function checkMemoryLeaks(page: Page, action: () => Promise, iterations): Promise<{
  hasLeak: boolean;
  heapGrowth: number;
  initialHeap: number;
  finalHeap: number;
}>
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |
| `action` | `() => Promise` |
| `iterations` | `any` |

**Returns:** `Promise<{
  hasLeak: boolean;
  heapGrowth: number;
  initialHeap: number;
  finalHeap: number;
}>`



# ColorsToolbar

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/colors.tsx` (line 27)

## Diagram

```mermaid
graph TD
    component_ColorsToolbar_3f580f2a["ColorsToolbar"]
    class component_ColorsToolbar_3f580f2a rootComponent
```

## Relationships

- USES_HOOK → `useCellValues`
- USES_HOOK → `useMemo`

## Referenced By

- `SpanWithColor` (RENDERS)



# ComparisonRow

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/comparison-row.tsx` (line 16)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `featureKey` | `string` | ✓ | - |
| `values` | `unknown[]` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ComparisonRow_2fc9e457["ComparisonRow"]
    class component_ComparisonRow_2fc9e457 rootComponent
```

## Relationships

- RENDERS → `Check`
- RENDERS → `X`
- USES_HOOK → `useTranslation`



# ComponentHintsDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 293)

Component library hints

## Properties

| Property | Type |
|---|---|
| `componentLibrary` | `'devextreme' | 'mui' | 'antd' | 'primeng'` |
| `componentHints` | `string` |



# config

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/middleware.ts` (line 104)



# ControllerEntity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 790)

Controller entity

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.CONTROLLER` |
| `basePath` | `string` |
| `guards` | `string[]` |
| `interceptors` | `string[]` |
| `endpoints` | `string[]` |
| `dependencies` | `DependencyInfo[]` |



# CopyButton

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Domains/DomainTab.tsx` (line 124)

Small copy-to-clipboard button used in every DNS table cell.

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `value` | `string` | ✓ | - |
| `className` | `string` | - | "" |

## Diagram

```mermaid
graph TD
    component_CopyButton_308f90ac["CopyButton"]
    class component_CopyButton_308f90ac rootComponent
```

## Relationships

- RENDERS → `CheckIcon`
- RENDERS → `ClipboardDocumentIcon`
- USES_HOOK → `useState`

## Referenced By

- `SubdomainCard` (RENDERS)
- `CustomDomainCard` (RENDERS)



# createDataProvider

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/providers/index.ts` (line 19)

Create a data provider based on mode

## Signature

```ts
function createDataProvider(config: DataProviderConfig): DataProvider
```

## Parameters

| Name | Type |
|---|---|
| `config` | `DataProviderConfig` |

**Returns:** `DataProvider`



# createSiteGenAgent

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/agents/site-gen.agent.ts` (line 74)

Create the site generation agent config.

Usage:
```typescript
const agent = createSiteGenAgent(config, deps);
const result = await runtime.run(agent, {
  data: { projectId, userId, outputDir },
  input: 'Generate a marketing site for this project.',
});
```

## Signature

```ts
function createSiteGenAgent(config: SiteGenConfig, deps: SiteGenDependencies): AgentConfig
```

## Parameters

| Name | Type |
|---|---|
| `config` | `SiteGenConfig` |
| `deps` | `SiteGenDependencies` |

**Returns:** `AgentConfig`



# CreateUserInput

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Input for creating a user

## Referenced By

- `createUser` (TYPE_OF)



# DeviceClass

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/analytics/utils/tracking-utils.ts` (line 53)

## Definition

```ts
'mobile' | 'tablet' | 'desktop' | 'unknown'
```



# EmptyStateType

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/components/common/EmptyState.tsx` (line 14)

## Definition

```ts
| 'no-projects'
  | 'no-categories'
  | 'no-documents'
  | 'no-search-results'
  | 'no-templates'
  | 'no-versions'
```



# ExistingScreenshot

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot-metadata.service.ts` (line 26)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `assetId` | `string` |
| `url` | `string` |
| `version` | `number` |
| `contentHash` | `string` |
| `stateType` | `string` |
| `flowStepId` | `string` |



# ExpressParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/express.parser.ts` (line 41)

Express Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# extractPropsFromParameter

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 147)

Extract props from a function component's first parameter

## Signature

```ts
function extractPropsFromParameter(param: t.Node | null | undefined): PropInfo[]
```

## Parameters

| Name | Type |
|---|---|
| `param` | `t.Node | null | undefined` |

**Returns:** `PropInfo[]`



# FeatureExtractorService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-03-features/extractor.service.ts` (line 1)



# FeatureIconProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/feature-icon.tsx` (line 11)

## Properties

| Property | Type |
|---|---|
| `icon` | `LucideIcon` |
| `size` | `number` |
| `className` | `string` |



# findOne

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.controller.ts` (line 41)

## Endpoint

`GET /users/:id`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `UsersController` (MODULE_DECLARES)



# FlowReplayService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/flow-replay.service.ts` (line 51)

FlowReplayService (WS-A) — the sequential single-context walk.

Replays a recorded flow in ONE browser context / ONE page, shooting a
screenshot after each action (plus one for the initial state). The first shot
is uploaded immediately ("first shot fast") so the reader sees something while
the rest of the walk runs. Every step is best-effort: a failed step is logged
and the walk continues, mirroring the batch service's resilience.

All heavy lifting reuses the Phase-0 foundation (AuthContextService,
PageSettleService, ActionExecutorService, AnnotationEmitterService, crop
helpers, StorageService, ScreenshotMetadataService) — nothing is forked.

`FlowReplayService` replays a recorded user flow sequentially in a single browser context and single page, capturing a screenshot for the initial state and after each action. It prioritizes uploading the first screenshot immediately (“first shot fast”) so consumers see early feedback while the remaining steps continue. Each step is executed best-effort: failures are logged and the replay continues, reusing the shared Phase-0 services (auth, settle, action execution, annotations, cropping, storage, metadata).

## Methods

| Method | Signature | Returns |
|---|---|---|
| `createFlowJob` | `createFlowJob(dto: FlowReplayRequestDto)` | `Promise` |
| `replayFlow` | `replayFlow(jobId: string, dto: FlowReplayRequestDto)` | `Promise` |
| `getFlowSteps` | `getFlowSteps(jobId: string)` | `Promise` |
| `reshootStep` | `reshootStep(dto: FlowReshootRequestDto)` | `Promise` |
| `replayForLocales` | `replayForLocales(dto: FlowLocalesRequestDto)` | `Promise` |

## Diagram

```mermaid
sequenceDiagram
  autonumber
  participant Caller
  participant FlowReplayService as FlowReplayService
  participant Auth as AuthContextService
  participant PageSettle as PageSettleService
  participant Exec as ActionExecutorService
  participant Annot as AnnotationEmitterService
  participant Shot as ScreenshotMetadataService
  participant Storage as StorageService

  Caller->>FlowReplayService: replay(flowRecording, options)
  FlowReplayService->>Auth: init single browser context + page
  FlowReplayService->>PageSettle: settle initial state
  FlowReplayService->>Annot: emit annotations (initial)
  FlowReplayService->>Shot: capture + build metadata (initial)
  FlowReplayService->>Storage: upload(initial) (first shot fast)
  FlowReplayService-->>Caller: emit/return initial result (early)

  loop each recorded action
    FlowReplayService->>Exec: execute(action)
    alt action fails
      FlowReplayService->>FlowReplayService: log error, continue
    end
    FlowReplayService->>PageSettle: settle after action
    FlowReplayService->>Annot: emit annotations (step)
    FlowReplayService->>Shot: capture + build metadata (step)
    FlowReplayService->>Storage: upload(step)
  end

  FlowReplayService->>Auth: dispose/cleanup context
  FlowReplayService-->>Caller: final replay result
```

## Usage

```ts
import { Injectable } from '@nestjs/common';
import { FlowReplayService } from './screenshot/services/flow-replay.service';

@Injectable()
export class FlowReplayRunner {
  constructor(private readonly flowReplay: FlowReplayService) {}

  async runRecordedFlow(flowRecording: any) {
    // Typical call shape: pass the recorded flow + any replay options.
    // (Exact DTOs/options depend on your app; this illustrates usage.)
    const result = await this.flowReplay.replay(flowRecording, {
      // e.g. storagePrefix, viewport, crop, annotations, etc.
      firstShotFast: true,
    });

    // result usually includes per-step screenshot refs/metadata
    // and any logged step errors (best-effort execution).
    return result;
  }
}
```

## AI Coding Instructions

- Keep replays strictly single-context / single-page; do not introduce parallel pages here—use the batch/parallel service for that.
- Preserve the “first shot fast” behavior: upload/emit the initial screenshot as early as possible before executing the rest of the steps.
- Treat each action as best-effort: catch and log step failures, then continue; avoid failing the entire replay unless setup/teardown is broken.
- Reuse Phase-0 integration points (AuthContextService, PageSettleService, ActionExecutorService, AnnotationEmitterService, crop helpers, StorageService, ScreenshotMetadataService) instead of duplicating logic.
- Always run settle + annotation emission before capturing screenshots to avoid flakey, mid-transition images and inconsistent overlays.

## Relationships

- DEPENDS_ON → `playwrightservice`
- DEPENDS_ON → `storageservice`
- DEPENDS_ON → `screenshotmetadataservice`
- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `redisservice`
- DEPENDS_ON → `actionexecutorservice`
- DEPENDS_ON → `authcontextservice`
- DEPENDS_ON → `pagesettleservice`
- DEPENDS_ON → `annotationemitterservice`
- DEPENDS_ON → `configservice`



# GeneratedImageResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 177)

Generated image result from GPT-image-1.5.

## Properties

| Property | Type |
|---|---|
| `url` | `string` |
| `cdnUrl` | `string` |
| `width` | `number` |
| `height` | `number` |
| `format` | `string` |
| `sizeBytes` | `number` |



# getFixtureUrl

**Kind:** Function

**Source:** `atloria-monorepo/apps/screenshot-worker/test/fixtures/pages/index.ts` (line 20)

Get file:// URL for a fixture page

## Signature

```ts
function getFixtureUrl(page: keyof typeof FIXTURE_PAGES): string
```

## Parameters

| Name | Type |
|---|---|
| `page` | `keyof typeof FIXTURE_PAGES` |

**Returns:** `string`



# getParserInstance

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 132)

Get a parser instance by name

## Signature

```ts
function getParserInstance(name: string): IParser | undefined
```

## Parameters

| Name | Type |
|---|---|
| `name` | `string` |

**Returns:** `IParser | undefined`



# HookableEvent

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/session/hook-registry.ts` (line 36)

Events that can have external command hooks

## Definition

```ts
| 'session_start'
  | 'session_end'
  | 'pre_tool_use'
  | 'post_tool_use'
  | 'pre_compact'
  | 'post_compact'
  | 'subagent_start'
  | 'subagent_end'
  | 'user_prompt_submit'
```



# HowItWorksLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 14)

## Definition

```ts
'horizontal' | 'vertical-timeline' | 'cards'
```



# IMAGE_EXTENSIONS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/tools/read-file.tool.ts` (line 14)

Supported image file extensions for base64 encoding



# LoadState

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 111)

## Definition

```ts
typeof LOAD_STATES[number]
```



# LOAD_STATES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 110)



# login

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Login user

## Relationships

- TYPE_OF → `AuthPayload`

## Referenced By

- `Mutation` (CALLS_API)



# MdxGeneratorOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/generators/mdx.generator.ts` (line 71)

MDX generator options

## Properties

| Property | Type |
|---|---|
| `outputDir` | `string` |
| `includeSourceCode` | `boolean` |
| `includeRelationships` | `boolean` |
| `customTemplates` | `Record` |



# ModalCloseMethod

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/utils/modal-extractor.ts` (line 22)

How a modal should be closed

## Definition

```ts
'button-text' | 'data-dismiss' | 'escape' | 'backdrop' | 'auto'
```



# ProductKnowledgeMode

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/types.ts` (line 145)

## Definition

```ts
| 'features'
  | 'workflows'
  | 'categories'
  | 'search'
  | 'stats'
  | 'audiences'
  | 'screenshots'
```



# RegisterPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/auth.page.ts` (line 89)

Register page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `register` | `register(name: string, email: string, password: string, confirmPassword: string)` | `Promise` |
| `registerAndWait` | `registerAndWait(name: string, email: string, password: string)` | `Promise` |
| `hasError` | `hasError()` | `Promise` |
| `getErrorMessage` | `getErrorMessage()` | `Promise` |
| `goToLogin` | `goToLogin()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `nameInput` | `Locator` |
| `emailInput` | `Locator` |
| `passwordInput` | `Locator` |
| `confirmPasswordInput` | `Locator` |
| `termsCheckbox` | `Locator` |
| `submitButton` | `Locator` |
| `errorMessage` | `Locator` |
| `loginLink` | `Locator` |



# reshootFlowLocales

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 174)

Locale-fanned reshoot (F2 SUPERIOR, synchronous)

POST /api/screenshot/flow/locales

Replays the WHOLE recipe once per locale, emitting a localized screenshot set
per locale under a locale-namespaced blob key. Returns one entry per locale.

## Endpoint

`POST /screenshot/flow/locales`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# SymbolType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/parser/interfaces/code-parser.interface.ts` (line 33)

## Values

- `FUNCTION`
- `CLASS`
- `INTERFACE`
- `TYPE`
- `VARIABLE`
- `CONSTANT`
- `METHOD`
- `PROPERTY`



# TemplateCategory

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 98)

Template categories for organizing document templates

## Values

- `API_DOCUMENTATION`
- `USER_GUIDES`
- `TECHNICAL_SPECS`
- `MEETING_NOTES`
- `REQUIREMENTS`
- `ARCHITECTURE`
- `RELEASE_NOTES`
- `TROUBLESHOOTING`
- `ONBOARDING`
- `GENERAL`



# TestUser

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/fixtures/base.fixture.ts` (line 7)

Test user credentials

## Properties

| Property | Type |
|---|---|
| `email` | `string` |
| `password` | `string` |
| `name` | `string` |



# UserWithProfile

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Relationships

- EXTENDS → `User`

## Referenced By

- `getUserById` (REFERENCES)
- `User Management API` (TYPE_OF)



# VersionComparison

**Kind:** Enum

**Source:** `atloria-monorepo/libs/parser-core/src/generators/versioning/version-config.ts` (line 55)

Version comparison result

## Values

- `Less`
- `Equal`
- `Greater`
- `Invalid`



# addExportVisitor$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 366)

Adds an export visitor to be used when exporting markdown from the Lexical tree.



# adminDelete

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/comment/comment.controller.ts` (line 211)

Delete a comment (Admin only - can delete any comment)

## Endpoint

`DELETE /documents/:documentId/comments/:id/admin`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `CommentController` (MODULE_DECLARES)



# AgentResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/orchestrator.ts` (line 57)

Result from a single sub-agent execution

## Properties

| Property | Type |
|---|---|
| `agentName` | `string` |
| `focus` | `string` |
| `output` | `string` |
| `usage` | `TokenUsage` |
| `durationMs` | `number` |
| `success` | `boolean` |
| `error` | `string` |



# AgentStartPayload

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 28)

Agent WebSocket Protocol Types

Defines the event contract between frontend and backend for real-time
agent sessions. Mirrors the CLI experience over WebSocket.

Client → Server:
  agent:start    — Create a new session
  agent:send     — Send a message to the agent
  agent:inject   — Inject a message mid-task
  agent:cancel   — Cancel the current operation

Server → Client:
  agent:thinking   — Agent is processing
  agent:tool_start — Tool call started
  agent:tool_end   — Tool call completed
  agent:message    — Agent text output (streamed or full)
  agent:todo       — Todo list updated
  agent:turn_done  — Turn completed with usage stats
  agent:error      — Error occurred
  agent:ended      — Session ended

## Properties

| Property | Type |
|---|---|
| `workspace` | `string` |
| `model` | `string` |
| `maxTurns` | `number` |
| `projectId` | `string` |
| `organizationId` | `string` |
| `superMode` | `boolean` |
| `verbose` | `boolean` |
| `autonomous` | `boolean` |
| `testCommand` | `string` |
| `resumeSessionId` | `string` |
| `routingTable` | `'gpt54-family' | import('@atloria/agent-core').ModelRoutingTable` |
| `mode` | `import('@atloria/agent-core').TaskMode` |



# AIProvider

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/providers/ai-provider.interface.ts` (line 40)

Unified AI Provider Interface
All providers must implement this interface for plug-and-play switching.

## Properties

| Property | Type |
|---|---|
| `name` | `string` |



# always

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/utils/fp.ts` (line 62)

returns a function which when called always returns the passed value

## Signature

```ts
function always(value: T)
```

## Parameters

| Name | Type |
|---|---|
| `value` | `T` |



# AnalyticsService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/analytics/analytics.service.ts` (line 15)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `trackPageView` | `trackPageView(data: {
    projectId: string;
    docVersionId?: string;
    documentId?: string;
    documentSlug: string;
    sessionId: string;
    referrer?: string;
    userAgent?: string;
    country?: string;
    timeOnPage?: number;
    scrollDepth?: number;
    fingerprint?: string;
    pathname?: string;
    timestamp?: string;
    type?: string;
  }, req: any)` | `unknown` |
| `trackSearch` | `trackSearch(data: {
    projectId: string;
    docVersionId?: string;
    query: string;
    resultsCount: number;
    clickedDocId?: string;
    sessionId: string;
  })` | `unknown` |
| `getOverview` | `getOverview(projectId: string, days: unknown)` | `unknown` |
| `getVersionTraffic` | `getVersionTraffic(projectId: string, days: unknown)` | `unknown` |
| `getTopDocuments` | `getTopDocuments(projectId: string, days: unknown, limit: unknown)` | `unknown` |
| `getTopSearchQueries` | `getTopSearchQueries(projectId: string, days: unknown, limit: unknown)` | `unknown` |
| `getDailyTraffic` | `getDailyTraffic(projectId: string, days: unknown)` | `unknown` |
| `getDeviceBreakdown` | `getDeviceBreakdown(projectId: string, days: unknown)` | `unknown` |
| `getSourceBreakdown` | `getSourceBreakdown(projectId: string, days: unknown)` | `unknown` |
| `getGeoBreakdown` | `getGeoBreakdown(projectId: string, days: unknown)` | `unknown` |
| `getZeroResultSearches` | `getZeroResultSearches(projectId: string, days: unknown, limit: unknown)` | `unknown` |
| `getGhostDocs` | `getGhostDocs(projectId: string, days: unknown, limit: unknown)` | `unknown` |
| `getTrendingDocs` | `getTrendingDocs(projectId: string, days: unknown, limit: unknown)` | `unknown` |
| `getScrollDepthHistogram` | `getScrollDepthHistogram(projectId: string, days: unknown)` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`



# AtloriaBadge

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/badge/Badge.ts` (line 17)

A badge component for displaying status, counts, or labels

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `variant` | `BadgeVariant` |
| `size` | `BadgeSize` |
| `solid` | `any` |
| `outline` | `any` |
| `pill` | `any` |
| `dot` | `any` |
| `removable` | `any` |



# AudienceController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/audience/audience.controller.ts` (line 22)

## Relationships

- MODULE_DECLARES → `list`
- MODULE_DECLARES → `get`
- MODULE_DECLARES → `create`
- MODULE_DECLARES → `update`
- MODULE_DECLARES → `delete`
- DEPENDS_ON → `audienceservice`



# AuthenticationInfo

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/entity.interface.ts` (line 653)

Authentication information

## Properties

| Property | Type |
|---|---|
| `type` | `'jwt' | 'oauth' | 'api-key' | 'basic' | 'bearer' | 'none'` |
| `scopes` | `string[]` |
| `optional` | `boolean` |



# AuthModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/auth/auth.module.ts` (line 15)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `emailmodule`
- MODULE_IMPORTS → `samlmodule`
- MODULE_DECLARES → `authcontroller`
- MODULE_PROVIDES → `authservice`
- MODULE_PROVIDES → `jwtstrategy`
- MODULE_PROVIDES → `jwtauthguard`
- MODULE_PROVIDES → `rolesguard`
- MODULE_PROVIDES → `organizationguard`
- MODULE_EXPORTS → `authservice`
- MODULE_EXPORTS → `jwtauthguard`
- MODULE_EXPORTS → `rolesguard`
- MODULE_EXPORTS → `organizationguard`



# AUTH_REGISTER_THROTTLE

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/common/throttling.module.ts` (line 21)



# AzureResponsesModel

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-adapter.ts` (line 29)

Azure OpenAI Model — implements the SDK's Model interface using Azure Responses API.

**Implements:** `Model`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getResponse` | `getResponse(request: ModelRequest)` | `Promise` |
| `getStreamedResponse` | `getStreamedResponse(request: ModelRequest)` | `AsyncIterable` |
| `getRetryAdvice` | `getRetryAdvice(args: ModelRetryAdviceRequest)` | `ModelRetryAdvice | undefined` |



# BadgeSize

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/badge/Badge.ts` (line 6)

## Definition

```ts
'sm' | 'md' | 'lg'
```



# BatchFileProcessorProps

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Parser/BatchFileProcessor.tsx` (line 9)

## Properties

| Property | Type |
|---|---|
| `onComplete` | `(results: BatchProcessResult[]) => void` |
| `className` | `string` |



# BoundingBoxDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/capture/dto/create-flow.dto.ts` (line 19)

Percentage-of-viewport bounding box, for annotation seeding.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `w` | `number` |
| `h` | `number` |



# buildEvalCommand

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/swebench-evaluator.ts` (line 112)

Build the CLI command for running the official SWE-bench evaluation harness.

Requires:
- Docker installed and running
- `swebench` Python package installed (`pip install swebench`)
- Pre-built Docker images available (auto-pulled by harness)

## Signature

```ts
function buildEvalCommand(options: EvalCommandOptions): string
```

## Parameters

| Name | Type |
|---|---|
| `options` | `EvalCommandOptions` |

**Returns:** `string`



# buildLlmsFullTxt

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/llms-txt.ts` (line 120)

## Signature

```ts
function buildLlmsFullTxt(doc: LlmsDoc): string
```

## Parameters

| Name | Type |
|---|---|
| `doc` | `LlmsDoc` |

**Returns:** `string`



# buildProjectUrl

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/lib/url-utils.ts` (line 122)

Build a project URL from components

In production with NEXT_PUBLIC_DOCS_DOMAIN set, returns the subdomain URL.
Locally (no env var), falls back to the /p/ path.

## Signature

```ts
function buildProjectUrl(slug: string, urlId: string): string
```

## Parameters

| Name | Type |
|---|---|
| `slug` | `string` |
| `urlId` | `string` |

**Returns:** `string`



# buildSectionTaskPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/copywriter.prompts.ts` (line 55)

Section-specific task prompts — each section type gets a tailored brief.

## Signature

```ts
function buildSectionTaskPrompt(sectionType: SectionType, docContext: string): string
```

## Parameters

| Name | Type |
|---|---|
| `sectionType` | `SectionType` |
| `docContext` | `string` |

**Returns:** `string`



# clampScrollDepth

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/analytics/utils/tracking-utils.ts` (line 47)

Clamp scroll depth into the 0–100 range. Some browsers occasionally report
101% on bounce or with sticky footers; clamp instead of dropping the row.

## Signature

```ts
function clampScrollDepth(depth: number | null | undefined): number | null
```

## Parameters

| Name | Type |
|---|---|
| `depth` | `number | null | undefined` |

**Returns:** `number | null`



# clearAndType

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/test-helpers.ts` (line 30)

Clear input field and type new value

## Signature

```ts
async function clearAndType(locator: Locator, text: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `locator` | `Locator` |
| `text` | `string` |

**Returns:** `Promise`



# ColumnEditor

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/table/TableEditor.tsx` (line 490)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `parentEditor` | `any` | ✓ | - |
| `highlightedCoordinates` | `any` | ✓ | - |
| `align` | `any` | ✓ | - |
| `lexicalTable` | `any` | ✓ | - |
| `colIndex` | `any` | ✓ | - |
| `setActiveCellWithBoundaries` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ColumnEditor_594d93["ColumnEditor"]
    class component_ColumnEditor_594d93 rootComponent
```

## Relationships

- RENDERS → `RadixPopover-Root`
- RENDERS → `RadixPopover-PopoverTrigger`
- RENDERS → `RadixPopover-Portal`
- RENDERS → `RadixPopover-PopoverContent`
- RENDERS → `RadixToolbar-Root`
- RENDERS → `RadixToolbar-ToggleGroup`
- RENDERS → `RadixToolbar-ToggleItem`
- RENDERS → `RadixToolbar-Separator`
- RENDERS → `RadixToolbar-Button`
- RENDERS → `RadixPopover-Arrow`
- USES_HOOK → `useCellValues`
- USES_HOOK → `useCallback`
- USES_HOOK → `useTranslation`

## Referenced By

- `TableEditor` (RENDERS)



# ComparisonSideBySide

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/comparison/comparison-side-by-side.tsx` (line 24)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `before` | `ComparisonColumn` | ✓ | - |
| `after` | `ComparisonColumn` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ComparisonSideBySide_4551bff3["ComparisonSideBySide"]
    class component_ComparisonSideBySide_4551bff3 rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `X`
- RENDERS → `Check`
- USES_HOOK → `useTranslation`



# createValidateConfigTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/validate-config.tool.ts` (line 12)

## Signature

```ts
function createValidateConfigTool(componentLibraryDir: string): ToolDefinition
```

## Parameters

| Name | Type |
|---|---|
| `componentLibraryDir` | `string` |

**Returns:** `ToolDefinition`



# DatabaseModelEntity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 620)

Database Model entity

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.DATABASE_MODEL` |
| `tableName` | `string` |
| `fields` | `FieldDefinition[]` |
| `indexes` | `IndexDefinition[]` |
| `relations` | `RelationDefinition[]` |
| `orm` | `'prisma' | 'typeorm' | 'sequelize' | 'mongoose' | 'drizzle' | 'raw'` |
| `primaryKey` | `string[]` |
| `uniqueConstraints` | `UniqueConstraint[]` |



# DataConfigDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 232)

Data state configuration

## Properties

| Property | Type |
|---|---|
| `dataState` | `'empty' | 'populated' | 'error'` |
| `prerequisite` | `string` |
| `mockResponse` | `string` |
| `seedData` | `string` |
| `resetAfter` | `boolean` |



# DESK_STATE_LABELS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 139)

## Definition

```ts
Record
```



# DocAudienceScope

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/project/audience-scope.util.ts` (line 11)

Audience → doc-set scope mapping.

A project serves multiple doc SETS side-by-side (user manual + technical
reference). Each DocVersion belongs to exactly one scope
(DocVersion.audienceScope) and each scope has its own independent ACTIVE
version. Audiences (viewer URL segments like /p/:slug/:audienceSlug) map
onto a scope so public reads resolve the ACTIVE version of the RIGHT set.

## Definition

```ts
'user' | 'technical'
```



# EntityIcon

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/projects/[id]/technical-docs/components/EntityTree.tsx` (line 95)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `type` | `string` | - | - |
| `className` | `string` | - | - |

## Diagram

```mermaid
graph TD
    component_EntityIcon_25c38ad2["EntityIcon"]
    class component_EntityIcon_25c38ad2 rootComponent
```

## Relationships

- RENDERS → `CogIcon`
- RENDERS → `CommandLineIcon`
- RENDERS → `CircleStackIcon`
- RENDERS → `CubeIcon`
- RENDERS → `ShieldCheckIcon`
- RENDERS → `PuzzlePieceIcon`
- RENDERS → `CodeBracketIcon`
- RENDERS → `DocumentTextIcon`

## Referenced By

- `AppSection` (RENDERS)
- `EntityTree` (RENDERS)



# extractPropsFromTypeAnnotation

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 194)

Extract props from TypeScript type annotation

## Signature

```ts
function extractPropsFromTypeAnnotation(typeNode: t.TSType): PropInfo[]
```

## Parameters

| Name | Type |
|---|---|
| `typeNode` | `t.TSType` |

**Returns:** `PropInfo[]`



# FastAPIParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/fastapi.parser.ts` (line 35)

FastAPI Parser implementation

Uses regex-based parsing for Python files since we can't use Python AST directly in Node.js

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# FeaturesHorizontalFlowProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/features/features-horizontal-flow.tsx` (line 19)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `descriptionKey` | `string` |
| `features` | `Feature[]` |



# FlowStepResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 172)

Per-step replay result, surfaced through the batch status endpoint so the api
stitcher can place each screenshot as it becomes available.

`flowStepId`:   0 = initial state (before any action); N = state AFTER step N.
`blobUrl`:      the canonical FULL-PAGE image (flowKey without variant).
`annotationsFragment`: `#atloria-annotations=…` overlay fragment, or '' if the
                step's target could not be located.

## Properties

| Property | Type |
|---|---|
| `flowStepId` | `number` |
| `blobUrl` | `string` |
| `annotationsFragment` | `string` |



# GapDraftState

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/ThreadList.tsx` (line 25)

## Definition

```ts
| { phase: 'drafting' }
  | { phase: 'drafted'; documentId: string }
  | { phase: 'error'; message: string }
```



# generateJson

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/generators/json.generator.ts` (line 67)

Generate JSON output files

## Signature

```ts
async function generateJson(results: ParseResult[], project: DetectedProject, outputDir: string): Promise
```

## Parameters

| Name | Type |
|---|---|
| `results` | `ParseResult[]` |
| `project` | `DetectedProject` |
| `outputDir` | `string` |

**Returns:** `Promise`



# GenerationConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 59)

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `userId` | `string` |
| `targetAudience` | `string` |
| `brandVoice` | `string` |
| `language` | `string` |
| `additionalLanguages` | `string[]` |
| `pageType` | `PageType` |
| `sections` | `SectionType[]` |
| `model` | `string` |
| `theme` | `ThemeConfig` |
| `visuals` | `VisualConfig` |
| `enableVariants` | `boolean` |
| `enableThemeToggle` | `boolean` |
| `enableImageGeneration` | `boolean` |



# GeneratorService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-10-generation/generator.service.ts` (line 1)



# getAvailableParsers

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 182)

Get available parsers

## Endpoint

`GET /api/orchestrator/parsers`

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# getParsersByCategory

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 173)

Get parser names by category
Note: API Schema parsers (openapi, graphql) are handled by the api-schema-parser microservice

## Signature

```ts
function getParsersByCategory(): Record
```

**Returns:** `Record`



# HooksConfig

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/session/hook-registry.ts` (line 64)

The top-level hooks configuration object

## Definition

```ts
Partial>
```



# ImageGenerateFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/tools/generate-image.tool.ts` (line 18)

Function signature for image generation.
Injected at creation time — keeps tool code framework-agnostic.

## Definition

```ts
(
  prompt: string,
  options?: {
    width?: number;
    height?: number;
    background?: 'transparent' | 'opaque' | 'auto';
    quality?: 'low' | 'medium' | 'high';
  }
) => Promise
```



# ModalTriggerType

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/utils/modal-extractor.ts` (line 19)

Modal/Popup/Dialog Extractor

Extracts modal, popup, and dialog definitions from source code and templates
across multiple frontend frameworks. Finds:
- Angular: openPopup(), MatDialog.open(), modalService.show(), app-shared-popup
- React: useState modal patterns, , 
- Vue: v-model dialogs, $modal.show(), $bvModal.show()
- DevExtreme: dx-popup, dxPopupOptions
- Generic: Bootstrap modals, jQuery .modal() calls

Validated against real-world patterns from PAMS (Angular + DevExtreme).

## Definition

```ts
'direct' | 'programmatic' | 'navigation'
```



# NavItem

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/generators/mdx.generator.ts` (line 62)

Navigation structure for API sync

## Properties

| Property | Type |
|---|---|
| `title` | `string` |
| `href` | `string` |
| `children` | `NavItem[]` |



# NO_ROUTING_TABLE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-router.ts` (line 99)

Single-model routing table (no routing).
All categories use the default model.
This is the implicit behavior when no routing table is configured.

## Definition

```ts
ModelRoutingTable
```



# PageProfilerService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/page-profiler.service.ts` (line 50)

Profiles a page's interactive elements using a single page.evaluate() call.
ARIA-first selectors with framework-specific fallbacks.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `profilePage` | `profilePage(page: Page)` | `Promise` |



# PostConnection

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Paginated post list

## Relationships

- TYPE_OF → `Post`

## Referenced By

- `posts` (TYPE_OF)



# Profile

**Kind:** Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `bio` | `string` |
| `avatarUrl` | `string` |
| `website` | `string` |
| `location` | `string` |

## Referenced By

- `User Management API` (TYPE_OF)



# refreshToken

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Refresh access token

## Relationships

- TYPE_OF → `AuthPayload`

## Referenced By

- `Mutation` (CALLS_API)



# reshootFlowStep

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 152)

Re-shoot ONE step of a recipe (F2, synchronous)

POST /api/screenshot/flow/reshoot

Walks the recipe up to `targetStepId` in a single context and re-captures just
that step — optionally at a new viewport / UI locale — burning any per-step
redactions into the fresh asset. Overwrites the canonical blob key and returns
the fresh { flowStepId, blobUrl, annotationsFragment } so the api can respond.

## Endpoint

`POST /screenshot/flow/reshoot`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# SaveAsTemplateModal

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/templates.page.ts` (line 216)

Save as template modal page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `fillDetails` | `fillDetails(name: string, description: string, category: string)` | `Promise` |
| `save` | `save()` | `Promise` |
| `cancel` | `cancel()` | `Promise` |
| `isVisible` | `isVisible()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `modal` | `Locator` |
| `nameInput` | `Locator` |
| `descriptionInput` | `Locator` |
| `categorySelect` | `Locator` |
| `saveButton` | `Locator` |
| `cancelButton` | `Locator` |



# ScreenshotConfig

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/config/screenshot.config.ts` (line 55)

Type for screenshot configuration

## Definition

```ts
ReturnType
```



# SCREENSHOT_CONFIG_KEY

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/config/screenshot.config.ts` (line 60)

Configuration keys for injection



# SearchDocsFn

**Kind:** Type

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/query-product-knowledge.tool.ts` (line 48)

Full-text search across generated documentation.

## Definition

```ts
(
  projectId: string,
  query: string,
  options?: { limit?: number; documentType?: string; audience?: string },
) => Promise
```



# SyncJobScope

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/project/dto/sync-job.dto.ts` (line 17)

Sync job scope

## Values

- `ORGANIZATION`
- `PROJECT`



# TestUserData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 24)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `email` | `string` |
| `name` | `string` |
| `password` | `string` |
| `avatar` | `string` |



# UserRole

**Kind:** Enum

**Source:** `atloria-monorepo/packages/types/src/enums/index.ts` (line 10)

Enums for Atloria
These enums match the Prisma schema and are used throughout the application
Note: These are maintained separately from

## Values

- `ADMIN`
- `MAINTAINER`
- `CONTRIBUTOR`
- `VIEWER`



# addImportVisitor$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 348)

Registers a visitor to be used when importing markdown.



# AgentRuntimeOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/types.ts` (line 290)

Options for the AgentRuntime constructor.
These configure Runner-level behavior that applies to all runs.

## Properties

| Property | Type |
|---|---|
| `tracingDisabled` | `boolean` |
| `handoffInputFilter` | `(data: {
    inputHistory: unknown;
    preHandoffItems: unknown[];
    newItems: unknown[];
  }) => { inputHistory: unknown; preHandoffItems: unknown[]; newItems: unknown[] }` |



# AgentThinkingEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 92)

## Properties

| Property | Type |
|---|---|
| `agentName` | `string` |



# AIResponse

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/providers/ai-provider.interface.ts` (line 15)

## Properties

| Property | Type |
|---|---|
| `content` | `string` |
| `inputTokens` | `number` |
| `outputTokens` | `number` |
| `model` | `string` |
| `stopReason` | `string` |



# analyzeChunkRelationships

**Kind:** Function

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-02-chunking/chunk-relationship-graph.ts` (line 244)

Analyze chunk relationships for documentation purposes

## Signature

```ts
function analyzeChunkRelationships(graph: ChunkRelationshipGraph): ChunkRelationshipSummary
```

## Parameters

| Name | Type |
|---|---|
| `graph` | `ChunkRelationshipGraph` |

**Returns:** `ChunkRelationshipSummary`



# applyEdit

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/doc-version/doc-version.controller.ts` (line 84)

## Endpoint

`POST /doc-versions/:projectId/apply-edit`

## Referenced By

- `DocVersionController` (MODULE_DECLARES)



# AppService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/app/app.service.ts` (line 5)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getData` | `getData()` | `unknown` |
| `getPublicStats` | `getPublicStats()` | `unknown` |
| `healthCheck` | `healthCheck()` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `redisservice`



# AtloriaButton

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/button/Button.ts` (line 22)

A versatile button component with multiple variants and sizes

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `variant` | `ButtonVariant` |
| `size` | `ButtonSize` |
| `disabled` | `any` |
| `loading` | `any` |
| `type` | `'button' | 'submit' | 'reset'` |
| `ariaLabel` | `string | null` |



# AuditController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/audit/audit.controller.ts` (line 8)

## Relationships

- MODULE_DECLARES → `query`
- MODULE_DECLARES → `exportCSV`
- MODULE_DECLARES → `exportJSON`
- DEPENDS_ON → `auditservice`



# BadgeVariant

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/badge/Badge.ts` (line 5)

## Definition

```ts
'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info'
```



# BashSession

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/tools/bash-session.ts` (line 48)

A persistent shell session that maintains cwd, env vars, and venv activation
across commands. Spawns a single bash process and sends commands via stdin,
reading output until a unique delimiter marker signals completion.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `start` | `start()` | `Promise` |
| `execute` | `execute(command: string, options: { timeout?: number })` | `Promise` |
| `getCwd` | `getCwd()` | `string` |
| `isDisposed` | `isDisposed()` | `boolean` |
| `isRunning` | `isRunning()` | `boolean` |
| `dispose` | `dispose()` | `void` |



# BatchProcessResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Parser/BatchFileProcessor.tsx` (line 14)

## Properties

| Property | Type |
|---|---|
| `filename` | `string` |
| `result` | `ParseResult` |
| `error` | `string` |
| `status` | `'pending' | 'processing' | 'success' | 'error'` |



# BillingModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/billing/billing.module.ts` (line 12)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `configmodule`
- MODULE_IMPORTS → `aimodule`
- MODULE_DECLARES → `billingcontroller`
- MODULE_PROVIDES → `billingservice`
- MODULE_EXPORTS → `billingservice`



# bugReportTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/bug-report.template.ts` (line 3)



# buildExplorationPlan

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/workflows/exploration.ts` (line 35)

Build a codebase exploration plan.

Launches 3 parallel explorers that investigate the codebase from different
angles, then synthesizes their findings into a unified understanding.

## Signature

```ts
function buildExplorationPlan(options: {
  query?: string;
  workspace?: string;
}): OrchestrationPlan
```

## Parameters

| Name | Type |
|---|---|
| `options` | `{
  query?: string;
  workspace?: string;
}` |

**Returns:** `OrchestrationPlan`



# buildLlmsTxt

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/llms-txt.ts` (line 92)

## Signature

```ts
function buildLlmsTxt(doc: LlmsDoc, opts: LlmsTxtOptions): string
```

## Parameters

| Name | Type |
|---|---|
| `doc` | `LlmsDoc` |
| `opts` | `LlmsTxtOptions` |

**Returns:** `string`



# buildSemanticUtilities

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/tools/theme.ts` (line 162)

Build semantic utility classes that map to CSS vars.
These replace hardcoded Tailwind color classes.

## Signature

```ts
function buildSemanticUtilities(): string
```

**Returns:** `string`



# BulkCaptureScreenshotsDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/screenshot/dto/capture-screenshot.dto.ts` (line 101)

DTO for bulk screenshot capture (job-based)

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `urls` | `string[]` |
| `viewport` | `ViewportType` |
| `browser` | `BrowserType` |
| `waitTime` | `number` |



# ButtonElement

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/template-analysis.interface.ts` (line 14)

Template Analysis Interfaces

Defines structured data extracted from Angular/Vue templates
for user journey diagram generation.

## Properties

| Property | Type |
|---|---|
| `label` | `string` |
| `action` | `string` |
| `line` | `number` |
| `conditionalOn` | `string` |
| `routerLink` | `string` |
| `type` | `string` |
| `attributes` | `Record` |



# calculateDocumentCentricLayout

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Graph/graphUtils.ts` (line 72)

Calculate hierarchical layout for document-centric view

## Signature

```ts
function calculateDocumentCentricLayout(documentId: string, entities: KGEntity[], relationships: KGRelationship[]): { nodes: GraphNode[]; edges: GraphEdge[] }
```

## Parameters

| Name | Type |
|---|---|
| `documentId` | `string` |
| `entities` | `KGEntity[]` |
| `relationships` | `KGRelationship[]` |

**Returns:** `{ nodes: GraphNode[]; edges: GraphEdge[] }`



# clampTimeOnPage

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/analytics/utils/tracking-utils.ts` (line 37)

Clamp a raw time-on-page value to a reasonable upper bound and floor at 0.
Returns null if the input is null/undefined so the column stays nullable.

## Signature

```ts
function clampTimeOnPage(timeOnPage: number | null | undefined): number | null
```

## Parameters

| Name | Type |
|---|---|
| `timeOnPage` | `number | null | undefined` |

**Returns:** `number | null`



# closeModal

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/test-helpers.ts` (line 98)

Close a modal/dialog

## Signature

```ts
async function closeModal(page: Page): Promise
```

## Parameters

| Name | Type |
|---|---|
| `page` | `Page` |

**Returns:** `Promise`



# createValidateLinksTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/validate-links.tool.ts` (line 38)

## Signature

```ts
function createValidateLinksTool(): ToolDefinition
```

**Returns:** `ToolDefinition`



# CtaBanner

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/cta/cta-banner.tsx` (line 19)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `primaryCtaKey` | `string` | ✓ | - |
| `primaryCtaUrl` | `string` | ✓ | - |
| `secondaryCtaKey` | `string` | - | - |
| `secondaryCtaUrl` | `string` | - | - |
| `icon` | `LucideIcon` | - | - |

## Diagram

```mermaid
graph TD
    component_CtaBanner_54d8e8bc["CtaBanner"]
    class component_CtaBanner_54d8e8bc rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `Icon`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `ArrowRight`
- USES_HOOK → `useTranslation`



# DateBadge

**Kind:** Component

**Source:** `atloria-monorepo/templates/site-bootstrap/src/sections/social-proof/social-proof-timeline.tsx` (line 23)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `dateKey` | `string` | ✓ | - |
| `t` | `Function` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_DateBadge_257ada65["DateBadge"]
    class component_DateBadge_257ada65 rootComponent
```

## Referenced By

- `MilestoneCard` (RENDERS)



# DependencyInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 750)

Dependency injection info

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `type` | `string` |
| `token` | `string` |
| `optional` | `boolean` |



# DiscoveryAuthConfigDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/dto/discovery.dto.ts` (line 13)

## Properties

| Property | Type |
|---|---|
| `loginUrl` | `string` |
| `username` | `string` |
| `password` | `string` |
| `usernameSelector` | `string` |
| `passwordSelector` | `string` |
| `submitSelector` | `string` |
| `successSelector` | `string` |



# dynamic

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/layout.tsx` (line 7)



# EventType

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/events/events.service.ts` (line 20)

## Definition

```ts
(typeof EVENT_TYPES)[number]
```



# ExternalIcon

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Parser/DependencyGraph.tsx` (line 103)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `className` | `string` | - | - |

## Diagram

```mermaid
graph TD
    component_ExternalIcon_2da639e7["ExternalIcon"]
    class component_ExternalIcon_2da639e7 rootComponent
```

## Referenced By

- `DependencyGraph` (RENDERS)
- `DependencyCard` (RENDERS)



# extractRenderedComponents

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 352)

Extract rendered child components (JSX elements that start with uppercase)

## Signature

```ts
function extractRenderedComponents(path: NodePath): string[]
```

## Parameters

| Name | Type |
|---|---|
| `path` | `NodePath` |

**Returns:** `string[]`



# FeaturesInteractiveTabsProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/features/features-interactive-tabs.tsx` (line 23)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `descriptionKey` | `string` |
| `tabs` | `Tab[]` |



# FileScanner

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/utils/file-scanner.ts` (line 86)

File Scanner Class

Provides methods for scanning directories, finding files by glob patterns,
and respecting .gitignore rules.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `scan` | `scan(config: FileScannerConfig)` | `Promise` |
| `scanWithContent` | `scanWithContent(config: FileScannerConfig)` | `Promise` |
| `getFileStats` | `getFileStats(filePath: string)` | `Promise` |
| `readFile` | `readFile(filePath: string)` | `Promise` |
| `matchesPattern` | `matchesPattern(filePath: string, pattern: string)` | `boolean` |
| `parseGitignore` | `parseGitignore(rootDir: string)` | `Promise` |
| `countFiles` | `countFiles(config: FileScannerConfig)` | `Promise` |
| `groupByExtension` | `groupByExtension(files: ScannedFile[])` | `Record` |
| `groupByDirectory` | `groupByDirectory(files: ScannedFile[])` | `Record` |
| `getSupportedExtensions` | `getSupportedExtensions()` | `ExtensionCategories` |
| `createPatternForExtensions` | `createPatternForExtensions(extensions: string[])` | `string` |
| `getTypescriptPatterns` | `getTypescriptPatterns()` | `string[]` |
| `getDefaultExcludePatterns` | `getDefaultExcludePatterns()` | `string[]` |



# generateMdx

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/generators/mdx.generator.ts` (line 1589)

Generate MDX documentation

## Signature

```ts
async function generateMdx(provider: DataProvider, outputDir: string, options: Partial): Promise
```

## Parameters

| Name | Type |
|---|---|
| `provider` | `DataProvider` |
| `outputDir` | `string` |
| `options` | `Partial` |

**Returns:** `Promise`



# getFollowers

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/src/users/users.controller.ts` (line 86)

## Endpoint

`GET /users/:id/followers`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Referenced By

- `UsersController` (MODULE_DECLARES)



# getProjectFilesByExtension

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 81)

Get files by extension from a project

## Signature

```ts
function getProjectFilesByExtension(projectPath: string, extensions: string[]): string[]
```

## Parameters

| Name | Type |
|---|---|
| `projectPath` | `string` |
| `extensions` | `string[]` |

**Returns:** `string[]`



# GraphEdge

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/components/Graph/types.ts` (line 63)

## Definition

```ts
Edge
```



# HtmlQualityConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/html-quality.guardrail.ts` (line 14)

## Properties

| Property | Type |
|---|---|
| `requireViewport` | `boolean` |
| `requireAlt` | `boolean` |
| `flagInlineStyles` | `boolean` |
| `maxInlineStyles` | `number` |



# HybridMapperService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/hybrid-mapper.service.ts` (line 1)



# InstructionZone

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/context/instruction-loader.ts` (line 76)

## Definition

```ts
'system' | 'project' | 'task' | 'turn'
```



# JobStatus

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 148)

Job status for tracking generation progress.

## Definition

```ts
| 'queued'
  | 'processing'
  | 'generating_content'
  | 'generating_visuals'
  | 'assembling'
  | 'completed'
  | 'failed'
```



# LocaleFlowResult

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 225)

One locale's full screenshot set from a locale-fanned reshoot.

## Properties

| Property | Type |
|---|---|
| `locale` | `string` |
| `steps` | `FlowStepResult[]` |



# PageSettleService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/page-settle.service.ts` (line 10)

Service for waiting until a page has fully settled before capture.

Extracted verbatim from BatchScreenshotService so batch capture, flow-replay
(WS-A) and clip capture (WS-B) share one framework-agnostic settle strategy.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `detectLongPollingApp` | `detectLongPollingApp(page: Page)` | `Promise` |
| `waitForAngularAppReady` | `waitForAngularAppReady(page: Page, timeoutMs: number)` | `Promise` |
| `waitForPageReady` | `waitForPageReady(page: Page, timeoutMs: number)` | `Promise` |
| `waitForDomStability` | `waitForDomStability(page: Page, checkIntervalMs: number, maxChecks: number)` | `Promise` |



# PLAN_MODE_ALLOWED_TOOLS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/session/plan-mode-filter.ts` (line 15)

Tools allowed during plan mode (read-only investigation)



# Profile

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

User profile information

## Referenced By

- `User` (TYPE_OF)



# ProjectMetadata

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/providers/data-provider.interface.ts` (line 16)

Project metadata from either source

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `name` | `string` |
| `type` | `string` |
| `rootDir` | `string` |
| `frameworks` | `string[]` |
| `statistics` | `{
    totalFiles: number;
    parsedFiles: number;
    entityCounts: Record;
  }` |
| `generatedAt` | `string` |



# RoleSourceType

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/utils/permission-extractor.ts` (line 17)

Permission Extractor

Extracts permission checks, route guards, role definitions, and
authentication configuration from source code. Detects both hardcoded
and dynamic role-based access control patterns.

## Definition

```ts
'hardcoded' | 'database' | 'external' | 'unknown'
```



# scan

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/discovery.controller.ts` (line 17)

POST /api/discovery/scan

Scans a web application via headless browser: login → menu walk → page profiling → grid depth.
Returns a SiteMap with all discovered routes and their element profiles.

Synchronous — typical runtime ~6 min for a 50-page app.

## Endpoint

`POST /discovery/scan`

## Referenced By

- `DiscoveryController` (MODULE_DECLARES)



# screenshotConfig

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/config/screenshot.config.ts` (line 9)

Screenshot configuration

All values can be overridden via environment variables.
This replaces the hardcoded DEFAULTS object in batch-screenshot.service.ts.



# ShareDocumentModal

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/collaboration.page.ts` (line 184)

Share document modal page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `inviteUser` | `inviteUser(email: string, permission: 'view' | 'edit')` | `Promise` |
| `getSharedUsers` | `getSharedUsers()` | `Locator` |
| `getSharedUserCount` | `getSharedUserCount()` | `Promise` |
| `removeUser` | `removeUser(email: string)` | `Promise` |
| `copyLink` | `copyLink()` | `Promise` |
| `close` | `close()` | `Promise` |
| `isVisible` | `isVisible()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `modal` | `Locator` |
| `emailInput` | `Locator` |
| `permissionSelect` | `Locator` |
| `inviteButton` | `Locator` |
| `sharedUsersList` | `Locator` |
| `copyLinkButton` | `Locator` |
| `closeButton` | `Locator` |



# StateType

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 311)

## Definition

```ts
typeof STATE_TYPES[number]
```



# SyncJobStatus

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/project/dto/sync-job.dto.ts` (line 6)

Sync job status enum

## Values

- `PENDING`
- `RUNNING`
- `COMPLETED`
- `FAILED`
- `CANCELLED`



# unfollowUser

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Unfollow a user

## Referenced By

- `Mutation` (CALLS_API)



# WebSocketState

**Kind:** Enum

**Source:** `atloria-monorepo/packages/api-client/src/clients/WebSocketClient.ts` (line 4)

WebSocket connection states

## Values

- `CONNECTING`
- `OPEN`
- `CLOSING`
- `CLOSED`



# addLexicalNode$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 342)

Registers a lexical node to be used in the editor.



# AgentTemplate

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/orchestrator.ts` (line 28)

A template for spawning a sub-agent within a phase

## Properties

| Property | Type |
|---|---|
| `name` | `string` |
| `focus` | `string` |
| `instructions` | `string` |
| `tools` | `string[]` |
| `model` | `string` |
| `category` | `TaskCategory` |



# AgentTodoEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 114)

## Properties

| Property | Type |
|---|---|
| `items` | `Array<{
    id: string;
    description: string;
    status: 'pending' | 'in_progress' | 'completed' | 'skipped';
    result?: string;
  }>` |
| `stats` | `{
    total: number;
    completed: number;
    pending: number;
    inProgress: number;
    skipped: number;
  }` |



# AISession

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/stage-08.types.ts` (line 28)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `phaseId` | `string` |
| `type` | `'parent' | 'child'` |
| `parentSessionId` | `string` |
| `documentIds` | `string[]` |
| `tokenBudget` | `{
    input: number;
    output: number;
  }` |
| `sharedContext` | `SharedContext` |
| `status` | `'pending' | 'running' | 'completed' | 'failed'` |



# apiClient

**Kind:** Function

**Source:** `atloria-monorepo/packages/api-client/src/lib/api-client.ts` (line 1)

## Signature

```ts
function apiClient(): string
```

**Returns:** `string`



# approve

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/doc-version/doc-version.controller.ts` (line 580)

## Endpoint

`POST /doc-versions/:projectId/:versionId/approval/approve`

| Parameter | In | Type | Required |
|---|---|---|---|
| `versionId` | query | `string` | ✓ |

## Referenced By

- `DocVersionController` (MODULE_DECLARES)



# AssetsService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/assets/assets.service.ts` (line 24)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `uploadImage` | `uploadImage(options: UploadImageOptions)` | `unknown` |
| `getAsset` | `getAsset(id: string, organizationId: string)` | `unknown` |
| `deleteAsset` | `deleteAsset(id: string, organizationId: string, _userId: string)` | `unknown` |
| `listAssets` | `listAssets(organizationId: string, audienceIds: string[])` | `unknown` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `azureblobservice`



# AtloriaCard

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/card/Card.ts` (line 19)

A flexible card component with multiple variants and slots

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `variant` | `CardVariant` |
| `clickable` | `any` |
| `noPadding` | `any` |
| `compact` | `any` |



# AuthController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/auth/auth.controller.ts` (line 20)

## Relationships

- MODULE_DECLARES → `register`
- MODULE_DECLARES → `login`
- MODULE_DECLARES → `refresh`
- MODULE_DECLARES → `verifyEmail`
- MODULE_DECLARES → `forgotPassword`
- MODULE_DECLARES → `resetPassword`
- MODULE_DECLARES → `resendVerification`
- MODULE_DECLARES → `logout`
- MODULE_DECLARES → `getMe`
- DEPENDS_ON → `authservice`



# BenchmarkMonitor

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/benchmark-monitor.ts` (line 113)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `close` | `close()` | `Promise` |
| `analyze` | `analyze(report: BenchmarkReport)` | `FailureAnalysis` |
| `formatAnalysis` | `formatAnalysis(analysis: FailureAnalysis)` | `string` |

## Properties

| Property | Type |
|---|---|
| `onEvent` | `any` |
| `log` | `any` |



# BitbucketModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/bitbucket/bitbucket.module.ts` (line 10)

## Relationships

- MODULE_IMPORTS → `configmodule`
- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_DECLARES → `bitbucketcontroller`
- MODULE_PROVIDES → `bitbucketservice`
- MODULE_EXPORTS → `bitbucketservice`



# BlockType

**Kind:** Type

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 103)

The type of the block that the current selection is in.

## Definition

```ts
'paragraph' | 'quote' | HeadingTagType | ''
```



# BoardCardData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 86)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `position` | `number` |
| `columnId` | `string` |
| `issue` | `{
    id: string;
    ticketNumber: number;
    status: string;
    priority: string;
    category: string;
    ticketType?: string;
    description: string;
    pageTitle: string | null;
    pageUrl: string | null;
    assignee: { id: string; name: string | null; email: string } | null;
    createdAt: string;
    updatedAt: string;
    _count?: { comments: number };
  }` |



# buildFeatureDevPlan

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/workflows/feature-dev.ts` (line 29)

Build a feature development orchestration plan.

## Signature

```ts
function buildFeatureDevPlan(options: {
  featureDescription?: string;
  workspace?: string;
}): OrchestrationPlan
```

## Parameters

| Name | Type |
|---|---|
| `options` | `{
  featureDescription?: string;
  workspace?: string;
}` |

**Returns:** `OrchestrationPlan`



# buildNgRxStateFlow

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/ngrx-pattern-detector.ts` (line 582)

Build state flow from detected NgRx patterns

## Signature

```ts
function buildNgRxStateFlow(actions: NgRxActionPattern[], _reducers: NgRxReducerPattern[], selectors: NgRxSelectorPattern[], _effects: NgRxEffectPattern[]): StateFlow | null
```

## Parameters

| Name | Type |
|---|---|
| `actions` | `NgRxActionPattern[]` |
| `_reducers` | `NgRxReducerPattern[]` |
| `selectors` | `NgRxSelectorPattern[]` |
| `_effects` | `NgRxEffectPattern[]` |

**Returns:** `StateFlow | null`



# buildSeoMetadata

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/tools/seo-metadata.tool.ts` (line 70)

Build SEO metadata from page info.
Deterministic template — no AI call needed for basic metadata.

## Signature

```ts
function buildSeoMetadata(params: {
  pageTitle: string;
  pageSummary: string;
  productName?: string;
  heroImageUrl?: string;
  keywords?: string[];
}): SeoMetadata
```

## Parameters

| Name | Type |
|---|---|
| `params` | `{
  pageTitle: string;
  pageSummary: string;
  productName?: string;
  heroImageUrl?: string;
  keywords?: string[];
}` |

**Returns:** `SeoMetadata`



# BulkDeleteDocumentsDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/document/dto/bulk-operations.dto.ts` (line 7)

Bulk delete documents

## Properties

| Property | Type |
|---|---|
| `documentIds` | `string[]` |



# CacheEntry

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/config.interface.ts` (line 235)

Cache entry for incremental parsing

## Properties

| Property | Type |
|---|---|
| `filePath` | `string` |
| `contentHash` | `string` |
| `cachedAt` | `Date` |
| `parserName` | `string` |
| `result` | `unknown` |



# calculateEntityCentricLayout

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Graph/graphUtils.ts` (line 134)

Calculate layout for entity-centric view

## Signature

```ts
function calculateEntityCentricLayout(entities: KGEntity[], relationships: KGRelationship[]): { nodes: GraphNode[]; edges: GraphEdge[] }
```

## Parameters

| Name | Type |
|---|---|
| `entities` | `KGEntity[]` |
| `relationships` | `KGRelationship[]` |

**Returns:** `{ nodes: GraphNode[]; edges: GraphEdge[] }`



# CAPTURE_ACTIONS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/capture/dto/create-flow.dto.ts` (line 15)



# collectEntities

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/curation.ts` (line 62)

Look up name/type for a set of entity ids in the UNCURATED navMap — the tree's
"Hidden (n)" section needs names, but hidden entities are filtered out of the served map.

## Signature

```ts
function collectEntities(navMap: NavMap | null | undefined, ids: string[]): Array<{ id: string; name: string; type: string }>
```

## Parameters

| Name | Type |
|---|---|
| `navMap` | `NavMap | null | undefined` |
| `ids` | `string[]` |

**Returns:** `Array<{ id: string; name: string; type: string }>`



# createMockAPIResponse

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 249)

## Signature

```ts
function createMockAPIResponse(data: T, options: {
    status?: number;
    message?: string;
    pagination?: {
      page: number;
      limit: number;
      total: number;
      totalPages: number;
    };
  })
```

## Parameters

| Name | Type |
|---|---|
| `data` | `T` |
| `options` | `{
    status?: number;
    message?: string;
    pagination?: {
      page: number;
      limit: number;
      total: number;
      totalPages: number;
    };
  }` |



# createValidateOutputTool

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/tools/validate-output.tool.ts` (line 29)

## Signature

```ts
function createValidateOutputTool(): ToolDefinition
```

**Returns:** `ToolDefinition`



# CtaCard

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/cta/cta-card.tsx` (line 24)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `primaryCtaKey` | `string` | ✓ | - |
| `primaryCtaUrl` | `string` | ✓ | - |
| `secondaryCtaKey` | `string` | - | - |
| `secondaryCtaUrl` | `string` | - | - |
| `icon` | `LucideIcon` | - | - |

## Diagram

```mermaid
graph TD
    component_CtaCard_13ae657c["CtaCard"]
    class component_CtaCard_13ae657c rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `Icon`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `ArrowRight`
- USES_HOOK → `useTranslation`



# DependencyNode

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/relationship.interface.ts` (line 356)

Node in a dependency tree

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `name` | `string` |
| `type` | `string` |
| `relationshipType` | `RelationshipType` |
| `children` | `DependencyNode[]` |
| `depth` | `number` |



# DiscoveryScanRequestDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/dto/discovery.dto.ts` (line 40)

## Properties

| Property | Type |
|---|---|
| `siteUrl` | `string` |
| `auth` | `DiscoveryAuthConfigDto` |
| `exploreGridDepth` | `boolean` |
| `timeoutMs` | `number` |
| `pageProfileTimeoutMs` | `number` |



# DownshiftAutoCompleteWithSuggestions

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/ui/DownshiftAutoComplete.tsx` (line 29)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `autofocus` | `any` | ✓ | - |
| `suggestions` | `any` | ✓ | - |
| `control` | `any` | ✓ | - |
| `inputName` | `any` | ✓ | - |
| `placeholder` | `any` | ✓ | - |
| `initialInputValue` | `any` | ✓ | - |
| `setValue` | `any` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_DownshiftAutoCompleteWithSuggestions_158f0032["DownshiftAutoCompleteWithSuggestions"]
    class component_DownshiftAutoCompleteWithSuggestions_158f0032 rootComponent
```

## Relationships

- RENDERS → `Controller`
- USES_HOOK → `useState`
- USES_HOOK → `useCellValue`
- USES_HOOK → `useCombobox`

## Referenced By

- `DownshiftAutoComplete` (RENDERS)



# EMPTY_FILTERS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/components/Boards/BoardFilters.tsx` (line 30)

## Definition

```ts
BoardFiltersState
```



# ExportSection

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/analytics/export/analytics-export.service.ts` (line 8)

## Definition

```ts
| 'overview'
  | 'topDocs'
  | 'topSearches'
  | 'devices'
  | 'sources'
```



# extractTypeString

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 222)

Convert TypeScript type to string representation

## Signature

```ts
function extractTypeString(typeNode: t.TSType | null | undefined): string
```

## Parameters

| Name | Type |
|---|---|
| `typeNode` | `t.TSType | null | undefined` |

**Returns:** `string`



# FileSystemStorageProvider

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/storage/file-system-storage.provider.ts` (line 27)

File system storage provider implementation

**Implements:** `IStorageProvider`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getMode` | `getMode()` | `StorageMode` |
| `initialize` | `initialize()` | `Promise` |
| `saveScreenshot` | `saveScreenshot(buffer: Buffer, metadata: ScreenshotMetadata)` | `Promise` |
| `findExistingScreenshot` | `findExistingScreenshot(metadata: Partial)` | `Promise` |
| `saveDocument` | `saveDocument(document: DocumentMetadata)` | `Promise` |
| `documentExists` | `documentExists(_projectId: string, categoryPath: string[], slug: string)` | `Promise` |
| `listDocuments` | `listDocuments(_projectId: string, categoryPath: string[])` | `Promise>` |



# FooterConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/types.ts` (line 61)

## Properties

| Property | Type |
|---|---|
| `descriptionKey` | `string` |
| `linkGroups` | `Array<{
    titleKey: string;
    links: Array<{ labelKey: string; href: string }>;
  }>` |
| `legalLinks` | `Array<{ labelKey: string; href: string }>` |



# generateUserDocsCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/generate-user-docs.command.ts` (line 237)

Main command handler

## Signature

```ts
async function generateUserDocsCommand(options: GenerateUserDocsOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `options` | `GenerateUserDocsOptions` |

**Returns:** `Promise`



# getJobResult

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 109)

Get job result

## Endpoint

`GET /api/orchestrator/jobs/:jobId/result`

| Parameter | In | Type | Required |
|---|---|---|---|
| `jobId` | query | `string` | ✓ |

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# getRegisteredParsers

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parse.processor.ts` (line 64)

Get registered parser names

## Signature

```ts
function getRegisteredParsers(): string[]
```

**Returns:** `string[]`



# GraphNode

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/components/Graph/types.ts` (line 62)

Extended Node types for our graph

## Definition

```ts
Node
```



# HtmlValidationResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/tools/validate-html.tool.ts` (line 11)

## Properties

| Property | Type |
|---|---|
| `valid` | `boolean` |
| `errors` | `string[]` |
| `warnings` | `string[]` |



# InternalIcon

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Parser/DependencyGraph.tsx` (line 111)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `className` | `string` | - | - |

## Diagram

```mermaid
graph TD
    component_InternalIcon_2031600b["InternalIcon"]
    class component_InternalIcon_2031600b rootComponent
```

## Referenced By

- `DependencyGraph` (RENDERS)
- `DependencyCard` (RENDERS)



# JournalEntryType

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/session-journal.ts` (line 26)

## Definition

```ts
| 'goal'          // Current objective (restated at end of context)
  | 'observation'   // What the agent found (concise)
  | 'hypothesis'    // Suspected root cause (falsifiable)
  | 'failure'       // What didn't work + why (prevents retry)
  | 'progress'
```



# LayoutType

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 21)

## Definition

```ts
| HeroLayout
  | FeaturesLayout
  | HowItWorksLayout
  | PricingLayout
  | ProblemLayout
  | SocialProofLayout
  | FaqLayout
  | CtaLayout
```



# LoginSelectorDetectorService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/login-selector-detector.service.ts` (line 1)



# PdfService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/pdf/pdf.service.ts` (line 28)

Renders a fully-composed HTML document to PDF bytes using headless Chromium.

This is the ONE place in the platform that owns Chromium PDF rendering — the
screenshot-worker pod is the only image that ships a browser. Other services
(e.g. the API's doc-version export) compose HTML and POST it here over HTTP
rather than launching Chromium in-process.

## Methods

| Method | Signature | Returns |
|---|---|---|
| `renderPdf` | `renderPdf(html: string, options: RenderPdfOptions)` | `Promise` |

## Relationships

- DEPENDS_ON → `playwrightservice`



# PLAN_MODE_BLOCKED_TOOLS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/session/plan-mode-filter.ts` (line 29)

Tools explicitly blocked during plan mode



# RawPageProfile

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/discovery/page-profiler.service.ts` (line 8)

Raw profile data returned from page.evaluate().
Matches the SiteMap types but kept separate to avoid cross-package imports in the worker.

## Properties

| Property | Type |
|---|---|
| `grids` | `Array<{
    framework: string;
    selector: string;
    rowCount: number;
    columns: string[];
    hasDetailNavigation: boolean;
    detailUrl?: string;
    detailProfile?: RawPageProfile;
  }>` |
| `tabs` | `Array<{
    label: string;
    index: number;
    selector: string;
    detectionMethod: string;
  }>` |
| `buttons` | `Array<{
    text: string;
    selector: string;
    isEnabled: boolean;
  }>` |
| `inputs` | `Array<{
    type: string;
    placeholder: string;
    selector: string;
    label?: string;
  }>` |
| `forms` | `Array<{
    selector: string;
    fieldCount: number;
    hasSubmitButton: boolean;
  }>` |
| `modals` | `Array<{
    selector: string;
    title?: string;
  }>` |



# ScreenshotInfo

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/utils/screenshot-storage.helper.ts` (line 16)

## Properties

| Property | Type |
|---|---|
| `localPath` | `string` |
| `pageId` | `string` |
| `route` | `string` |
| `url` | `string` |
| `formState` | `string` |
| `description` | `string` |
| `viewport` | `{ width: number; height: number }` |



# StateCoverageStatus

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/generators/diagrams/state-machine-diagram.generator.ts` (line 19)

Coverage status for a state

## Definition

```ts
'covered' | 'partial' | 'uncovered' | 'unknown'
```



# STATE_TYPES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 307)



# Tag

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Tag for categorizing posts

## Relationships

- TYPE_OF → `Post`

## Referenced By

- `Post` (TYPE_OF)



# takeAuthenticatedScreenshot

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.controller.ts` (line 248)

Take authenticated screenshot (login first, then capture)

POST /api/screenshot/authenticated

Body:
{
  "url": "https://example.com/dashboard",
  "projectId": "uuid",
  "organizationId": "uuid",
  "capturedBy": "uuid",
  "auth": {
    "loginUrl": "/login",
    "username": "user@example.com",
    "password": "password",
    "usernameSelector": "#username",
    "passwordSelector": "#password",
    "submitSelector": "button[type=submit]",
    "successSelector": ".dashboard"
  },
  "viewport": { "width": 1920, "height": 1080 },
  "fullPage": true
}

## Endpoint

`POST /screenshot/authenticated`

## Referenced By

- `ScreenshotController` (MODULE_DECLARES)



# TemplateGalleryPage

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/templates.page.ts` (line 7)

Template gallery page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `getTemplateCards` | `getTemplateCards()` | `Locator` |
| `getTemplateByName` | `getTemplateByName(name: string)` | `Locator` |
| `getTemplateCount` | `getTemplateCount()` | `Promise` |
| `search` | `search(query: string)` | `Promise` |
| `clearSearch` | `clearSearch()` | `Promise` |
| `filterByCategory` | `filterByCategory(category: string)` | `Promise` |
| `getCategories` | `getCategories()` | `Promise` |
| `previewTemplate` | `previewTemplate(name: string)` | `Promise` |
| `useTemplate` | `useTemplate(name: string)` | `Promise` |
| `hasTemplate` | `hasTemplate(name: string)` | `Promise` |
| `getTemplateDetails` | `getTemplateDetails(name: string)` | `Promise<{
    name: string;
    description: string;
    category: string;
  }>` |

## Properties

| Property | Type |
|---|---|
| `gallery` | `Locator` |
| `searchInput` | `Locator` |
| `categoryFilter` | `Locator` |
| `templateCards` | `Locator` |
| `loadingState` | `Locator` |
| `emptyState` | `Locator` |



# unlikePost

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Unlike a post

## Referenced By

- `Mutation` (CALLS_API)



# ViewportType

**Kind:** Enum

**Source:** `atloria-monorepo/apps/api/src/screenshot/dto/capture-screenshot.dto.ts` (line 14)

## Values

- `DESKTOP`
- `TABLET`
- `MOBILE`



# WaitType

**Kind:** Type

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 108)

## Definition

```ts
typeof WAIT_TYPES[number]
```



# ActivityRow

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/components/Boards/IssueSidePanel.tsx` (line 926)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `event` | `unknown` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ActivityRow_1df84edf["ActivityRow"]
    class component_ActivityRow_1df84edf rootComponent
```

## Referenced By

- `IssueSidePanel` (RENDERS)



# addMdastExtension$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 360)

Adds a mdast extension to the markdown parser.



# AgentToolEndEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 101)

## Properties

| Property | Type |
|---|---|
| `toolName` | `string` |
| `outputPreview` | `string` |
| `durationMs` | `number` |



# AgentTransport

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/protocol/session-event-bridge.ts` (line 37)

A transport is a thin adapter between AgentProtocolEvents and a specific
output surface (terminal, WebSocket, IPC channel, etc.).

Implement this interface to add a new surface without touching the bridge.



# AnalysisInput

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/stage-04.types.ts` (line 20)

## Properties

| Property | Type |
|---|---|
| `chunks` | `Chunk[]` |
| `features` | `UserFeature[]` |



# Appender

**Kind:** Function

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 496)

## Signature

```ts
function Appender(cell$: NodeRef, init: (r: Realm, sig$: NodeRef) => void)
```

## Parameters

| Name | Type |
|---|---|
| `cell$` | `NodeRef` |
| `init` | `(r: Realm, sig$: NodeRef) => void` |



# archive

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/doc-version/doc-version.controller.ts` (line 179)

## Endpoint

`POST /doc-versions/:projectId/:versionId/archive`

| Parameter | In | Type | Required |
|---|---|---|---|
| `versionId` | query | `string` | ✓ |

## Referenced By

- `DocVersionController` (MODULE_DECLARES)



# AtloriaCodeSample

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/api-explorer/CodeSample.ts` (line 16)

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `samples` | `CodeSampleData[]` |
| `endpoint` | `any` |
| `method` | `any` |
| `baseUrl` | `any` |



# AudienceService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/audience/audience.service.ts` (line 15)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `list` | `list(user: JwtPayload)` | `Promise` |
| `get` | `get(id: string, user: JwtPayload)` | `Promise` |
| `create` | `create(dto: CreateAudienceDto, user: JwtPayload)` | `Promise` |
| `update` | `update(id: string, dto: UpdateAudienceDto, user: JwtPayload)` | `Promise` |
| `delete` | `delete(id: string, user: JwtPayload)` | `Promise` |
| `seedStandardAudiences` | `seedStandardAudiences()` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`



# BenchmarkRunner

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/runner.ts` (line 99)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `run` | `run(onProgress: (msg: string) => void)` | `Promise` |



# BillingController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/billing/billing.controller.ts` (line 23)

## Relationships

- MODULE_DECLARES → `checkout`
- MODULE_DECLARES → `portal`
- MODULE_DECLARES → `summary`
- MODULE_DECLARES → `webhook`
- DEPENDS_ON → `billingservice`



# BoardColumnData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 107)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `name` | `string` |
| `order` | `number` |
| `color` | `string` |
| `mapsToStatus` | `string | null` |
| `wipLimit` | `number | null` |
| `cards` | `BoardCardData[]` |



# BoardsModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/boards/boards.module.ts` (line 9)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `issuesmodule`
- MODULE_DECLARES → `boardscontroller`
- MODULE_PROVIDES → `boardsservice`
- MODULE_EXPORTS → `boardsservice`



# buildMemoryExtractionPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/session-memory.ts` (line 75)

Build a prompt for a summarizer model to extract session memories.

This is designed to be sent to a model call. Domain layers can either:
1. Call their model provider directly with this prompt
2. Use a sub-agent with this as the task

Returns null if the session is too short to extract from.

## Signature

```ts
function buildMemoryExtractionPrompt(ctx: SessionContext): string | null
```

## Parameters

| Name | Type |
|---|---|
| `ctx` | `SessionContext` |

**Returns:** `string | null`



# buildPiniaStateFlow

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/pinia-pattern-detector.ts` (line 467)

Build state flow from detected Pinia patterns

## Signature

```ts
function buildPiniaStateFlow(_stores: PiniaStorePattern[], actions: PiniaActionPattern[], getters: PiniaGetterPattern[]): StateFlow | null
```

## Parameters

| Name | Type |
|---|---|
| `_stores` | `PiniaStorePattern[]` |
| `actions` | `PiniaActionPattern[]` |
| `getters` | `PiniaGetterPattern[]` |

**Returns:** `StateFlow | null`



# buildSeoSystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/seo.prompts.ts` (line 9)

## Signature

```ts
function buildSeoSystemPrompt(config: GenerationConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `config` | `GenerationConfig` |

**Returns:** `string`



# BulkMoveDocumentsDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/document/dto/bulk-operations.dto.ts` (line 22)

Bulk move documents to a different category

## Properties

| Property | Type |
|---|---|
| `documentIds` | `string[]` |
| `categoryId` | `string | null` |



# ButtonSize

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/button/Button.ts` (line 8)

## Definition

```ts
'sm' | 'md' | 'lg'
```



# calculateFlowLayout

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Graph/graphUtils.ts` (line 147)

Calculate layout for flow view with stages

## Signature

```ts
function calculateFlowLayout(stages: FlowStage[]): {
  nodes: GraphNode[];
  edges: GraphEdge[];
}
```

## Parameters

| Name | Type |
|---|---|
| `stages` | `FlowStage[]` |

**Returns:** `{
  nodes: GraphNode[];
  edges: GraphEdge[];
}`



# changelogTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/changelog.template.ts` (line 3)



# CloudStorageConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/storage.interface.ts` (line 293)

Cloud storage configuration

## Properties

| Property | Type |
|---|---|
| `apiBaseUrl` | `string` |
| `apiToken` | `string` |
| `projectId` | `string` |
| `organizationId` | `string` |
| `timeout` | `number` |



# computeEntityImportance

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/technical-docs/search-index.ts` (line 143)

Per-entity importance 0..1 = blend of call-graph in-degree centrality
(how many things reference it) and public-API-surface weight (its kind).

## Signature

```ts
function computeEntityImportance(entities: GraphEntity[], relationships: GraphRelationship[]): Map
```

## Parameters

| Name | Type |
|---|---|
| `entities` | `GraphEntity[]` |
| `relationships` | `GraphRelationship[]` |

**Returns:** `Map`



# createMockErrorResponse

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 270)

## Signature

```ts
function createMockErrorResponse(message: string, status)
```

## Parameters

| Name | Type |
|---|---|
| `message` | `string` |
| `status` | `any` |



# CtaSplitForm

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/cta/cta-split-form.tsx` (line 24)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `primaryCtaKey` | `string` | ✓ | - |
| `primaryCtaUrl` | `string` | ✓ | - |
| `contactItems` | `ContactItem[]` | - | - |
| `formId` | `string` | - | - |

## Diagram

```mermaid
graph TD
    component_CtaSplitForm_59c28a2f["CtaSplitForm"]
    class component_CtaSplitForm_59c28a2f rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `ArrowRight`
- RENDERS → `motion-ul`
- RENDERS → `ItemIcon`
- USES_HOOK → `useTranslation`



# DependencyTree

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/relationship.interface.ts` (line 321)

Dependency tree structure

## Properties

| Property | Type |
|---|---|
| `rootId` | `string` |
| `rootName` | `string` |
| `rootType` | `string` |
| `children` | `DependencyNode[]` |
| `depth` | `number` |
| `totalNodes` | `number` |



# ENTITY_TYPE_COLORS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/components/Graph/types.ts` (line 97)

Entity colors by type

## Definition

```ts
Record
```



# ErrorConfigDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 276)

Error state configuration

## Properties

| Property | Type |
|---|---|
| `errorType` | `'validation' | 'network' | 'permission'` |
| `triggerMethod` | `string` |
| `expectedError` | `string` |



# generateApp

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/generate.ts` (line 232)

## Signature

```ts
async function generateApp(outputDir: string, config: SiteAssemblyConfig): Promise
```

## Parameters

| Name | Type |
|---|---|
| `outputDir` | `string` |
| `config` | `SiteAssemblyConfig` |

**Returns:** `Promise`



# generateEntityId

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 440)

Generate a unique entity ID

## Signature

```ts
function generateEntityId(filePath: string, name: string, type: string): string
```

## Parameters

| Name | Type |
|---|---|
| `filePath` | `string` |
| `name` | `string` |
| `type` | `string` |

**Returns:** `string`



# getJobStatus

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 85)

Get job status

## Endpoint

`GET /api/orchestrator/jobs/:jobId/status`

| Parameter | In | Type | Required |
|---|---|---|---|
| `jobId` | query | `string` | ✓ |

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# getMcpConfigPath

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/mcp.command.ts` (line 23)

## Signature

```ts
function getMcpConfigPath(): string
```

**Returns:** `string`



# getServerSideProps

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/frontend/src/pages/profile/[id].tsx` (line 47)

## Signature

```ts
async function getServerSideProps({ params })
```

## Parameters

| Name | Type |
|---|---|
| `{ params }` | `any` |



# GraphQLParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/api-schema/graphql.parser.ts` (line 60)

GraphQL Parser Implementation

Supports:
- GraphQL Schema Definition Language (SDL)
- Queries, Mutations, Subscriptions
- Object Types, Input Types, Enums, Interfaces, Unions
- Directives and field arguments

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(_config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# GraphViewMode

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/components/Graph/types.ts` (line 33)

Graph view modes

## Definition

```ts
'document-centric' | 'entity-centric' | 'flow'
```



# HeroBentoGridProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/hero/hero-bento-grid.tsx` (line 15)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `subheadlineKey` | `string` |
| `primaryCtaKey` | `string` |
| `primaryCtaUrl` | `string` |
| `secondaryCtaKey` | `string` |
| `secondaryCtaUrl` | `string` |
| `badgeKey` | `string` |
| `gridItems` | `{ titleKey: string; descriptionKey?: string; icon?: LucideIcon }[]` |
| `className` | `string` |



# HTMLToolbarComponent

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/html.tsx` (line 75)

## Diagram

```mermaid
graph TD
    component_HTMLToolbarComponent_48da1ddd["HTMLToolbarComponent"]
    class component_HTMLToolbarComponent_48da1ddd rootComponent
```

## Relationships

- USES_HOOK → `useCellValues`
- USES_HOOK → `useMemo`

## Referenced By

- `SpanWithColor` (RENDERS)



# ImageGenerationOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/providers/azure-image.provider.ts` (line 16)

## Properties

| Property | Type |
|---|---|
| `prompt` | `string` |
| `size` | `'1024x1024' | '1024x1792' | '1792x1024'` |
| `background` | `'transparent' | 'opaque' | 'auto'` |
| `quality` | `'low' | 'medium' | 'high'` |
| `outputFormat` | `'png' | 'webp'` |



# LoopConfig

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/runtime-config.ts` (line 16)

## Definition

```ts
| { engine: 'openai-sdk' }
  | {
      engine: 'live-swe';
      /** Max same-turn requeries on format errors (default: 3) */
      maxRequeries?: number;
      /** Custom history processor pipeline (default: LastN + ClosedWindow) */
      historyProcessors?: HistoryProcessor[];
    }
```



# MetaDocumentationService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-14-meta/meta-documentation.service.ts` (line 1)



# MockupType

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 37)

## Definition

```ts
'dashboard' | 'editor' | 'terminal' | 'api-playground' | 'analytics-chart' | 'mobile-app'
```



# PlaywrightService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/playwright/playwright.service.ts` (line 52)

Playwright service for browser automation and screenshots

Features:
- Multiple browser support (Chromium, Firefox, WebKit)
- Custom viewport sizes
- Full-page screenshots
- Wait for selectors/timeouts
- Basic authentication
- Browser pooling for performance

## Methods

| Method | Signature | Returns |
|---|---|---|
| `getBrowser` | `getBrowser(type: BrowserType)` | `Promise` |
| `takeScreenshot` | `takeScreenshot(options: ScreenshotOptions)` | `Promise` |
| `takeResponsiveScreenshots` | `takeResponsiveScreenshots(url: string, viewports: Array<{ name: string; width: number; height: number }>)` | `Promise>` |
| `takeAuthenticatedScreenshot` | `takeAuthenticatedScreenshot(options: AuthenticatedScreenshotOptions)` | `Promise` |
| `getPageHtml` | `getPageHtml(url: string, browserType: BrowserType)` | `Promise` |
| `onModuleDestroy` | `onModuleDestroy()` | `unknown` |



# RenderPdfOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/pdf/pdf.service.ts` (line 5)

## Properties

| Property | Type |
|---|---|
| `format` | `'A4' | 'A3' | 'A5' | 'Letter' | 'Legal' | 'Tabloid'` |
| `margin` | `{ top?: string; bottom?: string; left?: string; right?: string }` |
| `printBackground` | `boolean` |
| `displayHeaderFooter` | `boolean` |
| `headerTemplate` | `string` |
| `footerTemplate` | `string` |



# ReportFormat

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/analytics/export/scheduled-reports.service.ts` (line 9)

## Definition

```ts
'PDF' | 'CSV'
```



# SessionsDeleteOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/commands/sessions.command.ts` (line 18)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `all` | `boolean` |



# STANDARD_PROFILE

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/model-profiles.ts` (line 181)

STANDARD_PROFILE — safe fallback when model is unknown.
Preserves current GPT-5.4 behavior so existing tests and deployments
are unaffected when no profile is specified.

## Definition

```ts
ModelCapabilityProfile
```



# StateManagementLibrary

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/state-management.interface.ts` (line 14)

State Management Interfaces

Defines interfaces for state management libraries (Redux, MobX, Zustand, etc.)
and their patterns for user documentation generation.

## Definition

```ts
| 'redux'
  | 'redux-toolkit'
  | 'mobx'
  | 'zustand'
  | 'recoil'
  | 'jotai'
  | 'context-api'
  | 'react-query'
  | 'swr'
  | 'ngrx'
  | 'akita'
  | 'ngxs'
  | 'pinia'
  | 'vuex'
```



# takeResponsiveScreenshots

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.controller.ts` (line 213)

Take responsive screenshots (mobile, tablet, desktop)

POST /api/screenshot/responsive

Body:
{
  "url": "https://example.com",
  "projectId": "uuid",
  "organizationId": "uuid",
  "capturedBy": "uuid"
}

## Endpoint

`POST /screenshot/responsive`

## Referenced By

- `ScreenshotController` (MODULE_DECLARES)



# TemplatePreviewModal

**Kind:** Class

**Source:** `atloria-monorepo/apps/web-e2e/src/pages/templates.page.ts` (line 153)

Template preview modal page object

**Extends:** `BasePage`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `goto` | `goto()` | `Promise` |
| `getTitle` | `getTitle()` | `Promise` |
| `getPreviewContent` | `getPreviewContent()` | `Promise` |
| `use` | `use()` | `Promise` |
| `close` | `close()` | `Promise` |
| `isVisible` | `isVisible()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `modal` | `Locator` |
| `title` | `Locator` |
| `description` | `Locator` |
| `preview` | `Locator` |
| `useButton` | `Locator` |
| `closeButton` | `Locator` |



# updatePost

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Update a post

## Relationships

- TYPE_OF → `Post`
- TYPE_OF → `UpdatePostInput`

## Referenced By

- `Mutation` (CALLS_API)



# UpdatePostInput

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Input for updating a post

## Referenced By

- `updatePost` (TYPE_OF)



# WAIT_TYPES

**Kind:** Constant

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/batch-screenshot.dto.ts` (line 107)



# ActivityTabBody

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/DeskCopilot.tsx` (line 525)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `thread` | `DeskThreadDetail` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_ActivityTabBody_1faedad5["ActivityTabBody"]
    class component_ActivityTabBody_1faedad5 rootComponent
```

## Referenced By

- `DeskCopilot` (RENDERS)



# addNestedEditorChild$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 776)

Lets you add React components as children of any registered nested editor (useful for Lexical plugins).



# AgentToolStartEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 96)

## Properties

| Property | Type |
|---|---|
| `toolName` | `string` |
| `input` | `string` |



# AnalysisResult

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/stage-04.types.ts` (line 25)

## Properties

| Property | Type |
|---|---|
| `analyses` | `ChunkAnalysis[]` |
| `tokenUsage` | `TokenUsage[]` |



# AnthropicModelProviderConfig

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/runtime/anthropic-adapter.ts` (line 36)

## Properties

| Property | Type |
|---|---|
| `apiKey` | `string` |
| `defaultModel` | `string` |
| `baseUrl` | `string` |
| `timeout` | `number` |
| `maxTokens` | `number` |
| `modelProfile` | `ModelCapabilityProfile` |
| `azureHosted` | `boolean` |
| `azureApiVersion` | `string` |



# applyTheme

**Kind:** Function

**Source:** `atloria-monorepo/templates/site-bootstrap/src/lib/theme.ts` (line 96)

## Signature

```ts
function applyTheme(mode: ThemeMode, primaryColor: string)
```

## Parameters

| Name | Type |
|---|---|
| `mode` | `ThemeMode` |
| `primaryColor` | `string` |



# ask

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/technical-docs/technical-docs-mcp.controller.ts` (line 284)

## Endpoint

`POST /technical-docs/:projectId/ask`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |

## Referenced By

- `TechnicalDocsMcpController` (MODULE_DECLARES)



# AtloriaEndpointDetail

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/api-explorer/EndpointDetail.ts` (line 64)

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `endpoint` | `APIEndpoint` |
| `mode` | `ExplorerMode` |
| `environment` | `Environment` |
| `schemas` | `Record` |



# AuditService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/audit/audit.service.ts` (line 19)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `record` | `record(event: AuditEventInput)` | `Promise` |
| `query` | `query(opts: {
    organizationId: string;
    projectId?: string;
    docVersionId?: string;
    actorId?: string;
    action?: string;
    startDate?: string;
    endDate?: string;
    limit?: number;
    offset?: number;
  })` | `unknown` |
| `exportCSV` | `exportCSV(opts: { organizationId: string; projectId?: string })` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`



# BitbucketController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/bitbucket/bitbucket.controller.ts` (line 10)

## Relationships

- MODULE_DECLARES → `getAuthUrl`
- MODULE_DECLARES → `handleCallback`
- MODULE_DECLARES → `getStatus`
- MODULE_DECLARES → `listRepos`
- MODULE_DECLARES → `listBranches`
- MODULE_DECLARES → `disconnect`
- DEPENDS_ON → `bitbucketservice`



# BM25Index

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/semantic/bm25.ts` (line 59)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `addDocument` | `addDocument(id: string, text: string)` | `void` |
| `removeDocument` | `removeDocument(id: string)` | `void` |
| `search` | `search(query: string, topK: undefined)` | `Array<{ id: string; score: number }>` |
| `clear` | `clear()` | `void` |
| `serialize` | `serialize()` | `SerializedIndex` |
| `deserialize` | `deserialize(data: object)` | `BM25Index` |



# BoardData

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 117)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `name` | `string` |
| `description` | `string | null` |
| `color` | `string` |
| `isDefault` | `boolean` |
| `settings` | `Record | null` |
| `columns` | `BoardColumnData[]` |
| `createdAt` | `string` |
| `updatedAt` | `string` |



# BrandingModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/branding/branding.module.ts` (line 8)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_DECLARES → `brandingcontroller`
- MODULE_PROVIDES → `brandingservice`
- MODULE_EXPORTS → `brandingservice`



# buildPrediction

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/swebench-evaluator.ts` (line 58)

Convert a TaskResult to SWE-bench prediction format.
Used for both successful and failed tasks (autosubmit pattern —
even partial patches are worth submitting).

## Signature

```ts
function buildPrediction(result: TaskResult, modelName: string): SWEBenchPrediction
```

## Parameters

| Name | Type |
|---|---|
| `result` | `TaskResult` |
| `modelName` | `string` |

**Returns:** `SWEBenchPrediction`



# buildReduxStateFlow

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/redux-pattern-detector.ts` (line 501)

Build state flow from detected patterns

## Signature

```ts
function buildReduxStateFlow(actions: ReduxActionPattern[], _reducers: ReduxReducerPattern[], selectors: ReduxSelectorPattern[]): StateFlow | null
```

## Parameters

| Name | Type |
|---|---|
| `actions` | `ReduxActionPattern[]` |
| `_reducers` | `ReduxReducerPattern[]` |
| `selectors` | `ReduxSelectorPattern[]` |

**Returns:** `StateFlow | null`



# buildSeoTaskPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/seo.prompts.ts` (line 44)

## Signature

```ts
function buildSeoTaskPrompt(pageTitle: string, pageSummary: string, productName: string): string
```

## Parameters

| Name | Type |
|---|---|
| `pageTitle` | `string` |
| `pageSummary` | `string` |
| `productName` | `string` |

**Returns:** `string`



# BulkPublishDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/document/dto/bulk-operations.dto.ts` (line 68)

Bulk publish all documents in a project

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `audienceSlug` | `string` |
| `setPublic` | `boolean` |



# ButtonVariant

**Kind:** Type

**Source:** `atloria-monorepo/packages/ui-core/src/components/button/Button.ts` (line 7)

## Definition

```ts
'primary' | 'secondary' | 'danger' | 'ghost'
```



# calculateNewPosition

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/components/Boards/helpers.ts` (line 137)

Given the current cards in a destination column (excluding the moved card)
and the index where the card will land, compute its new float position.

## Signature

```ts
function calculateNewPosition(destCards: BoardCardData[], insertIndex: number): number
```

## Parameters

| Name | Type |
|---|---|
| `destCards` | `BoardCardData[]` |
| `insertIndex` | `number` |

**Returns:** `number`



# CodeBlockInfo

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/entity.interface.ts` (line 972)

Code block information

## Properties

| Property | Type |
|---|---|
| `language` | `string` |
| `line` | `number` |
| `lines` | `number` |



# codeReviewChecklistTemplate

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/template/seeds/code-review-checklist.template.ts` (line 3)



# createMockPaginatedResponse

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 281)

## Signature

```ts
function createMockPaginatedResponse(items: T[], page, limit, total: number)
```

## Parameters

| Name | Type |
|---|---|
| `items` | `T[]` |
| `page` | `any` |
| `limit` | `any` |
| `total` | `number` |



# detectAiAgent

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/events/agent-detect.ts` (line 42)

Classify a User-Agent for agent-read recording.
 - Known AI bot           → its normalized vendor name.
 - Empty / scripted UA    → 'Other bot' (record it — it's not a human).
 - Real browser           → null (don't record; that's page-view analytics).
 - Anything else unknown  → 'Other bot' (better to log than to lose the signal).

## Signature

```ts
function detectAiAgent(userAgent: string | null): string | null
```

## Parameters

| Name | Type |
|---|---|
| `userAgent` | `string | null` |

**Returns:** `string | null`



# Entity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 217)

Base entity interface - all specific entities extend this

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `type` | `EntityType` |
| `name` | `string` |
| `filePath` | `string` |
| `startLine` | `number` |
| `endLine` | `number` |
| `description` | `string` |
| `tags` | `string[]` |
| `metadata` | `Record` |
| `discoveredAt` | `Date` |
| `contentHash` | `string` |



# FaqAccordion

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/faq/faq-accordion.tsx` (line 14)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `items` | `unknown[]` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_FaqAccordion_1c913bb0["FaqAccordion"]
    class component_FaqAccordion_1c913bb0 rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `AccordionItem`
- USES_HOOK → `useTranslation`



# FlowBoundingBoxDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 45)

Percentage-of-viewport bounding box carried over from capture time.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `w` | `number` |
| `h` | `number` |



# generateI18n

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/generate.ts` (line 302)

## Signature

```ts
async function generateI18n(outputDir: string, locales: LocaleConfig[]): Promise
```

## Parameters

| Name | Type |
|---|---|
| `outputDir` | `string` |
| `locales` | `LocaleConfig[]` |

**Returns:** `Promise`



# generateRelationshipId

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 462)

Generate a relationship ID

## Signature

```ts
function generateRelationshipId(sourceId: string, targetId: string, type: string): string
```

## Parameters

| Name | Type |
|---|---|
| `sourceId` | `string` |
| `targetId` | `string` |
| `type` | `string` |

**Returns:** `string`



# getKGStatistics

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 167)

Get Knowledge Graph statistics

## Endpoint

`GET /api/orchestrator/knowledge-graph/stats`

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# hasParser

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parse.processor.ts` (line 57)

Check if a parser is registered

## Signature

```ts
function hasParser(name: string): boolean
```

## Parameters

| Name | Type |
|---|---|
| `name` | `string` |

**Returns:** `boolean`



# HeroDarkCenteredProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/hero/hero-dark-centered.tsx` (line 14)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `subheadlineKey` | `string` |
| `primaryCtaKey` | `string` |
| `primaryCtaUrl` | `string` |
| `secondaryCtaKey` | `string` |
| `secondaryCtaUrl` | `string` |
| `badgeKey` | `string` |
| `floatingStats` | `{ valueKey: string; labelKey: string }[]` |
| `imageSrc` | `string` |
| `imageAlt` | `string` |



# ImageGenerationRequest

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 189)

Image generation request.

## Properties

| Property | Type |
|---|---|
| `prompt` | `string` |
| `width` | `number` |
| `height` | `number` |
| `background` | `'transparent' | 'opaque' | 'auto'` |
| `quality` | `'low' | 'medium' | 'high'` |



# initScreenshotConfigCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/init-screenshot-config.command.ts` (line 87)

Generate screenshot configuration from AppMap

## Signature

```ts
async function initScreenshotConfigCommand(options: {
  target?: string;
  output?: string;
  appUrl?: string;
})
```

## Parameters

| Name | Type |
|---|---|
| `options` | `{
  target?: string;
  output?: string;
  appUrl?: string;
}` |



# InsertCard

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/nested-jsx-elements.tsx` (line 60)

## Diagram

```mermaid
graph TD
    component_InsertCard_422f28bb["InsertCard"]
    class component_InsertCard_422f28bb rootComponent
```

## Relationships

- RENDERS → `Button`
- USES_HOOK → `usePublisher`

## Referenced By

- `Example` (RENDERS)



# Jinja2TemplateParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/backend/jinja2-template.parser.ts` (line 81)

Jinja2 Template Parser

Extracts entities and relationships from Jinja2 template files.

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(config: { rootDir: string })` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# JobStatus

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/hooks/useDocumentationGenerator.ts` (line 9)

Job status from API

## Definition

```ts
'PENDING' | 'RUNNING' | 'COMPLETED' | 'FAILED' | 'CANCELLED'
```



# McpClientOptions

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/mcp/mcp-client.ts` (line 43)

## Definition

```ts
McpStdioOptions | McpHttpOptions
```



# metadata

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/(marketing)/groundedness/page.tsx` (line 6)

Public groundedness benchmark (Track C 0.4) — the category-of-one claim: no docs/AI
vendor in any lane publishes accuracy metrics. Numbers from the live benchmark harness
run against Atloria's own monorepo (methodology + harness committed in-repo).



# OpenAIReviewerService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-11-verification/openai-reviewer.service.ts` (line 1)



# PageType

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 88)

## Definition

```ts
'homepage' | 'landing' | 'product' | 'pricing' | 'contact'
```



# RetryConfig

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/retry-handler.service.ts` (line 6)

Configuration for retry behavior

## Properties

| Property | Type |
|---|---|
| `maxRetries` | `number` |
| `initialDelayMs` | `number` |
| `backoffMultiplier` | `number` |
| `maxDelayMs` | `number` |
| `onRetry` | `(error: Error, attempt: number, delay: number) => void` |



# RetryHandlerService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/services/retry-handler.service.ts` (line 74)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `isRetryableError` | `isRetryableError(error: Error | string | null | undefined, additionalRetryablePatterns: string[])` | `boolean` |
| `calculateBackoffDelay` | `calculateBackoffDelay(attempt: number, config: RetryConfig)` | `number` |
| `retryWithBackoff` | `retryWithBackoff(fn: () => Promise, config: RetryConfig)` | `Promise` |



# SearchDocType

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/technical-docs/search-index.ts` (line 20)

Prebuilt STATIC search index for a published site (F4).

A compact, self-contained JSON blob the reader fetches once and searches
client-side when the live search API (Azure AI Search / Postgres) is
unavailable — so search survives an API outage or a static export.

This module is a PURE transform (no I/O) so it is fully unit-testable: the
materializer fetches the corpus + entity graph and hands them here.

SUPERIOR: for technical-doc sites each page carries an entity-graph
importance `boost` (call-graph in-degree centrality + public-API-surface
weight). The client scorer uses it as a tie-breaker so the important ~5% of
thousands of generated reference pages float to the top. User-manual pages
(no code graph) get boost 0 and rank on text alone.

## Definition

```ts
'user_manual' | 'technical_ref'
```



# SessionsListOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/commands/sessions.command.ts` (line 16)



# StorageMode

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/storage.interface.ts` (line 15)

Storage Provider Interfaces

Defines storage abstraction for dual-mode operation:
- File System Mode: Local directory storage (CLI)
- Cloud Mode: Azure Storage via API (API/Web)

## Definition

```ts
'file-system' | 'cloud'
```



# SWEBENCH_STARTER_IDS

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/swebench-subset.ts` (line 228)

Just the task IDs for quick filtering.

## Definition

```ts
string[]
```



# takeScreenshot

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.controller.ts` (line 194)

Take a single screenshot

POST /api/screenshot

Body:
{
  "url": "https://example.com",
  "projectId": "uuid",
  "viewport": { "width": 1920, "height": 1080 },
  "fullPage": true,
  "waitForSelector": ".main-content"
}

## Endpoint

`POST /screenshot`

## Referenced By

- `ScreenshotController` (MODULE_DECLARES)



# updateUser

**Kind:** Graphql Mutation

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Update user profile

## Relationships

- TYPE_OF → `User`
- TYPE_OF → `UpdateUserInput`

## Referenced By

- `Mutation` (CALLS_API)



# UpdateUserInput

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Input for updating a user

## Referenced By

- `updateUser` (TYPE_OF)



# addSyntaxExtension$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 354)

Adds a syntax extension to the markdown parser.



# AgentTraffic

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/events/agent-analytics.service.ts` (line 15)

Agent-native analytics — "who/what AI is reading your docs".

A read-side aggregation over the `agent_read` interaction_events the public agent
surfaces (llms.txt / llms-full.txt / .md twins / MCP) already record via EventsService.
No new capture. Mirrors ManualsInsightsService.deflection: one org-scoped fetch, JS
aggregation, a zero-filled daily trend. The `refusedQuestions` panel folds in the
`chat_refused` signal — the loop-closer: what agents/users asked that the docs
couldn't answer.

## Properties

| Property | Type |
|---|---|
| `windowDays` | `number` |
| `total` | `number` |
| `byAgent` | `Array<{ agent: string; count: number }>` |
| `bySurface` | `Array<{ surface: string; count: number }>` |
| `topPages` | `Array<{ path: string; count: number }>` |
| `trend` | `Array<{ date: string; count: number }>` |
| `refusedQuestions` | `Array<{ question: string; count: number }>` |



# AiEnrichmentContent

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/projects/[id]/technical-docs/entity/[entityId]/page.tsx` (line 170)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `content` | `string` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_AiEnrichmentContent_36de275e["AiEnrichmentContent"]
    class component_AiEnrichmentContent_36de275e rootComponent
```

## Relationships

- RENDERS → `MarkdownRenderer`

## Referenced By

- `EntityDetailPage` (RENDERS)



# AnalyticsConfig

**Kind:** Interface

**Source:** `atloria-monorepo/templates/site-bootstrap/src/lib/analytics.ts` (line 14)

## Properties

| Property | Type |
|---|---|
| `provider` | `AnalyticsProvider` |
| `trackingId` | `string` |



# ApplyPatchOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/tools/apply-patch.tool.ts` (line 38)

## Properties

| Property | Type |
|---|---|
| `rootDir` | `string` |
| `maxFileSize` | `number` |
| `checkpointManager` | `CheckpointManager` |



# assist

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/technical-docs/technical-docs-mcp.controller.ts` (line 321)

## Endpoint

`POST /technical-docs/:projectId/pages/:slug/assist`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |
| `slug` | query | `string` | ✓ |

## Referenced By

- `TechnicalDocsMcpController` (MODULE_DECLARES)



# AtloriaEndpointList

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/api-explorer/EndpointList.ts` (line 23)

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `endpoints` | `APIEndpoint[]` |
| `selectedId` | `any` |
| `groupBy` | `'controller' | 'tag' | 'method'` |



# AuthService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/auth/auth.service.ts` (line 26)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `register` | `register(registerDto: RegisterDto)` | `Promise` |
| `verifyEmail` | `verifyEmail(token: string)` | `Promise<{ verified: boolean; email: string }>` |
| `resendVerification` | `resendVerification(userId: string)` | `Promise<{ sent: boolean; alreadyVerified?: boolean }>` |
| `forgotPassword` | `forgotPassword(email: string)` | `Promise<{ message: string }>` |
| `resetPassword` | `resetPassword(token: string, newPassword: string)` | `Promise<{ success: boolean }>` |
| `login` | `login(loginDto: LoginDto)` | `Promise` |
| `refresh` | `refresh(refreshToken: string)` | `Promise` |
| `logout` | `logout(userId: string)` | `Promise` |
| `getMe` | `getMe(userId: string)` | `Promise` |
| `validateUser` | `validateUser(email: string, password: string)` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`
- DEPENDS_ON → `redisservice`
- DEPENDS_ON → `jwtservice`
- DEPENDS_ON → `configservice`
- DEPENDS_ON → `emailservice`



# BoardFiltersState

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Boards/BoardFilters.tsx` (line 22)

## Properties

| Property | Type |
|---|---|
| `priorities` | `string[]` |
| `categories` | `string[]` |
| `assigneeIds` | `string[]` |
| `audiences` | `string[]` |
| `hasReporterEmail` | `'any' | 'yes' | 'no'` |



# BoardsController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/boards/boards.controller.ts` (line 23)

## Relationships

- MODULE_DECLARES → `list`
- MODULE_DECLARES → `create`
- MODULE_DECLARES → `getOne`
- MODULE_DECLARES → `update`
- MODULE_DECLARES → `remove`
- MODULE_DECLARES → `restore`
- MODULE_DECLARES → `addColumn`
- MODULE_DECLARES → `reorderColumns`
- MODULE_DECLARES → `updateColumn`
- MODULE_DECLARES → `deleteColumn`
- MODULE_DECLARES → `listCards`
- MODULE_DECLARES → `addCards`
- MODULE_DECLARES → `moveCard`
- MODULE_DECLARES → `removeCard`
- MODULE_DECLARES → `getBoardsForIssue`
- DEPENDS_ON → `boardsservice`



# buildChunkRelationshipGraph

**Kind:** Function

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-02-chunking/chunk-relationship-graph.ts` (line 14)

Build a relationship graph between chunks

## Signature

```ts
function buildChunkRelationshipGraph(chunks: Chunk[], allEntities: Entity[]): ChunkRelationshipGraph
```

## Parameters

| Name | Type |
|---|---|
| `chunks` | `Chunk[]` |
| `allEntities` | `Entity[]` |

**Returns:** `ChunkRelationshipGraph`



# buildReviewNudge

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/self-review.ts` (line 78)

Build a compact review nudge (for injection into instructions).
Shorter than the full review prompt — just highlights what to check.

## Signature

```ts
function buildReviewNudge(editedFiles: EditedFile[]): string
```

## Parameters

| Name | Type |
|---|---|
| `editedFiles` | `EditedFile[]` |

**Returns:** `string`



# buildStrategyQuestionPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/strategy.prompts.ts` (line 94)

## Signature

```ts
function buildStrategyQuestionPrompt(docSummary: string, screenshotCount: number): string
```

## Parameters

| Name | Type |
|---|---|
| `docSummary` | `string` |
| `screenshotCount` | `number` |

**Returns:** `string`



# buildSystemOverview

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/techdocs/system-overview.ts` (line 45)

## Signature

```ts
function buildSystemOverview(input: SystemOverviewInput): string
```

## Parameters

| Name | Type |
|---|---|
| `input` | `SystemOverviewInput` |

**Returns:** `string`



# BulkUpdateIssuesDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/issues/dto/update-issue.dto.ts` (line 28)

## Properties

| Property | Type |
|---|---|
| `issueIds` | `string[]` |
| `status` | `IssueStatus` |
| `priority` | `IssuePriority` |
| `assigneeId` | `string | null` |



# CaptureModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/capture/capture.module.ts` (line 11)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_IMPORTS → `authmodule`
- MODULE_IMPORTS → `draftdocumentmodule`
- MODULE_DECLARES → `capturecontroller`
- MODULE_DECLARES → `publiccapturecontroller`
- MODULE_PROVIDES → `captureservice`
- MODULE_PROVIDES → `flowdraftstitcherservice`
- MODULE_EXPORTS → `captureservice`



# CaptureProgressCallback

**Kind:** Type

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/screenshot-capturer.service.ts` (line 34)

## Definition

```ts
(progress: CaptureProgress) => void
```



# CheckpointManager

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/context/checkpoint-manager.ts` (line 43)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `createWithGit` | `createWithGit(rootDir: string, config: Omit & {
      sessionId?: string;
      staleAgeDays?: number;
    })` | `CheckpointManager` |
| `snapshot` | `snapshot(relPath: string, label: string)` | `boolean` |
| `rollback` | `rollback(relPath: string, index: number)` | `string | null` |
| `getSnapshots` | `getSnapshots(relPath: string)` | `readonly Snapshot[]` |
| `getSnapshotCount` | `getSnapshotCount(relPath: string)` | `number` |
| `getTotalCount` | `getTotalCount()` | `number` |
| `getTrackedFiles` | `getTrackedFiles()` | `string[]` |
| `clear` | `clear()` | `void` |
| `getBackend` | `getBackend()` | `CheckpointBackend` |



# clearAllPendingUpdates

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/hooks/useOfflineSync.ts` (line 379)

Clear all pending updates across all documents
Use with caution - this will discard all offline changes

## Signature

```ts
function clearAllPendingUpdates(): void
```

**Returns:** `void`



# CodeEntity

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/workflow-signals.interface.ts` (line 4)

Simplified entity representation for AI analysis

## Properties

| Property | Type |
|---|---|
| `id` | `string` |
| `type` | `string` |
| `name` | `string` |
| `filePath` | `string` |
| `startLine` | `number` |
| `endLine` | `number` |
| `metadata` | `Record` |



# COMPETITOR_DOCS

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/web-search/data/competitor-docs-index.ts` (line 18)

## Definition

```ts
CompetitorDoc[]
```



# createTestCollaborationSession

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 214)

## Signature

```ts
function createTestCollaborationSession(documentId: string, userCount): TestCollaborationSession
```

## Parameters

| Name | Type |
|---|---|
| `documentId` | `string` |
| `userCount` | `any` |

**Returns:** `TestCollaborationSession`



# EntityPath

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/relationship.interface.ts` (line 291)

Graph path between entities

## Properties

| Property | Type |
|---|---|
| `startId` | `string` |
| `endId` | `string` |
| `relationships` | `Relationship[]` |
| `entityIds` | `string[]` |
| `length` | `number` |



# extractClientIp

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/analytics/utils/tracking-utils.ts` (line 128)

Extract the client IP from a NestJS/Express request. Checks headers set
by reverse proxies and CDNs in this order:
  1. CF-Connecting-IP (Cloudflare)
  2. X-Real-IP (nginx default)
  3. X-Forwarded-For (standard proxy header — first IP in the chain)
  4. req.ip / connection.remoteAddress (direct connection fallback)

Returns `null` if nothing usable is found (should be rare in production).

## Signature

```ts
function extractClientIp(req: {
  headers?: Record;
  ip?: string;
  connection?: { remoteAddress?: string };
  socket?: { remoteAddress?: string };
}): string | null
```

## Parameters

| Name | Type |
|---|---|
| `req` | `{
  headers?: Record;
  ip?: string;
  connection?: { remoteAddress?: string };
  socket?: { remoteAddress?: string };
}` |

**Returns:** `string | null`



# FaqTwoColumn

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/faq/faq-two-column.tsx` (line 14)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `headlineKey` | `string` | ✓ | - |
| `descriptionKey` | `string` | - | - |
| `items` | `unknown[]` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_FaqTwoColumn_26bcfedd["FaqTwoColumn"]
    class component_FaqTwoColumn_26bcfedd rootComponent
```

## Relationships

- RENDERS → `motion-div`
- RENDERS → `motion-h2`
- RENDERS → `motion-p`
- RENDERS → `AccordionItem`
- USES_HOOK → `useTranslation`



# FlowLocalesRequestDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 211)

SUPERIOR: replay the WHOLE recipe once per locale in one call, emitting a
localized screenshot set per locale (blob-namespaced by locale).

**Extends:** `FlowReplayRequestDto`

## Properties

| Property | Type |
|---|---|
| `locales` | `string[]` |
| `viewport` | `ViewportDto` |



# generateLandingPage

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/generate.ts` (line 85)

## Signature

```ts
async function generateLandingPage(outputDir: string, sections: SectionSelection[], resolved: ManifestSection[], seo: SiteAssemblyConfig['seo']): Promise
```

## Parameters

| Name | Type |
|---|---|
| `outputDir` | `string` |
| `sections` | `SectionSelection[]` |
| `resolved` | `ManifestSection[]` |
| `seo` | `SiteAssemblyConfig['seo']` |

**Returns:** `Promise`



# getQueueMetrics

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/orchestrator/orchestrator.controller.ts` (line 152)

Get queue metrics

## Endpoint

`GET /api/orchestrator/queue/metrics`

## Referenced By

- `OrchestratorController` (MODULE_DECLARES)



# getReactLifecycleMethods

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 523)

Get lifecycle methods for React class components

## Signature

```ts
function getReactLifecycleMethods(): string[]
```

**Returns:** `string[]`



# HeroGradientSplitProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/hero/hero-gradient-split.tsx` (line 13)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `subheadlineKey` | `string` |
| `primaryCtaKey` | `string` |
| `primaryCtaUrl` | `string` |
| `secondaryCtaKey` | `string` |
| `secondaryCtaUrl` | `string` |
| `imageSrc` | `string` |
| `imageAlt` | `string` |
| `badges` | `{ textKey: string; icon?: LucideIcon }[]` |
| `className` | `string` |



# ImageGenerationResponse

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/providers/azure-image.provider.ts` (line 24)

## Properties

| Property | Type |
|---|---|
| `b64Data` | `string` |
| `revisedPrompt` | `string` |



# initializeAllParsers

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/queue/processors/parser-registry.ts` (line 93)

Initialize and register all parsers from parser-core

## Signature

```ts
async function initializeAllParsers(rootDir): Promise
```

## Parameters

| Name | Type |
|---|---|
| `rootDir` | `any` |

**Returns:** `Promise`



# InsertComplexMarkdownButton

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/insert-markdown.tsx` (line 141)

## Diagram

```mermaid
graph TD
    component_InsertComplexMarkdownButton_46eea884["InsertComplexMarkdownButton"]
    class component_InsertComplexMarkdownButton_46eea884 rootComponent
```

## Relationships

- USES_HOOK → `usePublisher`

## Referenced By

- `InsertMarkdownWithTableAndList` (RENDERS)



# JsonConfigParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/config-docs/json-config.parser.ts` (line 58)

JSON Config Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(_config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# loginCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/login.command.ts` (line 144)

Login command handler

## Signature

```ts
async function loginCommand(options: LoginOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `options` | `LoginOptions` |

**Returns:** `Promise`



# McpServerConfig

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/mcp/mcp-manager.ts` (line 45)

## Definition

```ts
McpStdioServerConfig | McpHttpServerConfig
```



# MenuStyle

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/p/[slugId]/components/BrandingContext.tsx` (line 11)

Project branding fetched from the public project endpoint.
All fields nullable — frontend falls back to defaults (Atloria cyan +
project name) when any field is missing.

## Definition

```ts
'minimal' | 'classic' | 'sidebar' | 'developer'
```



# metadata

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/(marketing)/manuals-benchmark/page.tsx` (line 8)

Public manuals-quality benchmark — the second category-of-one claim (after /groundedness):
no user-manual / help-center vendor publishes a documentation-quality score. Numbers from
the atlorix style-benchmark harness (rubrics per style + structural scorer + 3-judge LLM
median), run against Atloria's own generated doc-sets. Scores are easy to update here as
saas/corporate clear the gate.



# ParserCoreBridge

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/services/parser-core-bridge.service.ts` (line 1)



# PricingLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 15)

## Definition

```ts
'columns' | 'comparison-table' | 'slider'
```



# ScreenshotMetadata

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot-metadata.service.ts` (line 15)

## Properties

| Property | Type |
|---|---|
| `projectId` | `string` |
| `url` | `string` |
| `viewport` | `{ width: number; height: number }` |
| `stateType` | `'default' | 'hover' | 'modal' | 'error' | 'success' | 'loading'` |
| `flowStepId` | `string` |
| `browser` | `'chromium' | 'firefox' | 'webkit'` |
| `fullPage` | `boolean` |
| `contentHash` | `string` |



# ScreenshotMetadataService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot-metadata.service.ts` (line 36)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `calculateContentHash` | `calculateContentHash(buffer: Buffer)` | `string` |
| `findExisting` | `findExisting(metadata: ScreenshotMetadata)` | `Promise` |
| `shouldRegenerate` | `shouldRegenerate(existing: ExistingScreenshot, newContentHash: string)` | `boolean` |
| `save` | `save(buffer: Buffer, metadata: ScreenshotMetadata, assetUrl: string, organizationId: string, capturedBy: string, jobId: string)` | `Promise<{ id: string; version: number }>` |
| `getHistory` | `getHistory(projectId: string, flowStepId: string)` | `Promise` |
| `markAsBaseline` | `markAsBaseline(screenshotId: string)` | `Promise` |
| `getBaseline` | `getBaseline(projectId: string, viewport: string, stateType: string, flowStepId: string)` | `Promise` |

## Relationships

- DEPENDS_ON → `prismaservice`



# SessionsShowOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/commands/sessions.command.ts` (line 17)

## Properties

| Property | Type |
|---|---|
| `id` | `string` |



# StalenessLevel

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/doc-version/screenshot-staleness.service.ts` (line 3)

## Definition

```ts
'fresh' | 'valid' | 'warning' | 'stale' | 'critical' | 'missing'
```



# SWEBENCH_STARTER_SUBSET

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/swebench-subset.ts` (line 36)

## Definition

```ts
SubsetEntry[]
```



# takeSmartAuthenticatedScreenshot

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.controller.ts` (line 280)

Smart authenticated screenshot - AI auto-detects login form selectors

POST /api/screenshot/smart-auth

Body:
{
  "url": "https://example.com/dashboard",
  "projectId": "uuid",
  "organizationId": "uuid",
  "capturedBy": "uuid",
  "auth": {
    "loginUrl": "https://example.com/login",
    "username": "user@example.com",
    "password": "password"
  },
  "viewport": { "width": 1920, "height": 1080 },
  "fullPage": true
}

The AI will automatically:
1. Navigate to the login page
2. Analyze the HTML to find username, password, and submit selectors
3. Fill in credentials and submit
4. Navigate to the target URL and take a screenshot

## Endpoint

`POST /screenshot/smart-auth`

## Referenced By

- `ScreenshotController` (MODULE_DECLARES)



# TemplateElement

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/template-analysis.interface.ts` (line 206)

Generic template element (union type)

## Definition

```ts
| ButtonElement
  | LinkElement
  | FormElement
  | ComponentUsage
  | ModalTrigger
```



# UserConnection

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

Paginated user list

## Relationships

- TYPE_OF → `User`

## Referenced By

- `users` (TYPE_OF)



# addToMarkdownExtension$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 372)

Adds a markdown to string extension to be used when exporting markdown from the Lexical tree.



# AgentTurnDoneEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 130)

## Properties

| Property | Type |
|---|---|
| `turnNumber` | `number` |
| `usage` | `{
    inputTokens: number;
    outputTokens: number;
    totalTokens: number;
  }` |



# AiEnrichmentContent

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/p/[slugId]/technical/entity/[entityId]/page.tsx` (line 100)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `content` | `string` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_AiEnrichmentContent_71334741["AiEnrichmentContent"]
    class component_AiEnrichmentContent_71334741 rootComponent
```

## Referenced By

- `PublicEntityDetailPage` (RENDERS)



# AnalyzerProgressCallback

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-04-analysis/analyzer.service.ts` (line 31)



# assistApply

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/api/src/technical-docs/technical-docs-mcp.controller.ts` (line 339)

## Endpoint

`POST /technical-docs/:projectId/pages/:slug/assist/apply`

| Parameter | In | Type | Required |
|---|---|---|---|
| `projectId` | query | `string` | ✓ |
| `slug` | query | `string` | ✓ |

## Referenced By

- `TechnicalDocsMcpController` (MODULE_DECLARES)



# AtloriaEnvironmentSelector

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/api-explorer/EnvironmentSelector.ts` (line 14)

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `environments` | `Environment[]` |
| `selected` | `any` |



# AttemptResult

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/benchmark/retry-runner.ts` (line 40)

## Properties

| Property | Type |
|---|---|
| `attemptIndex` | `number` |
| `score` | `number` |



# AzureAISearchService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/web-search/services/azure-ai-search.service.ts` (line 23)

Azure AI Search Service
Queries the indexed competitor documentation

## Methods

| Method | Signature | Returns |
|---|---|---|
| `search` | `search(query: SearchQuery)` | `Promise` |
| `searchByCategory` | `searchByCategory(category: string, limit: unknown)` | `Promise` |
| `getDocumentByUrl` | `getDocumentByUrl(url: string)` | `Promise` |
| `healthCheck` | `healthCheck()` | `Promise` |



# BrandingController

**Kind:** Controller

**Source:** `atloria-monorepo/apps/api/src/branding/branding.controller.ts` (line 8)

## Relationships

- MODULE_DECLARES → `getBranding`
- MODULE_DECLARES → `updateBranding`
- DEPENDS_ON → `brandingservice`



# Breadcrumb

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/components/Layout/Breadcrumbs.tsx` (line 11)

## Properties

| Property | Type |
|---|---|
| `label` | `string` |
| `href` | `string` |
| `current` | `boolean` |



# buildExtractionPrompt

**Kind:** Function

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/services/business-context-extractor.ts` (line 27)

Build the AI extraction prompt from combined source text.
The caller reads sources, concatenates text, and passes it here.

## Signature

```ts
function buildExtractionPrompt(sourceText: string, productName: string): string
```

## Parameters

| Name | Type |
|---|---|
| `sourceText` | `string` |
| `productName` | `string` |

**Returns:** `string`



# buildReviewPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/self-review.ts` (line 36)

Build a review prompt for a set of file diffs.
Can be sent to a sub-agent or injected as a nudge.

## Signature

```ts
function buildReviewPrompt(editedFiles: EditedFile[]): string
```

## Parameters

| Name | Type |
|---|---|
| `editedFiles` | `EditedFile[]` |

**Returns:** `string`



# buildStrategySystemPrompt

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/prompts/strategy.prompts.ts` (line 10)

## Signature

```ts
function buildStrategySystemPrompt(config: GenerationConfig): string
```

## Parameters

| Name | Type |
|---|---|
| `config` | `GenerationConfig` |

**Returns:** `string`



# BulkUpdateVisibilityDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/api/src/document/dto/bulk-operations.dto.ts` (line 46)

Bulk update document visibility

## Properties

| Property | Type |
|---|---|
| `documentIds` | `string[]` |
| `isPublic` | `boolean` |



# calculateCoverageReport

**Kind:** Function

**Source:** `atloria-monorepo/libs/parser-core/src/utils/coverage-calculator.ts` (line 236)

Calculate overall coverage report

## Signature

```ts
function calculateCoverageReport(entities: Entity[], screenshots: EnhancedScreenshotMetadata[], interactions: UIInteraction[]): CoverageReport
```

## Parameters

| Name | Type |
|---|---|
| `entities` | `Entity[]` |
| `screenshots` | `EnhancedScreenshotMetadata[]` |
| `interactions` | `UIInteraction[]` |

**Returns:** `CoverageReport`



# CaptureType

**Kind:** Type

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/screenshot-spec.types.ts` (line 19)

What kind of UI state to capture

## Definition

```ts
| 'page'
  | 'modal'
  | 'tab'
  | 'form-empty'
  | 'form-validation'
  | 'form-filled'
  | 'toast'
  | 'state-guided'
  | 'workflow-sequence'
```



# Chunker

**Kind:** Class

**Source:** `atloria-monorepo/libs/agent-core/src/semantic/chunker.ts` (line 56)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `chunkFile` | `chunkFile(filePath: string, rootDir: string)` | `CodeChunk[]` |
| `chunkDirectory` | `chunkDirectory(rootDir: string, config: {
      maxFiles?: number;
      includeExtensions?: string[];
      excludeDirs?: string[];
      targetChunkTokens?: number;
    })` | `CodeChunk[]` |
| `extractImports` | `extractImports(content: string)` | `string` |



# clearColorCache

**Kind:** Function

**Source:** `atloria-monorepo/apps/web/src/lib/user-colors.ts` (line 136)

Clear the color cache (useful for testing or cleanup)

## Signature

```ts
function clearColorCache(): void
```

**Returns:** `void`



# CodeRelationship

**Kind:** Interface

**Source:** `atloria-monorepo/libs/parser-core/src/interfaces/workflow-signals.interface.ts` (line 17)

Simplified relationship representation for AI analysis

## Properties

| Property | Type |
|---|---|
| `sourceId` | `string` |
| `targetId` | `string` |
| `type` | `string` |
| `metadata` | `Record` |



# CollaborationModule

**Kind:** Module

**Source:** `atloria-monorepo/apps/api/src/collaboration/collaboration.module.ts` (line 37)

## Relationships

- MODULE_IMPORTS → `databasemodule`
- MODULE_PROVIDES → `collaborationservice`
- MODULE_PROVIDES → `collaborationgateway`
- MODULE_PROVIDES → `documentpersistenceservice`
- MODULE_PROVIDES → `collaborationmetricsservice`
- MODULE_EXPORTS → `collaborationservice`
- MODULE_EXPORTS → `documentpersistenceservice`
- MODULE_EXPORTS → `collaborationmetricsservice`



# createTestComment

**Kind:** Function

**Source:** `atloria-monorepo/apps/web-e2e/src/utils/data-factories.ts` (line 105)

## Signature

```ts
function createTestComment(overrides: Partial): TestCommentData
```

## Parameters

| Name | Type |
|---|---|
| `overrides` | `Partial` |

**Returns:** `TestCommentData`



# CurrentUser

**Kind:** Constant

**Source:** `atloria-monorepo/apps/api/src/auth/decorators/current-user.decorator.ts` (line 13)



# EnvVariableEntity

**Kind:** Interface

**Source:** `atloria-monorepo/apps/parser-orchestrator/src/interfaces/entity.interface.ts` (line 920)

Environment variable entity

## Properties

| Property | Type |
|---|---|
| `type` | `EntityType.ENV_VARIABLE` |
| `variableName` | `string` |
| `exampleValue` | `string` |
| `isSensitive` | `boolean` |
| `isRequired` | `boolean` |
| `category` | `string` |



# FeatureIcon

**Kind:** Component

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/_shared/feature-icon.tsx` (line 17)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `icon` | `LucideIcon` | ✓ | - |
| `size` | `number` | - | 24 |
| `className` | `string` | - | - |

## Diagram

```mermaid
graph TD
    component_FeatureIcon_500ff6b3["FeatureIcon"]
    class component_FeatureIcon_500ff6b3 rootComponent
```

## Relationships

- RENDERS → `Icon`



# fillTemplate

**Kind:** Function

**Source:** `atloria-monorepo/apps/api/src/ai/prompts/prompt-templates.ts` (line 125)

Replace template variables in a prompt

## Signature

```ts
function fillTemplate(template: string, variables: Record): string
```

## Parameters

| Name | Type |
|---|---|
| `template` | `string` |
| `variables` | `Record` |

**Returns:** `string`



# FlowRedactBoxDto

**Kind:** Class

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/dto/flow-replay.dto.ts` (line 57)

A region (PERCENT 0-100 of the natural image) to BLACK OUT before upload. The
worker burns a filled rectangle into the screenshot pixels — destructive by
design, so a redacted value can never be recovered from the stored asset.

## Properties

| Property | Type |
|---|---|
| `x` | `number` |
| `y` | `number` |
| `w` | `number` |
| `h` | `number` |



# generateLocales

**Kind:** Function

**Source:** `atloria-monorepo/libs/site-gen-core/src/assembler/generate.ts` (line 327)

## Signature

```ts
async function generateLocales(outputDir: string, locales: LocaleConfig[]): Promise
```

## Parameters

| Name | Type |
|---|---|
| `outputDir` | `string` |
| `locales` | `LocaleConfig[]` |

**Returns:** `Promise`



# getUserById

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/openapi.yaml` (line 1)

Get user by ID

## Endpoint

`GET /users/{id}`

| Parameter | In | Type | Required |
|---|---|---|---|
| `id` | query | `string` | ✓ |

## Relationships

- REFERENCES → `UserWithProfile`
- REFERENCES → `Error`

## Referenced By

- `User Management API` (IMPLEMENTS_API)



# hashString

**Kind:** Function

**Source:** `atloria-monorepo/apps/frontend-parser/src/utils/ast-helpers.ts` (line 449)

Simple hash function for generating unique IDs

## Signature

```ts
function hashString(str: string): string
```

## Parameters

| Name | Type |
|---|---|
| `str` | `string` |

**Returns:** `string`



# HeroMinimalCenteredProps

**Kind:** Interface

**Source:** `atloria-monorepo/libs/site-gen-core/src/component-library/sections/hero/hero-minimal-centered.tsx` (line 14)

## Properties

| Property | Type |
|---|---|
| `headlineKey` | `string` |
| `subheadlineKey` | `string` |
| `primaryCtaKey` | `string` |
| `primaryCtaUrl` | `string` |
| `secondaryCtaKey` | `string` |
| `secondaryCtaUrl` | `string` |
| `badgeKey` | `string` |
| `badgeIcon` | `LucideIcon` |
| `dividerIcons` | `LucideIcon[]` |
| `imageSrc` | `string` |
| `imageAlt` | `string` |



# ImageMetadata

**Kind:** Interface

**Source:** `atloria-monorepo/libs/pme-core/src/guardrails/image-quality.guardrail.ts` (line 28)

## Properties

| Property | Type |
|---|---|
| `width` | `number` |
| `height` | `number` |
| `format` | `string` |
| `sizeBytes` | `number` |
| `hasAlpha` | `boolean` |
| `url` | `string` |



# InsertCustomImage

**Kind:** Component

**Source:** `atloria-monorepo/packages/editor/src/examples/images.tsx` (line 99)

## Diagram

```mermaid
graph TD
    component_InsertCustomImage_2db81f54["InsertCustomImage"]
    class component_InsertCustomImage_2db81f54 rootComponent
```

## Relationships

- USES_HOOK → `usePublisher`

## Referenced By

- `InsertImageSignal` (RENDERS)



# MarkdownParser

**Kind:** Class

**Source:** `atloria-monorepo/libs/parser-core/src/parsers/config-docs/markdown.parser.ts` (line 64)

Markdown Parser implementation

**Implements:** `IParser`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `initialize` | `initialize(_config: ParserConfig)` | `Promise` |
| `canParse` | `canParse(filePath: string)` | `boolean` |
| `parseFile` | `parseFile(filePath: string, content: string)` | `Promise` |
| `parseFiles` | `parseFiles(files: ParseFileInput[])` | `Promise` |
| `destroy` | `destroy()` | `Promise` |

## Properties

| Property | Type |
|---|---|
| `name` | `any` |
| `version` | `any` |
| `supportedPatterns` | `any` |



# mcpAddCommand

**Kind:** Function

**Source:** `atloria-monorepo/apps/cli/src/commands/mcp.command.ts` (line 53)

## Signature

```ts
async function mcpAddCommand(name: string, options: McpAddOptions): Promise
```

## Parameters

| Name | Type |
|---|---|
| `name` | `string` |
| `options` | `McpAddOptions` |

**Returns:** `Promise`



# measureExecutionTime

**Kind:** Function

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/integration/helpers/test-utils.ts` (line 332)

Measure execution time

## Signature

```ts
async function measureExecutionTime(fn: () => Promise): Promise<{ result: T; duration: number }>
```

## Parameters

| Name | Type |
|---|---|
| `fn` | `() => Promise` |

**Returns:** `Promise<{ result: T; duration: number }>`



# MemoryPersister

**Kind:** Type

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/session-memory.ts` (line 60)

Callback that receives extracted memories for persistence.
Domain layers implement this to write memories to disk, database, etc.

## Definition

```ts
(memories: SessionMemory[]) => void | Promise
```



# metadata

**Kind:** Constant

**Source:** `atloria-monorepo/apps/web/src/app/(marketing)/pricing/page.tsx` (line 7)

Transparent pricing (Phase 1.4). Deliberate contrast with sales-led competitors
(kapa.ai publishes no pricing; median negotiated deals ~$19k/yr): visible credit
economics, self-serve. Prices map to the live billing constants (1 credit unit set):
technical generation 200cr, RAG index 100cr, enrichment 100cr, chat ask 5cr, assist 10cr.



# Mutation

**Kind:** Graphql Type

**Source:** `atloria-monorepo/apps/parser-orchestrator/test/fixtures/sample-projects/fullstack-nextjs-nestjs/backend/api/schema.graphql` (line 1)

## Relationships

- CALLS_API → `createUser`
- CALLS_API → `updateUser`
- CALLS_API → `deleteUser`
- CALLS_API → `createPost`
- CALLS_API → `updatePost`
- CALLS_API → `deletePost`
- CALLS_API → `likePost`
- CALLS_API → `unlikePost`
- CALLS_API → `followUser`
- CALLS_API → `unfollowUser`
- CALLS_API → `addComment`
- CALLS_API → `login`
- CALLS_API → `refreshToken`



# Origin

**Kind:** Type

**Source:** `atloria-monorepo/apps/web/src/app/app/desk/components/deskTypes.ts` (line 199)

## Definition

```ts
'chat escalation' | 'reader report' | 'email'
```



# ParserService

**Kind:** Service

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-01-parse/parser.service.ts` (line 1)



# ProblemLayout

**Kind:** Type

**Source:** `atloria-monorepo/libs/pme-core/src/types/index.ts` (line 16)

## Definition

```ts
'centered' | 'split-visual'
```



# ScreenshotOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/playwright/playwright.service.ts` (line 6)

## Properties

| Property | Type |
|---|---|
| `url` | `string` |
| `browserType` | `BrowserType` |
| `viewport` | `{
    width: number;
    height: number;
  }` |
| `fullPage` | `boolean` |
| `waitForSelector` | `string` |
| `waitForTimeout` | `number` |
| `authentication` | `{
    username: string;
    password: string;
  }` |



# ScreenshotService

**Kind:** Service

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/screenshot.service.ts` (line 78)

Screenshot orchestration service

Coordinates Playwright and Storage services to:
1. Take screenshots
2. Upload to Azure Blob Storage
3. Return public URLs

## Methods

| Method | Signature | Returns |
|---|---|---|
| `takeAndUpload` | `takeAndUpload(request: TakeScreenshotRequest)` | `Promise` |
| `takeResponsiveScreenshots` | `takeResponsiveScreenshots(url: string, projectId: string, organizationId: string, capturedBy: string)` | `Promise` |
| `takeAuthenticatedScreenshot` | `takeAuthenticatedScreenshot(request: TakeAuthenticatedScreenshotRequest)` | `Promise` |
| `takeSmartAuthenticatedScreenshot` | `takeSmartAuthenticatedScreenshot(_request: TakeSmartAuthenticatedScreenshotRequest)` | `Promise` |

## Relationships

- DEPENDS_ON → `playwrightservice`
- DEPENDS_ON → `storageservice`
- DEPENDS_ON → `screenshotmetadataservice`



# StdioTransportOptions

**Kind:** Interface

**Source:** `atloria-monorepo/apps/cli/src/stdio-transport.ts` (line 22)

## Properties

| Property | Type |
|---|---|
| `formatTodo` | `(items: ReadonlyArray, stats: TodoStats) => string` |



# TOOL_PROFILES

**Kind:** Constant

**Source:** `atloria-monorepo/libs/agent-core/src/tools/tool-profiles.ts` (line 24)

Tool name sets per mode. `null` means all tools (full mode).

Note: tool_search is always included — it's the discovery mechanism
for deferred tools. journal and note are always included for working memory.

## Definition

```ts
Record
```



# TypeDefinitionMap

**Kind:** Type

**Source:** `atloria-monorepo/libs/parser-core/src/utils/ast-helpers.ts` (line 51)

Type definition map for resolving type references

## Definition

```ts
Map
```



# UpdateScheduledReportDto

**Kind:** Type

**Source:** `atloria-monorepo/apps/api/src/analytics/export/scheduled-reports.service.ts` (line 22)

## Definition

```ts
Partial & {
  enabled?: boolean;
}
```



# validateSelectors

**Kind:** API Endpoint

**Source:** `atloria-monorepo/apps/screenshot-worker/src/app/screenshot/batch-screenshot.controller.ts` (line 351)

## Endpoint

`POST /screenshot/validate-selectors`

## Referenced By

- `BatchScreenshotController` (MODULE_DECLARES)



# addTopAreaChild$

**Kind:** Constant

**Source:** `atloria-monorepo/packages/editor/src/plugins/core/index.ts` (line 746)

Lets you add React components on top of the editor (like the toolbar).



# AgentVerboseEvent

**Kind:** Interface

**Source:** `atloria-monorepo/apps/api/src/agent/agent.types.ts` (line 144)

## Properties

| Property | Type |
|---|---|
| `category` | `string` |
| `message` | `string` |
| `data` | `Record` |
| `timestamp` | `number` |



# AnalyticsContent

**Kind:** Component

**Source:** `atloria-monorepo/apps/web/src/app/app/projects/[id]/analytics/page.tsx` (line 10)

## Props

| Name | Type | Required | Default |
|---|---|---|---|
| `projectId` | `string` | ✓ | - |

## Diagram

```mermaid
graph TD
    component_AnalyticsContent_32571187["AnalyticsContent"]
    class component_AnalyticsContent_32571187 rootComponent
```

## Relationships

- RENDERS → `DeflectionCockpit`
- RENDERS → `TicketContentOpportunities`
- RENDERS → `AgentTrafficCockpit`
- USES_HOOK → `useSession`
- USES_HOOK → `useState`
- USES_HOOK → `useAPIClient`
- USES_HOOK → `useEffect`

## Referenced By

- `AnalyticsPage` (RENDERS)



# AngularDetectionConfig

**Kind:** Interface

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/types/patterns/angular.patterns.ts` (line 235)

## Properties

| Property | Type |
|---|---|
| `name` | `'angular'` |
| `filePatterns` | `string[]` |
| `identifiers` | `RegExp[]` |
| `configFiles` | `string[]` |



# AtloriaInput

**Kind:** Class

**Source:** `atloria-monorepo/packages/ui-core/src/components/input/Input.ts` (line 22)

A fully accessible input component with validation states

**Extends:** `LitElement`

## Methods

| Method | Signature | Returns |
|---|---|---|
| `focus` | `focus()` | `void` |
| `blur` | `blur()` | `void` |
| `select` | `select()` | `void` |
| `render` | `render()` | `void` |

## Properties

| Property | Type |
|---|---|
| `styles` | `any` |
| `type` | `InputType` |
| `name` | `any` |
| `value` | `any` |
| `label` | `any` |
| `placeholder` | `any` |
| `helperText` | `any` |
| `errorMessage` | `any` |
| `successMessage` | `any` |
| `required` | `any` |
| `disabled` | `any` |
| `readonly` | `any` |
| `minlength` | `number` |
| `maxlength` | `number` |
| `pattern` | `string` |
| `autocomplete` | `string` |



# AutonomousInstructionsOptions

**Kind:** Interface

**Source:** `atloria-monorepo/libs/agent-core/src/autonomous/autonomous-loop.ts` (line 60)

## Properties

| Property | Type |
|---|---|
| `goal` | `string` |
| `workspaceDir` | `string` |
| `qualityGates` | `QualityGate[]` |
| `context` | `string` |
| `discoveryHints` | `string[]` |



# AzureBlobService

**Kind:** Service

**Source:** `atloria-monorepo/apps/api/src/assets/azure-blob.service.ts` (line 8)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `upload` | `upload(options: {
    buffer: Buffer;
    filename: string;
    mimeType: string;
    organizationId: string;
  })` | `Promise<{ url: string; cdnUrl: string }>` |
| `delete` | `delete(blobName: string)` | `Promise` |
| `getBlobUrl` | `getBlobUrl(blobName: string)` | `string` |
| `generateSasUrl` | `generateSasUrl(blobName: string, _expiresInMinutes: unknown)` | `Promise` |

## Relationships

- DEPENDS_ON → `configservice`



# BreadcrumbItem

**Kind:** Interface

**Source:** `atloria-monorepo/apps/web/src/app/p/[slugId]/components/Breadcrumbs.tsx` (line 8)

## Properties

| Property | Type |
|---|---|
| `label` | `string` |
| `href` | `string` |



# buildPAMSIntelligence

**Kind:** Function

**Source:** `atloria-monorepo/packages/doc-automation/src/v2/stages/stage-12-screenshots/agent-screenshot-mapper.ts` (line 267)

Pre-built intelligence for PAMS — in production this would be generated
by the agent reading the source code. For the POC, we extracted it manually
from the routing analysis.

## Signature

```ts
function buildPAMSIntelligence(): SourceCodeIntelligence
```

**Returns:** `SourceCodeIntelligence`



# buildSandboxArgs

**Kind:** Function

**Source:** `atloria-monorepo/libs/agent-core/src/tools/bash-sandbox.ts` (line 84)

Build the argument array for spawning a command under sandbox-exec.

## Signature

```ts
function buildSandboxArgs(command: string, rootDir: string): string[]
```

## Parameters

| Name | Type |
|---|---|
| `command` | `string` |
| `rootDir` | `string` |

**Returns:** `string[]`



# buildThemeCss

**Kind:** Function

**Source:** `atloria-monorepo/libs/pme-core/src/tools/theme.ts` (line 138)

Build a