# Block-by-Block Guide

This reference guide provides a detailed breakdown of each block used in the **Compliance Copilot – MiCA Reporting** template. The documentation is organized by **workflow phase** and presented in table format to help enterprise developers and solution engineers quickly understand the purpose, type, and role of each block.

***

### 🔍 Phase 1: Trigger & Metadata Preparation

| **Block Name**               | **Block Type**      | **Description**                                                     | **Purpose**                                                                        |
| ---------------------------- | ------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| Start                        | System (default)    | Kicks off the workflow                                              | Initiates the application either via manual user click or incoming API call        |
| Extract Submission Documents | Doc Extractor       | Parses uploaded compliance documents to extract structured metadata | Converts unstructured files like PDFs into machine-readable inputs                 |
| Normalize Parameters         | Parameter Extractor | Converts extracted values into a normalized format                  | Ensures naming conventions, formats, and keys are consistent for downstream blocks |
| Assign Jurisdiction Code     | Variable Assigner   | Maps raw jurisdiction names to internal codes                       | Standardizes identifiers for rule-based logic                                      |

***

### ♻️ Phase 2: Disclosure Section Validator Loop

| **Block Name**                       | **Block Type**      | **Description**                                                               | **Purpose**                                                                            |
| ------------------------------------ | ------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| Section-by-Section Disclosure Review | Loop                | Iterates through a list of report sections, applying validation logic to each | Enables reusable logic for each disclosure section (risk, liquidity, governance, etc.) |
| → Generate Section Template          | Template            | Initializes a pre-filled template or format for the current section           | Establishes a uniform structure for each disclosure type before evaluation begins      |
| → Load Compliance Thresholds         | Knowledge Retrieval | Queries internal rulesets or knowledge documents to fetch policy thresholds   | Dynamically loads what each section must comply with                                   |
| → Validate Thresholds and Fields     | IF/ELSE             | Compares user input or extracted values against the thresholds                | Identifies missing fields or out-of-policy values                                      |
| → Evaluate Disclosure Quality        | LLM                 | Uses a language model to check clarity, relevance, or completion              | Adds a semantic quality check beyond simple rules                                      |
| → Summarize Compliance Quality       | LLM                 | Generates a plain-language summary of section-level compliance                | Useful for audit logs or human review                                                  |

***

### 📊 Phase 3: Report Aggregation & Assembly

| **Block Name**           | **Block Type**      | **Description**                        | **Purpose**                                                             |
| ------------------------ | ------------------- | -------------------------------------- | ----------------------------------------------------------------------- |
| Aggregate Sections       | Variable Aggregator | Combines loop output from all sections | Merges each section’s validation result into a single package           |
| Format Compliance Report | Template / LLM      | Formats the full report for delivery   | Outputs the final report in a structured file (`.json`, `.csv`, `.pdf`) |

***

### ✉️ Phase 4: Submission & Attestation

| **Block Name**          | **Block Type**  | **Description**                                                                  | **Purpose**                                                                            |
| ----------------------- | --------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| Final Review (Optional) | Agent           | Sends results to a Compliance Officer agent or human reviewer                    | Allows manual sign-off if policy requires it                                           |
| Compose Audit Log       | Code / Template | Generates structured output with metadata (e.g., reviewer ID, status, timestamp) | Creates an immutable record of the decision process                                    |
| Submit Report           | HTTP Request    | Routes the final report to an API endpoint or archive                            | Sends the MiCA-compliant package to an external system, regulator, or internal archive |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.glik.ai/templates/compliance-and-audit-automation/compliance-copilot-mica-reporting/block-by-block-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
