diff --git a/.gitignore b/.gitignore
index a14e2ea..a765c85 100755
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@ backend/mappings.db
backend/tasks.db
backend/logs
backend/auth.db
+semantics/reports
diff --git a/backend/src/api/routes/admin.py b/backend/src/api/routes/admin.py
index 78482a8..7e79616 100644
--- a/backend/src/api/routes/admin.py
+++ b/backend/src/api/routes/admin.py
@@ -1,5 +1,6 @@
# [DEF:backend.src.api.routes.admin:Module]
#
+# @TIER: STANDARD
# @SEMANTICS: api, admin, users, roles, permissions
# @PURPOSE: Admin API endpoints for user and role management.
# @LAYER: API
diff --git a/backend/src/api/routes/git_schemas.py b/backend/src/api/routes/git_schemas.py
index b4fcdda..5fb08bb 100644
--- a/backend/src/api/routes/git_schemas.py
+++ b/backend/src/api/routes/git_schemas.py
@@ -1,5 +1,6 @@
# [DEF:backend.src.api.routes.git_schemas:Module]
#
+# @TIER: STANDARD
# @SEMANTICS: git, schemas, pydantic, api, contracts
# @PURPOSE: Defines Pydantic models for the Git integration API layer.
# @LAYER: API
@@ -14,6 +15,7 @@ from uuid import UUID
from src.models.git import GitProvider, GitStatus, SyncStatus
# [DEF:GitServerConfigBase:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Base schema for Git server configuration attributes.
class GitServerConfigBase(BaseModel):
name: str = Field(..., description="Display name for the Git server")
diff --git a/backend/src/models/auth.py b/backend/src/models/auth.py
index 62e3179..a27ddd2 100644
--- a/backend/src/models/auth.py
+++ b/backend/src/models/auth.py
@@ -1,5 +1,6 @@
# [DEF:backend.src.models.auth:Module]
#
+# @TIER: STANDARD
# @SEMANTICS: auth, models, user, role, permission, sqlalchemy
# @PURPOSE: SQLAlchemy models for multi-user authentication and authorization.
# @LAYER: Domain
diff --git a/backend/src/models/dashboard.py b/backend/src/models/dashboard.py
index 166cb60..77a3e0d 100644
--- a/backend/src/models/dashboard.py
+++ b/backend/src/models/dashboard.py
@@ -1,4 +1,5 @@
# [DEF:backend.src.models.dashboard:Module]
+# @TIER: STANDARD
# @SEMANTICS: dashboard, model, metadata, migration
# @PURPOSE: Defines data models for dashboard metadata and selection.
# @LAYER: Model
@@ -8,6 +9,7 @@ from pydantic import BaseModel
from typing import List
# [DEF:DashboardMetadata:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Represents a dashboard available for migration.
class DashboardMetadata(BaseModel):
id: int
@@ -17,6 +19,7 @@ class DashboardMetadata(BaseModel):
# [/DEF:DashboardMetadata:Class]
# [DEF:DashboardSelection:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Represents the user's selection of dashboards to migrate.
class DashboardSelection(BaseModel):
selected_ids: List[int]
diff --git a/backend/src/models/mapping.py b/backend/src/models/mapping.py
index 1522042..754faf9 100644
--- a/backend/src/models/mapping.py
+++ b/backend/src/models/mapping.py
@@ -1,5 +1,6 @@
# [DEF:backend.src.models.mapping:Module]
#
+# @TIER: STANDARD
# @SEMANTICS: database, mapping, environment, migration, sqlalchemy, sqlite
# @PURPOSE: Defines the database schema for environment metadata and database mappings using SQLAlchemy.
# @LAYER: Domain
@@ -19,6 +20,7 @@ import enum
Base = declarative_base()
# [DEF:MigrationStatus:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Enumeration of possible migration job statuses.
class MigrationStatus(enum.Enum):
PENDING = "PENDING"
@@ -29,6 +31,7 @@ class MigrationStatus(enum.Enum):
# [/DEF:MigrationStatus:Class]
# [DEF:Environment:Class]
+# @TIER: STANDARD
# @PURPOSE: Represents a Superset instance environment.
class Environment(Base):
__tablename__ = "environments"
@@ -40,6 +43,7 @@ class Environment(Base):
# [/DEF:Environment:Class]
# [DEF:DatabaseMapping:Class]
+# @TIER: STANDARD
# @PURPOSE: Represents a mapping between source and target databases.
class DatabaseMapping(Base):
__tablename__ = "database_mappings"
diff --git a/backend/src/schemas/auth.py b/backend/src/schemas/auth.py
index e640f6a..a4bd965 100644
--- a/backend/src/schemas/auth.py
+++ b/backend/src/schemas/auth.py
@@ -1,5 +1,6 @@
# [DEF:backend.src.schemas.auth:Module]
#
+# @TIER: STANDARD
# @SEMANTICS: auth, schemas, pydantic, user, token
# @PURPOSE: Pydantic schemas for authentication requests and responses.
# @LAYER: API
@@ -14,6 +15,7 @@ from datetime import datetime
# [/SECTION]
# [DEF:Token:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Represents a JWT access token response.
class Token(BaseModel):
access_token: str
@@ -21,6 +23,7 @@ class Token(BaseModel):
# [/DEF:Token:Class]
# [DEF:TokenData:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Represents the data encoded in a JWT token.
class TokenData(BaseModel):
username: Optional[str] = None
@@ -28,6 +31,7 @@ class TokenData(BaseModel):
# [/DEF:TokenData:Class]
# [DEF:PermissionSchema:Class]
+# @TIER: TRIVIAL
# @PURPOSE: Represents a permission in API responses.
class PermissionSchema(BaseModel):
id: Optional[str] = None
diff --git a/frontend/src/components/storage/FileList.svelte b/frontend/src/components/storage/FileList.svelte
index 7288d9b..7fe392b 100644
--- a/frontend/src/components/storage/FileList.svelte
+++ b/frontend/src/components/storage/FileList.svelte
@@ -1,8 +1,9 @@
+
Select Dashboards
@@ -316,7 +316,7 @@
Select a source environment to view dashboards.
{/if}
-
+
diff --git a/frontend/src/routes/tools/storage/+page.svelte b/frontend/src/routes/tools/storage/+page.svelte
index 1dfb8f6..5a16445 100644
--- a/frontend/src/routes/tools/storage/+page.svelte
+++ b/frontend/src/routes/tools/storage/+page.svelte
@@ -1,8 +1,9 @@
"),
- "html_anchor_end": re.compile(r""),
+ "html_anchor_end": re.compile(r""),
"js_anchor_start": re.compile(r"//\s*\[DEF:(?P
[\w\.]+):(?P\w+)\]"),
- "js_anchor_end": re.compile(r"//\s*\[/DEF:(?P[\w\.]+)\]"),
+ "js_anchor_end": re.compile(r"//\s*\[/DEF:(?P[\w\.]+)(?::\w+)?\]"),
"html_tag": re.compile(r"@(?P[A-Z_]+):\s*(?P.*)"),
"jsdoc_tag": re.compile(r"\*\s*@(?P[a-zA-Z]+)\s+(?P.*)"),
"relation": re.compile(r"//\s*@RELATION:\s*(?P\w+)\s*->\s*(?P.*)"),
diff --git a/semantic_protocol.md b/semantic_protocol.md
index de445e6..1c28f08 100755
--- a/semantic_protocol.md
+++ b/semantic_protocol.md
@@ -12,7 +12,7 @@ I. ЗАКОН (АКСИОМЫ)
II. СИНТАКСИС (ЖЕСТКИЙ ФОРМАТ)
ЯКОРЬ (Контейнер):
Начало: `# [DEF:id:Type]` (Python) | `` (Svelte)
- Конец: `# [/DEF:id]` (ОБЯЗАТЕЛЬНО для аккумуляции)
+ Конец: `# [/DEF:id:Type]` (Python) | `` (Svelte) (ОБЯЗАТЕЛЬНО для аккумуляции)
Типы: Module, Class, Function, Component, Store.
ТЕГ (Метаданные):
diff --git a/semantics/semantic_map.json b/semantics/semantic_map.json
index d00fae9..633021e 100644
--- a/semantics/semantic_map.json
+++ b/semantics/semantic_map.json
@@ -1,16 +1,19 @@
{
"project_root": ".",
- "generated_at": "2026-01-26T11:41:28.347227",
+ "generated_at": "2026-01-28T16:48:53.121048",
"modules": [
{
"name": "generate_semantic_map",
"type": "Module",
+ "tier": "CRITICAL",
"start_line": 1,
- "end_line": 614,
+ "end_line": 1000,
"tags": {
- "SEMANTICS": "semantic_analysis, parser, map_generator, compliance_checker",
+ "TIER": "CRITICAL",
+ "SEMANTICS": "semantic_analysis, parser, map_generator, compliance_checker, tier_validation, svelte_props, data_flow",
"PURPOSE": "Scans the codebase to generate a Semantic Map and Compliance Report based on the System Standard.",
- "LAYER": "DevOps/Tooling"
+ "LAYER": "DevOps/Tooling",
+ "INVARIANT": "All DEF anchors must have matching closing anchors; TIER determines validation strictness."
},
"relations": [
{
@@ -34,29 +37,31 @@
{
"name": "__init__",
"type": "Function",
- "start_line": 21,
- "end_line": 27,
+ "tier": "TRIVIAL",
+ "start_line": 25,
+ "end_line": 32,
"tags": {
- "PURPOSE": "Mock init.",
+ "TIER": "TRIVIAL",
+ "PURPOSE": "Mock init for self-containment.",
"PRE": "name is a string.",
"POST": "Instance initialized."
},
"relations": [],
"children": [],
"compliance": {
- "valid": false,
- "issues": [
- "Missing Belief State Logging: Function should use belief_scope context manager.",
- "Missing Belief State Logging: Function should use belief_scope context manager."
- ]
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "__enter__",
"type": "Function",
- "start_line": 29,
- "end_line": 35,
+ "tier": "TRIVIAL",
+ "start_line": 34,
+ "end_line": 41,
"tags": {
+ "TIER": "TRIVIAL",
"PURPOSE": "Mock enter.",
"PRE": "Instance initialized.",
"POST": "Returns self."
@@ -64,19 +69,19 @@
"relations": [],
"children": [],
"compliance": {
- "valid": false,
- "issues": [
- "Missing Belief State Logging: Function should use belief_scope context manager.",
- "Missing Belief State Logging: Function should use belief_scope context manager."
- ]
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "__exit__",
"type": "Function",
- "start_line": 37,
- "end_line": 43,
+ "tier": "TRIVIAL",
+ "start_line": 43,
+ "end_line": 50,
"tags": {
+ "TIER": "TRIVIAL",
"PURPOSE": "Mock exit.",
"PRE": "Context entered.",
"POST": "Context exited."
@@ -84,30 +89,86 @@
"relations": [],
"children": [],
"compliance": {
- "valid": false,
- "issues": [
- "Missing Belief State Logging: Function should use belief_scope context manager.",
- "Missing Belief State Logging: Function should use belief_scope context manager."
- ]
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "Tier",
+ "type": "Class",
+ "tier": "TRIVIAL",
+ "start_line": 57,
+ "end_line": 63,
+ "tags": {
+ "TIER": "TRIVIAL",
+ "PURPOSE": "Enumeration of semantic tiers defining validation strictness."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "Severity",
+ "type": "Class",
+ "tier": "TRIVIAL",
+ "start_line": 67,
+ "end_line": 73,
+ "tags": {
+ "TIER": "TRIVIAL",
+ "PURPOSE": "Severity levels for compliance issues."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "ComplianceIssue",
+ "type": "Class",
+ "tier": "TRIVIAL",
+ "start_line": 119,
+ "end_line": 134,
+ "tags": {
+ "TIER": "TRIVIAL",
+ "PURPOSE": "Represents a single compliance issue with severity."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "SemanticEntity",
"type": "Class",
- "start_line": 67,
- "end_line": 168,
+ "tier": "CRITICAL",
+ "start_line": 137,
+ "end_line": 313,
"tags": {
+ "TIER": "CRITICAL",
"PURPOSE": "Represents a code entity (Module, Function, Component) found during parsing.",
- "INVARIANT": "start_line is always set; end_line is set upon closure."
+ "INVARIANT": "start_line is always set; end_line is set upon closure; tier defaults to STANDARD."
},
"relations": [],
"children": [
{
"name": "__init__",
"type": "Function",
- "start_line": 71,
- "end_line": 87,
+ "tier": "STANDARD",
+ "start_line": 142,
+ "end_line": 165,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Initializes a new SemanticEntity instance.",
"PRE": "name, type_, start_line, file_path are provided.",
"POST": "Instance is initialized with default values."
@@ -116,122 +177,222 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "get_tier",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 167,
+ "end_line": 179,
+ "tags": {
+ "TIER": "STANDARD",
+ "PURPOSE": "Returns the tier of the entity, defaulting to STANDARD.",
+ "PRE": "tags dictionary is accessible.",
+ "POST": "Returns Tier enum value."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "to_dict",
"type": "Function",
- "start_line": 89,
- "end_line": 109,
+ "tier": "STANDARD",
+ "start_line": 181,
+ "end_line": 210,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Serializes the entity to a dictionary for JSON output.",
"PRE": "Entity is fully populated.",
- "POST": "Returns a dictionary representation.",
- "RETURN": "Dict representation of the entity."
+ "POST": "Returns a dictionary representation."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "validate",
"type": "Function",
- "start_line": 111,
- "end_line": 141,
+ "tier": "CRITICAL",
+ "start_line": 212,
+ "end_line": 276,
"tags": {
- "PURPOSE": "Checks for semantic compliance (closure, mandatory tags, belief state).",
- "PRE": "Entity structure is complete.",
- "POST": "Populates self.compliance_issues."
+ "TIER": "CRITICAL",
+ "PURPOSE": "Checks for semantic compliance based on TIER requirements.",
+ "PRE": "Entity structure is complete; tier is determined.",
+ "POST": "Populates self.compliance_issues with severity levels.",
+ "SIDE_EFFECT": "Modifies self.compliance_issues list."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "get_score",
"type": "Function",
- "start_line": 143,
- "end_line": 167,
+ "tier": "STANDARD",
+ "start_line": 278,
+ "end_line": 312,
"tags": {
- "PURPOSE": "Calculates a compliance score (0.0 to 1.0).",
+ "TIER": "STANDARD",
+ "PURPOSE": "Calculates a compliance score (0.0 to 1.0) based on tier requirements.",
"PRE": "validate() has been called.",
- "POST": "Returns a float score.",
- "RETURN": "Float score."
+ "POST": "Returns a float score."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "get_patterns",
"type": "Function",
- "start_line": 171,
- "end_line": 199,
+ "tier": "STANDARD",
+ "start_line": 316,
+ "end_line": 351,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Returns regex patterns for a specific language.",
"PRE": "lang is either 'python' or 'svelte_js'.",
"POST": "Returns a dictionary of compiled regex patterns.",
- "PARAM": "lang (str) - 'python' or 'svelte_js'",
- "RETURN": "Dict containing compiled regex patterns."
+ "PARAM": "lang (str) - 'python' or 'svelte_js'"
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "extract_svelte_props",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 354,
+ "end_line": 380,
+ "tags": {
+ "TIER": "STANDARD",
+ "PURPOSE": "Extracts props from Svelte component script section.",
+ "PRE": "lines is a list of file lines, start_idx is the starting line index.",
+ "POST": "Returns list of prop definitions."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "extract_svelte_events",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 383,
+ "end_line": 417,
+ "tags": {
+ "TIER": "STANDARD",
+ "PURPOSE": "Extracts dispatched events from Svelte component.",
+ "PRE": "lines is a list of file lines.",
+ "POST": "Returns list of event names."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "extract_data_flow",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 420,
+ "end_line": 470,
+ "tags": {
+ "TIER": "STANDARD",
+ "PURPOSE": "Extracts store subscriptions and data flow from Svelte component.",
+ "PRE": "lines is a list of file lines.",
+ "POST": "Returns list of data flow descriptors."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "parse_file",
"type": "Function",
- "start_line": 202,
- "end_line": 325,
+ "tier": "CRITICAL",
+ "start_line": 473,
+ "end_line": 660,
"tags": {
- "PURPOSE": "Parses a single file to extract semantic entities.",
+ "TIER": "CRITICAL",
+ "PURPOSE": "Parses a single file to extract semantic entities with tier awareness and enhanced Svelte analysis.",
"PRE": "full_path, rel_path, lang are valid strings.",
"POST": "Returns extracted entities and list of issues.",
- "PARAM": "lang - Language identifier.",
- "RETURN": "Tuple[List[SemanticEntity], List[str]] - Entities found and global issues."
+ "INVARIANT": "Every opened anchor must have a matching closing anchor for valid compliance.",
+ "PARAM": "lang - Language identifier."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "SemanticMapGenerator",
"type": "Class",
- "start_line": 328,
- "end_line": 608,
+ "tier": "CRITICAL",
+ "start_line": 663,
+ "end_line": 993,
"tags": {
- "PURPOSE": "Orchestrates the mapping process."
+ "TIER": "CRITICAL",
+ "PURPOSE": "Orchestrates the mapping process with tier-based validation.",
+ "INVARIANT": "All entities are validated according to their TIER requirements."
},
"relations": [],
"children": [
{
"name": "__init__",
"type": "Function",
- "start_line": 331,
- "end_line": 342,
+ "tier": "STANDARD",
+ "start_line": 668,
+ "end_line": 680,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Initializes the generator with a root directory.",
"PRE": "root_dir is a valid path string.",
"POST": "Generator instance is ready."
@@ -240,52 +401,58 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_load_gitignore",
"type": "Function",
- "start_line": 344,
- "end_line": 360,
+ "tier": "STANDARD",
+ "start_line": 682,
+ "end_line": 698,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Loads patterns from .gitignore file.",
"PRE": ".gitignore exists in root_dir.",
- "POST": "Returns set of ignore patterns.",
- "RETURN": "Set of patterns to ignore."
+ "POST": "Returns set of ignore patterns."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_is_ignored",
"type": "Function",
- "start_line": 362,
- "end_line": 403,
+ "tier": "STANDARD",
+ "start_line": 700,
+ "end_line": 734,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Checks if a path should be ignored based on .gitignore or hardcoded defaults.",
"PRE": "rel_path is a valid relative path string.",
- "POST": "Returns True if the path should be ignored.",
- "PARAM": "rel_path (str) - Path relative to root.",
- "RETURN": "bool - True if ignored."
+ "POST": "Returns True if the path should be ignored."
},
"relations": [],
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "run",
"type": "Function",
- "start_line": 405,
- "end_line": 417,
+ "tier": "CRITICAL",
+ "start_line": 736,
+ "end_line": 749,
"tags": {
+ "TIER": "CRITICAL",
"PURPOSE": "Main execution flow.",
"PRE": "Generator is initialized.",
"POST": "Semantic map and reports are generated."
@@ -303,15 +470,18 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_walk_and_parse",
"type": "Function",
- "start_line": 419,
- "end_line": 448,
+ "tier": "CRITICAL",
+ "start_line": 751,
+ "end_line": 780,
"tags": {
+ "TIER": "CRITICAL",
"PURPOSE": "Recursively walks directories and triggers parsing.",
"PRE": "root_dir exists.",
"POST": "All files are scanned and entities extracted."
@@ -320,16 +490,19 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_process_file_results",
"type": "Function",
- "start_line": 450,
- "end_line": 477,
+ "tier": "STANDARD",
+ "start_line": 782,
+ "end_line": 811,
"tags": {
- "PURPOSE": "Validates entities and calculates file scores.",
+ "TIER": "STANDARD",
+ "PURPOSE": "Validates entities and calculates file scores with tier awareness.",
"PRE": "Entities have been parsed from the file.",
"POST": "File score is calculated and issues collected."
},
@@ -338,9 +511,11 @@
{
"name": "validate_recursive",
"type": "Function",
- "start_line": 459,
- "end_line": 471,
+ "tier": "STANDARD",
+ "start_line": 792,
+ "end_line": 805,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Recursively validates a list of entities.",
"PRE": "ent_list is a list of SemanticEntity objects.",
"POST": "All entities and their children are validated."
@@ -349,22 +524,26 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_generate_artifacts",
"type": "Function",
- "start_line": 479,
- "end_line": 502,
+ "tier": "CRITICAL",
+ "start_line": 813,
+ "end_line": 833,
"tags": {
- "PURPOSE": "Writes output files.",
+ "TIER": "CRITICAL",
+ "PURPOSE": "Writes output files with tier-based compliance data.",
"PRE": "Parsing and validation are complete.",
"POST": "JSON and Markdown artifacts are written to disk."
},
@@ -372,16 +551,19 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_generate_report",
"type": "Function",
- "start_line": 504,
- "end_line": 544,
+ "tier": "CRITICAL",
+ "start_line": 835,
+ "end_line": 888,
"tags": {
- "PURPOSE": "Generates the Markdown compliance report.",
+ "TIER": "CRITICAL",
+ "PURPOSE": "Generates the Markdown compliance report with severity levels.",
"PRE": "File scores and issues are available.",
"POST": "Markdown report is created in reports directory."
},
@@ -389,15 +571,18 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_collect_issues",
"type": "Function",
- "start_line": 546,
- "end_line": 556,
+ "tier": "STANDARD",
+ "start_line": 890,
+ "end_line": 902,
"tags": {
+ "TIER": "STANDARD",
"PURPOSE": "Helper to collect issues for a specific file from the entity tree.",
"PRE": "entities list and file_path are valid.",
"POST": "issues list is populated with compliance issues."
@@ -406,16 +591,19 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_generate_compressed_map",
"type": "Function",
- "start_line": 558,
- "end_line": 574,
+ "tier": "CRITICAL",
+ "start_line": 904,
+ "end_line": 921,
"tags": {
- "PURPOSE": "Generates the token-optimized project map.",
+ "TIER": "CRITICAL",
+ "PURPOSE": "Generates the token-optimized project map with enhanced Svelte details.",
"PRE": "Entities have been processed.",
"POST": "Markdown project map is written."
},
@@ -423,16 +611,19 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "_write_entity_md",
"type": "Function",
- "start_line": 576,
- "end_line": 606,
+ "tier": "CRITICAL",
+ "start_line": 923,
+ "end_line": 991,
"tags": {
- "PURPOSE": "Recursive helper to write entity tree to Markdown.",
+ "TIER": "CRITICAL",
+ "PURPOSE": "Recursive helper to write entity tree to Markdown with tier badges and enhanced details.",
"PRE": "f is an open file handle, entity is valid.",
"POST": "Entity details are written to the file."
},
@@ -440,24 +631,46 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "to_dict",
+ "type": "Function",
+ "tier": "TRIVIAL",
+ "start_line": 128,
+ "end_line": 128,
+ "tags": {
+ "PURPOSE": "Auto-detected function (orphan)",
+ "TIER": "TRIVIAL"
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "stores_module",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 70,
"tags": {
@@ -470,6 +683,7 @@
{
"name": "plugins",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 9,
"end_line": 12,
"tags": {
@@ -479,12 +693,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "tasks",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 14,
"end_line": 17,
"tags": {
@@ -494,12 +710,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "selectedPlugin",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 19,
"end_line": 22,
"tags": {
@@ -509,12 +727,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "selectedTask",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 24,
"end_line": 27,
"tags": {
@@ -524,12 +744,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "currentPage",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 29,
"end_line": 32,
"tags": {
@@ -539,12 +761,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "taskLogs",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 34,
"end_line": 37,
"tags": {
@@ -554,12 +778,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "fetchPlugins",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 39,
"end_line": 53,
"tags": {
@@ -571,12 +797,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 39
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 39
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "fetchTasks",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 55,
"end_line": 69,
"tags": {
@@ -588,18 +827,38 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 55
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 55
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "toasts_module",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 38,
"tags": {
@@ -612,6 +871,7 @@
{
"name": "toasts",
"type": "Data",
+ "tier": "STANDARD",
"start_line": 8,
"end_line": 11,
"tags": {
@@ -621,12 +881,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "addToast",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 13,
"end_line": 26,
"tags": {
@@ -639,12 +901,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 13
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 13
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "removeToast",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 28,
"end_line": 37,
"tags": {
@@ -657,20 +932,40 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "api_module",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 132,
+ "end_line": 170,
"tags": {
"SEMANTICS": "api, client, fetch, rest",
"PURPOSE": "Handles all communication with the backend API.",
@@ -681,6 +976,7 @@
{
"name": "getWsUrl",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 11,
"end_line": 26,
"tags": {
@@ -694,14 +990,75 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 11
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 11
+ }
+ ],
+ "score": 0.8
+ }
+ },
+ {
+ "name": "getAuthHeaders",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 28,
+ "end_line": 42,
+ "tags": {
+ "PURPOSE": "Returns headers with Authorization if token exists."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 28
+ }
+ ],
+ "score": 0.26666666666666655
}
},
{
"name": "fetchApi",
"type": "Function",
- "start_line": 28,
- "end_line": 48,
+ "tier": "STANDARD",
+ "start_line": 44,
+ "end_line": 72,
"tags": {
"PURPOSE": "Generic GET request wrapper.",
"PRE": "endpoint string is provided.",
@@ -713,14 +1070,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 44
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 44
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "postApi",
"type": "Function",
- "start_line": 50,
- "end_line": 77,
+ "tier": "STANDARD",
+ "start_line": 74,
+ "end_line": 105,
"tags": {
"PURPOSE": "Generic POST request wrapper.",
"PRE": "endpoint and body are provided.",
@@ -732,14 +1102,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "requestApi",
"type": "Function",
- "start_line": 79,
- "end_line": 107,
+ "tier": "STANDARD",
+ "start_line": 107,
+ "end_line": 142,
"tags": {
"PURPOSE": "Generic request wrapper.",
"PRE": "endpoint and method are provided.",
@@ -749,14 +1132,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 107
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 107
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "api",
"type": "Data",
- "start_line": 109,
- "end_line": 130,
+ "tier": "STANDARD",
+ "start_line": 144,
+ "end_line": 168,
"tags": {
"PURPOSE": "API client object with specific methods."
},
@@ -764,18 +1160,333 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ }
+ },
+ {
+ "name": "authStore",
+ "type": "Store",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 91,
+ "tags": {
+ "SEMANTICS": "auth, store, svelte, jwt, session",
+ "PURPOSE": "Manages the global authentication state on the frontend.",
+ "LAYER": "Feature"
+ },
+ "relations": [
+ {
+ "type": "MODIFIED_BY",
+ "target": "handleLogin, handleLogout"
+ },
+ {
+ "type": "BINDS_TO",
+ "target": "Navbar, ProtectedRoute"
+ }
+ ],
+ "children": [
+ {
+ "name": "AuthState",
+ "type": "Interface",
+ "tier": "STANDARD",
+ "start_line": 11,
+ "end_line": 21,
+ "tags": {
+ "PURPOSE": "Defines the structure of the authentication state."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "createAuthStore",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 30,
+ "end_line": 87,
+ "tags": {
+ "PURPOSE": "Creates and configures the auth store with helper methods.",
+ "RETURNS": "{Writable}"
+ },
+ "relations": [],
+ "children": [
+ {
+ "name": "setToken",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 40,
+ "end_line": 52,
+ "tags": {
+ "PURPOSE": "Updates the store with a new JWT token.",
+ "PARAM": "{string} token - The JWT access token."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ }
+ ],
+ "score": 0.26666666666666655
+ }
+ },
+ {
+ "name": "setUser",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 53,
+ "end_line": 62,
+ "tags": {
+ "PURPOSE": "Sets the current user profile data.",
+ "PARAM": "{any} user - The user profile object."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ }
+ ],
+ "score": 0.26666666666666655
+ }
+ },
+ {
+ "name": "logout",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 63,
+ "end_line": 74,
+ "tags": {
+ "PURPOSE": "Clears authentication state and storage."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 63
+ }
+ ],
+ "score": 0.26666666666666655
+ }
+ },
+ {
+ "name": "setLoading",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 75,
+ "end_line": 84,
+ "tags": {
+ "PURPOSE": "Updates the loading state.",
+ "PARAM": "{boolean} loading - Loading status."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 75
+ }
+ ],
+ "score": 0.0
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 30
+ }
+ ],
+ "score": 0.26666666666666655
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "Select",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 40,
"tags": {
@@ -787,12 +1498,37 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "props": [
+ {
+ "name": "label",
+ "type": "string ",
+ "default": "\"\""
+ },
+ {
+ "name": "value",
+ "type": "string | number ",
+ "default": "\"\""
+ },
+ {
+ "name": "disabled",
+ "type": "boolean ",
+ "default": "false"
+ }
+ ]
},
{
"name": "ui",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 18,
"tags": {
@@ -805,12 +1541,20 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "PageHeader",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 26,
"tags": {
@@ -822,12 +1566,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "props": [
+ {
+ "name": "title",
+ "type": "string ",
+ "default": "\"\""
+ }
+ ]
},
{
"name": "Card",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 35,
"tags": {
@@ -839,12 +1598,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "props": [
+ {
+ "name": "title",
+ "type": "string ",
+ "default": "\"\""
+ }
+ ]
},
{
"name": "Button",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 61,
"tags": {
@@ -857,12 +1631,32 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "props": [
+ {
+ "name": "isLoading",
+ "type": "boolean ",
+ "default": "false"
+ },
+ {
+ "name": "disabled",
+ "type": "boolean ",
+ "default": "false"
+ }
+ ]
},
{
"name": "Input",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 46,
"tags": {
@@ -875,12 +1669,47 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "props": [
+ {
+ "name": "label",
+ "type": "string ",
+ "default": "\"\""
+ },
+ {
+ "name": "value",
+ "type": "string ",
+ "default": "\"\""
+ },
+ {
+ "name": "placeholder",
+ "type": "string ",
+ "default": "\"\""
+ },
+ {
+ "name": "error",
+ "type": "string ",
+ "default": "\"\""
+ },
+ {
+ "name": "disabled",
+ "type": "boolean ",
+ "default": "false"
+ }
+ ]
},
{
"name": "LanguageSwitcher",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 30,
"tags": {
@@ -893,12 +1722,32 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 11
+ },
+ {
+ "store": "locale",
+ "type": "WRITES_TO",
+ "line": 24
+ }
+ ]
},
{
"name": "i18n",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 56,
"tags": {
@@ -922,6 +1771,7 @@
{
"name": "locale",
"type": "Store",
+ "tier": "STANDARD",
"start_line": 33,
"end_line": 43,
"tags": {
@@ -931,12 +1781,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "t",
"type": "Store",
+ "tier": "STANDARD",
"start_line": 45,
"end_line": 54,
"tags": {
@@ -947,20 +1799,29 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "selectPlugin",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 19,
- "end_line": 34,
+ "end_line": 32,
"tags": {
"PURPOSE": "Handles plugin selection and navigation.",
"PRE": "plugin object must be provided.",
@@ -970,14 +1831,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 19
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "handleFormSubmit",
"type": "Function",
- "start_line": 36,
- "end_line": 54,
+ "tier": "STANDARD",
+ "start_line": 34,
+ "end_line": 52,
"tags": {
"PURPOSE": "Handles task creation from dynamic form submission.",
"PRE": "event.detail must contain task parameters.",
@@ -987,12 +1856,20 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 34
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "load",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 3,
"end_line": 23,
"tags": {
@@ -1005,14 +1882,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 3
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "TaskManagementPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 182,
+ "end_line": 176,
"tags": {
"SEMANTICS": "tasks, management, history, logs",
"PURPOSE": "Page for managing and monitoring tasks.",
@@ -1024,6 +1909,7 @@
{
"name": "loadInitialData",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 26,
"end_line": 49,
"tags": {
@@ -1035,12 +1921,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "refreshTasks",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 51,
"end_line": 68,
"tags": {
@@ -1052,12 +1940,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 51
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 51
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleSelectTask",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 70,
"end_line": 80,
"tags": {
@@ -1069,12 +1970,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 70
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 70
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleRunBackup",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 82,
"end_line": 106,
"tags": {
@@ -1086,20 +2000,878 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 15
+ },
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 16
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 119
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 123
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 128
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 141
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 151
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 154
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 157
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 164
+ }
+ ]
+ },
+ {
+ "name": "LoginPage",
+ "type": "Component",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 166,
+ "tags": {
+ "TIER": "STANDARD",
+ "SEMANTICS": "login, auth, ui, form",
+ "PURPOSE": "Provides the user interface for local and ADFS authentication.",
+ "LAYER": "UI",
+ "RELATION": "CALLS -> api.auth.login",
+ "INVARIANT": "Shows both local login form and ADFS SSO button."
+ },
+ "relations": [],
+ "children": [
+ {
+ "name": "handleLogin",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 23,
+ "end_line": 80,
+ "tags": {
+ "PURPOSE": "Submits the local login form to the backend.",
+ "PRE": "Username and password are not empty.",
+ "POST": "User is authenticated and redirected on success."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 23
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 23
+ }
+ ],
+ "score": 0.8
+ }
+ },
+ {
+ "name": "handleADFSLogin",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 82,
+ "end_line": 89,
+ "tags": {
+ "PURPOSE": "Redirects the user to the ADFS login endpoint."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ }
+ ],
+ "score": 0.26666666666666655
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ },
+ "data_flow": [
+ {
+ "store": "app",
+ "type": "READS_FROM",
+ "line": 16
+ },
+ {
+ "store": "auth",
+ "type": "READS_FROM",
+ "line": 92
+ }
+ ]
+ },
+ {
+ "name": "AdminRolesPage",
+ "type": "Component",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 236,
+ "tags": {
+ "TIER": "STANDARD",
+ "SEMANTICS": "admin, role-management, rbac",
+ "PURPOSE": "UI for managing system roles and their permissions.",
+ "LAYER": "Domain",
+ "RELATION": "DEPENDS_ON -> frontend.src.components.auth.ProtectedRoute",
+ "INVARIANT": "Only accessible by users with Admin role."
+ },
+ "relations": [],
+ "children": [
+ {
+ "name": "loadData",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 35,
+ "end_line": 57,
+ "tags": {
+ "PURPOSE": "Fetches roles and available permissions.",
+ "PRE": "Component mounted.",
+ "POST": "roles and permissions arrays populated."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "openCreateModal",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 59,
+ "end_line": 72,
+ "tags": {
+ "PURPOSE": "Initializes state for creating a new role.",
+ "PRE": "None.",
+ "POST": "showModal is true, roleForm is reset."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "openEditModal",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 74,
+ "end_line": 91,
+ "tags": {
+ "PURPOSE": "Initializes state for editing an existing role.",
+ "PRE": "role object is provided.",
+ "POST": "showModal is true, roleForm is populated."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ }
+ ],
+ "score": 0.8
+ }
+ },
+ {
+ "name": "handleSaveRole",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 93,
+ "end_line": 115,
+ "tags": {
+ "PURPOSE": "Submits role data (create or update).",
+ "PRE": "roleForm contains valid data.",
+ "POST": "Role is saved, modal closed, data reloaded."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "handleDeleteRole",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 117,
+ "end_line": 136,
+ "tags": {
+ "PURPOSE": "Deletes a role after confirmation.",
+ "PRE": "role object is provided.",
+ "POST": "Role is deleted if confirmed, data reloaded."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 16
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 124
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 145
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 150
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 155
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 163
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 164
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 165
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 166
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 184
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 185
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 198
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 198
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 202
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 206
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 210
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 219
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 222
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 223
+ }
+ ]
+ },
+ {
+ "name": "AdminUsersPage",
+ "type": "Component",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 284,
+ "tags": {
+ "SEMANTICS": "admin, user-management, rbac",
+ "PURPOSE": "UI for managing system users and their roles.",
+ "LAYER": "Feature",
+ "RELATION": "DEPENDS_ON -> frontend.src.components.auth.ProtectedRoute",
+ "INVARIANT": "Only accessible by users with \"admin:users\" permission."
+ },
+ "relations": [],
+ "children": [
+ {
+ "name": "loadData",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 37,
+ "end_line": 59,
+ "tags": {
+ "PURPOSE": "Fetches users and roles from the backend.",
+ "PRE": "Component mounted.",
+ "POST": "users and roles arrays populated."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "openCreateModal",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 61,
+ "end_line": 72,
+ "tags": {
+ "PURPOSE": "Prepares the form for creating a new user.",
+ "POST": "showModal is true, isEditing is false, userForm is reset."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 61
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 61
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 61
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 61
+ }
+ ],
+ "score": 0.5333333333333333
+ }
+ },
+ {
+ "name": "openEditModal",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 74,
+ "end_line": 93,
+ "tags": {
+ "PURPOSE": "Prepares the form for editing an existing user.",
+ "PRE": "user object must be valid.",
+ "POST": "showModal is true, isEditing is true, userForm populated with user data.",
+ "PARAM": "{Object} user - The user object to edit."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 74
+ }
+ ],
+ "score": 0.8
+ }
+ },
+ {
+ "name": "handleSaveUser",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 95,
+ "end_line": 122,
+ "tags": {
+ "PURPOSE": "Submits user data to the backend (create or update).",
+ "PRE": "userForm must be valid.",
+ "POST": "User created or updated, modal closed, data reloaded.",
+ "RELATION": "CALLS -> adminService.updateUser"
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "handleDeleteUser",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 124,
+ "end_line": 150,
+ "tags": {
+ "PURPOSE": "Deletes a user after confirmation.",
+ "PRE": "user object must be valid.",
+ "POST": "User deleted if confirmed, data reloaded.",
+ "RELATION": "CALLS -> adminService.deleteUser",
+ "PARAM": "{Object} user - The user to delete."
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 15
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 135
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 159
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 164
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 170
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 174
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 182
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 183
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 184
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 185
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 186
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 187
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 211
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 211
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 216
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 222
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 222
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 236
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 236
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 240
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 244
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 248
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 251
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 257
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 261
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 267
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 270
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 271
+ }
+ ]
+ },
+ {
+ "name": "AdminSettingsPage",
+ "type": "Component",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 213,
+ "tags": {
+ "SEMANTICS": "admin, adfs, mappings, configuration",
+ "PURPOSE": "UI for configuring Active Directory Group to local Role mappings for ADFS SSO.",
+ "LAYER": "Feature",
+ "RELATION": "DEPENDS_ON -> frontend.src.components.auth.ProtectedRoute",
+ "INVARIANT": "Only accessible by users with \"admin:settings\" permission."
+ },
+ "relations": [],
+ "children": [
+ {
+ "name": "loadData",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 31,
+ "end_line": 62,
+ "tags": {
+ "PURPOSE": "Fetches AD mappings and roles from the backend to populate the UI.",
+ "PRE": "Component is mounted and user has active session.",
+ "POST": "mappings and roles variables are updated with backend data.",
+ "RETURNS": "{Promise}",
+ "RELATION": "CALLS -> adminService.getADGroupMappings"
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "handleCreateMapping",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 64,
+ "end_line": 94,
+ "tags": {
+ "PURPOSE": "Submits a new AD Group to Role mapping to the backend.",
+ "PRE": "'newMapping' object contains valid 'ad_group' and 'role_id'.",
+ "POST": "A new mapping is created in the database and the table is refreshed.",
+ "RETURNS": "{Promise}",
+ "RELATION": "CALLS -> adminService.createADGroupMapping"
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ }
+ ],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 15
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 103
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 108
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 114
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 118
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 126
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 127
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 148
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 161
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 164
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 172
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 175
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 181
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 193
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 199
+ }
+ ]
},
{
"name": "MigrationDashboard",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 418,
+ "end_line": 390,
"tags": {
"SEMANTICS": "migration, dashboard, environment, selection, database-replacement",
"PURPOSE": "Main dashboard for configuring and starting migrations.",
@@ -1112,8 +2884,9 @@
{
"name": "fetchEnvironments",
"type": "Function",
- "start_line": 53,
- "end_line": 70,
+ "tier": "STANDARD",
+ "start_line": 54,
+ "end_line": 69,
"tags": {
"PURPOSE": "Fetches the list of environments from the API.",
"PRE": "None.",
@@ -1123,14 +2896,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 54
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 54
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "fetchDashboards",
"type": "Function",
- "start_line": 72,
- "end_line": 90,
+ "tier": "STANDARD",
+ "start_line": 71,
+ "end_line": 87,
"tags": {
"PURPOSE": "Fetches dashboards for the selected source environment.",
"PRE": "envId is a valid environment ID.",
@@ -1141,14 +2927,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 71
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 71
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "fetchDatabases",
"type": "Function",
- "start_line": 97,
- "end_line": 132,
+ "tier": "STANDARD",
+ "start_line": 94,
+ "end_line": 123,
"tags": {
"PURPOSE": "Fetches databases from both environments and gets suggestions.",
"PRE": "sourceEnvId and targetEnvId must be set.",
@@ -1158,14 +2957,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 94
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 94
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleMappingUpdate",
"type": "Function",
- "start_line": 134,
- "end_line": 169,
+ "tier": "STANDARD",
+ "start_line": 125,
+ "end_line": 153,
"tags": {
"PURPOSE": "Saves a mapping to the backend.",
"PRE": "event.detail contains sourceUuid and targetUuid.",
@@ -1175,14 +2987,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 125
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 125
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleViewLogs",
"type": "Function",
- "start_line": 171,
- "end_line": 181,
+ "tier": "STANDARD",
+ "start_line": 155,
+ "end_line": 165,
"tags": {
"PURPOSE": "Opens the log viewer for a specific task.",
"PRE": "event.detail contains task object.",
@@ -1192,14 +3017,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 155
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 155
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handlePasswordPrompt",
"type": "Function",
- "start_line": 183,
- "end_line": 205,
+ "tier": "STANDARD",
+ "start_line": 167,
+ "end_line": 189,
"tags": {
"PURPOSE": "Reactive logic to show password prompt when a task is awaiting input.",
"PRE": "selectedTask status is AWAITING_INPUT.",
@@ -1209,14 +3047,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 167
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 167
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleResumeMigration",
"type": "Function",
- "start_line": 207,
- "end_line": 225,
+ "tier": "STANDARD",
+ "start_line": 191,
+ "end_line": 209,
"tags": {
"PURPOSE": "Resumes a migration task with provided passwords.",
"PRE": "event.detail contains passwords.",
@@ -1226,14 +3077,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 191
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 191
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "startMigration",
"type": "Function",
- "start_line": 227,
- "end_line": 294,
+ "tier": "STANDARD",
+ "start_line": 211,
+ "end_line": 266,
"tags": {
"PURPOSE": "Starts the migration process.",
"PRE": "sourceEnvId and targetEnvId must be set and different.",
@@ -1243,20 +3107,163 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 211
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 211
+ }
+ ],
+ "score": 0.8
+ }
+ },
+ {
+ "name": "DashboardSelectionSection",
+ "type": "Component",
+ "tier": "STANDARD",
+ "start_line": 306,
+ "end_line": 319,
+ "tags": {},
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @PURPOSE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @LAYER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @SEMANTICS (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @PURPOSE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @LAYER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @SEMANTICS (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ },
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 306
+ }
+ ],
+ "score": 0.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 25
+ },
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 26
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 176
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 176
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 176
+ },
+ {
+ "store": "selectedTask",
+ "type": "WRITES_TO",
+ "line": 177
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 183
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 183
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 196
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 200
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 271
+ },
+ {
+ "store": "selectedTask",
+ "type": "READS_FROM",
+ "line": 275
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 280
+ }
+ ]
},
{
"name": "MappingManagement",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 194,
+ "end_line": 180,
"tags": {
"SEMANTICS": "mapping, management, database, fuzzy-matching",
"PURPOSE": "Page for managing database mappings between environments.",
@@ -1269,8 +3276,9 @@
{
"name": "fetchEnvironments",
"type": "Function",
- "start_line": 35,
- "end_line": 50,
+ "tier": "STANDARD",
+ "start_line": 36,
+ "end_line": 49,
"tags": {
"PURPOSE": "Fetches the list of environments.",
"PRE": "None.",
@@ -1280,14 +3288,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 36
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 36
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "fetchDatabases",
"type": "Function",
- "start_line": 54,
- "end_line": 90,
+ "tier": "STANDARD",
+ "start_line": 53,
+ "end_line": 83,
"tags": {
"PURPOSE": "Fetches databases from both environments and gets suggestions.",
"PRE": "sourceEnvId and targetEnvId must be set.",
@@ -1297,14 +3318,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 53
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleUpdate",
"type": "Function",
- "start_line": 92,
- "end_line": 128,
+ "tier": "STANDARD",
+ "start_line": 85,
+ "end_line": 114,
"tags": {
"PURPOSE": "Saves a mapping to the backend.",
"PRE": "event.detail contains sourceUuid and targetUuid.",
@@ -1314,24 +3348,57 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 85
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 85
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 18
+ },
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 19
+ }
+ ]
},
{
"name": "StoragePage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 198,
+ "end_line": 213,
"tags": {
+ "TIER": "STANDARD",
"SEMANTICS": "storage, files, management",
"PURPOSE": "Main page for file storage management.",
- "LAYER": "Feature",
+ "LAYER": "UI",
"RELATION": "CONTAINS -> FileUpload",
"INVARIANT": "Always displays tabs for Backups and Repositories."
},
@@ -1340,8 +3407,9 @@
{
"name": "loadFiles",
"type": "Function",
- "start_line": 23,
- "end_line": 58,
+ "tier": "STANDARD",
+ "start_line": 25,
+ "end_line": 60,
"tags": {
"PURPOSE": "Fetches the list of files from the server.",
"POST": "Updates the `files` array with the latest data."
@@ -1349,18 +3417,38 @@
"relations": [],
"children": [],
"compliance": {
- "valid": false,
+ "valid": true,
"issues": [
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @PRE"
- ]
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 25
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 25
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 25
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 25
+ }
+ ],
+ "score": 0.5333333333333333
}
},
{
"name": "handleDelete",
"type": "Function",
- "start_line": 60,
- "end_line": 77,
+ "tier": "STANDARD",
+ "start_line": 62,
+ "end_line": 79,
"tags": {
"PURPOSE": "Handles the file deletion process.",
"PARAM": "{CustomEvent} event - The delete event containing category and path."
@@ -1368,20 +3456,48 @@
"relations": [],
"children": [],
"compliance": {
- "valid": false,
+ "valid": true,
"issues": [
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST",
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST"
- ]
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 62
+ }
+ ],
+ "score": 0.26666666666666655
}
},
{
"name": "handleNavigate",
"type": "Function",
- "start_line": 79,
- "end_line": 88,
+ "tier": "STANDARD",
+ "start_line": 81,
+ "end_line": 90,
"tags": {
"PURPOSE": "Updates the current path and reloads files when navigating into a directory.",
"PARAM": "{CustomEvent} event - The navigation event containing the new path."
@@ -1389,61 +3505,145 @@
"relations": [],
"children": [],
"compliance": {
- "valid": false,
+ "valid": true,
"issues": [
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST",
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST"
- ]
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ },
+ {
+ "message": "Missing Mandatory Tag: @PRE (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ },
+ {
+ "message": "Missing Mandatory Tag: @POST (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 81
+ }
+ ],
+ "score": 0.26666666666666655
}
},
{
"name": "navigateUp",
"type": "Function",
- "start_line": 90,
- "end_line": 101,
+ "tier": "STANDARD",
+ "start_line": 92,
+ "end_line": 105,
"tags": {
- "PURPOSE": "Navigates one level up in the directory structure."
+ "PURPOSE": "Navigates one level up in the directory structure.",
+ "PRE": "currentPath is set and deeper than activeTab root.",
+ "POST": "currentPath is moved up one directory level."
},
"relations": [],
"children": [],
"compliance": {
- "valid": false,
+ "valid": true,
"issues": [
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST",
- "Missing Mandatory Tag: @PRE",
- "Missing Mandatory Tag: @POST"
- ]
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 92
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 92
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
- },
- {
- "name": "SearchPage",
- "type": "Component",
- "start_line": 1,
- "end_line": 25,
- "tags": {
- "SEMANTICS": "search, page, tool",
- "PURPOSE": "Page for the dataset search tool.",
- "LAYER": "UI"
+ "issues": [],
+ "score": 1.0
},
- "relations": [],
- "children": [],
- "compliance": {
- "valid": true,
- "issues": []
- }
+ "data_flow": [
+ {
+ "store": "app",
+ "type": "READS_FROM",
+ "line": 17
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 55
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 69
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 73
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 76
+ },
+ {
+ "store": "page",
+ "type": "WRITES_TO",
+ "line": 108
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 132
+ },
+ {
+ "store": "t",
+ "type": "WRITES_TO",
+ "line": 135
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 155
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 155
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 169
+ },
+ {
+ "store": "t",
+ "type": "READS_FROM",
+ "line": 175
+ }
+ ]
},
{
"name": "MapperPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 25,
"tags": {
@@ -1455,12 +3655,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 10
+ }
+ ]
},
{
"name": "DebugPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 25,
"tags": {
@@ -1472,14 +3687,29 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 10
+ }
+ ]
},
{
"name": "handleSaveGlobal",
"type": "Function",
- "start_line": 26,
- "end_line": 42,
+ "tier": "STANDARD",
+ "start_line": 46,
+ "end_line": 62,
"tags": {
"PURPOSE": "Saves global application settings.",
"PRE": "settings.settings must contain valid configuration.",
@@ -1489,14 +3719,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 46
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "handleSaveStorage",
"type": "Function",
- "start_line": 44,
- "end_line": 60,
+ "tier": "STANDARD",
+ "start_line": 64,
+ "end_line": 80,
"tags": {
"PURPOSE": "Saves storage-specific settings.",
"PRE": "settings.settings.storage must contain valid configuration.",
@@ -1506,14 +3744,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 64
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "handleAddOrUpdateEnv",
"type": "Function",
- "start_line": 62,
- "end_line": 88,
+ "tier": "STANDARD",
+ "start_line": 82,
+ "end_line": 108,
"tags": {
"PURPOSE": "Adds a new environment or updates an existing one.",
"PRE": "newEnv must contain valid environment details.",
@@ -1523,14 +3769,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 82
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "handleDeleteEnv",
"type": "Function",
- "start_line": 90,
- "end_line": 109,
+ "tier": "STANDARD",
+ "start_line": 110,
+ "end_line": 129,
"tags": {
"PURPOSE": "Deletes a Superset environment.",
"PRE": "id must be a valid environment ID.",
@@ -1540,14 +3794,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 110
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "handleTestEnv",
"type": "Function",
- "start_line": 111,
- "end_line": 132,
+ "tier": "STANDARD",
+ "start_line": 131,
+ "end_line": 152,
"tags": {
"PURPOSE": "Tests the connection to a Superset environment.",
"PRE": "id must be a valid environment ID.",
@@ -1557,14 +3819,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 131
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "editEnv",
"type": "Function",
- "start_line": 134,
- "end_line": 143,
+ "tier": "STANDARD",
+ "start_line": 154,
+ "end_line": 163,
"tags": {
"PURPOSE": "Populates the environment form for editing.",
"PRE": "env object must be provided.",
@@ -1574,14 +3844,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 154
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "resetEnvForm",
"type": "Function",
- "start_line": 145,
- "end_line": 161,
+ "tier": "STANDARD",
+ "start_line": 165,
+ "end_line": 181,
"tags": {
"PURPOSE": "Resets the environment creation/edit form to default state.",
"PRE": "None.",
@@ -1591,14 +3869,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 165
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "load",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 3,
- "end_line": 28,
+ "end_line": 34,
"tags": {
"PURPOSE": "Loads application settings and environment list.",
"PRE": "API must be reachable.",
@@ -1609,12 +3895,20 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 3
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "ConnectionsSettingsPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 40,
"tags": {
@@ -1627,6 +3921,7 @@
{
"name": "handleSuccess",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 13,
"end_line": 23,
"tags": {
@@ -1638,18 +3933,38 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 13
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 13
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "GitSettingsPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 182,
"tags": {
@@ -1664,6 +3979,7 @@
{
"name": "loadConfigs",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 33,
"end_line": 46,
"tags": {
@@ -1675,12 +3991,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 33
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 33
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleTest",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 50,
"end_line": 71,
"tags": {
@@ -1692,12 +4021,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 50
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 50
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleSave",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 73,
"end_line": 89,
"tags": {
@@ -1709,12 +4051,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 73
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 73
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleDelete",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 91,
"end_line": 108,
"tags": {
@@ -1727,20 +4082,52 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 91
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 91
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 17
+ },
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 18
+ }
+ ]
},
{
"name": "GitDashboardPage",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 96,
+ "end_line": 93,
"tags": {
"PURPOSE": "Dashboard management page for Git integration.",
"LAYER": "Page",
@@ -1751,8 +4138,9 @@
{
"name": "fetchEnvironments",
"type": "Function",
- "start_line": 21,
- "end_line": 39,
+ "tier": "STANDARD",
+ "start_line": 22,
+ "end_line": 38,
"tags": {
"PURPOSE": "Fetches the list of deployment environments from the API.",
"PRE": "Component is mounted.",
@@ -1762,14 +4150,27 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 22
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 22
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "fetchDashboards",
"type": "Function",
- "start_line": 41,
- "end_line": 59,
+ "tier": "STANDARD",
+ "start_line": 40,
+ "end_line": 56,
"tags": {
"PURPOSE": "Fetches dashboards for a specific environment.",
"PRE": "`envId` is a valid environment ID.",
@@ -1779,18 +4180,50 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 40
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 13
+ },
+ {
+ "store": "lib",
+ "type": "READS_FROM",
+ "line": 14
+ }
+ ]
},
{
"name": "Dashboard",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 64,
"tags": {
@@ -1806,6 +4239,7 @@
{
"name": "onMount",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 17,
"end_line": 27,
"tags": {
@@ -1817,12 +4251,14 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
},
{
"name": "selectPlugin",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 29,
"end_line": 40,
"tags": {
@@ -1835,18 +4271,45 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 29
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 29
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
- }
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
+ },
+ "data_flow": [
+ {
+ "store": "plugins",
+ "type": "READS_FROM",
+ "line": 47
+ }
+ ]
},
{
"name": "Settings",
"type": "Component",
+ "tier": "STANDARD",
"start_line": 1,
"end_line": 340,
"tags": {
@@ -1863,6 +4326,7 @@
{
"name": "loadSettings",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 49,
"end_line": 66,
"tags": {
@@ -1874,12 +4338,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 49
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 49
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleSaveGlobal",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 68,
"end_line": 85,
"tags": {
@@ -1891,12 +4368,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 68
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 68
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleAddOrUpdateEnv",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 87,
"end_line": 111,
"tags": {
@@ -1908,12 +4398,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 87
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 87
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleDeleteEnv",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 113,
"end_line": 134,
"tags": {
@@ -1926,12 +4429,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 113
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 113
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "handleTestEnv",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 136,
"end_line": 159,
"tags": {
@@ -1944,12 +4460,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 136
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 136
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "editEnv",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 161,
"end_line": 172,
"tags": {
@@ -1962,12 +4491,25 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 161
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 161
+ }
+ ],
+ "score": 0.8
}
},
{
"name": "resetEnvForm",
"type": "Function",
+ "tier": "STANDARD",
"start_line": 174,
"end_line": 195,
"tags": {
@@ -1979,20 +4521,40 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 174
+ },
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 174
+ }
+ ],
+ "score": 0.8
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "getConnections",
"type": "Function",
- "start_line": 7,
- "end_line": 23,
+ "tier": "STANDARD",
+ "start_line": 9,
+ "end_line": 21,
"tags": {
"PURPOSE": "Fetch a list of saved connections.",
"PRE": "None.",
@@ -2003,14 +4565,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 9
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "createConnection",
"type": "Function",
- "start_line": 25,
- "end_line": 50,
+ "tier": "STANDARD",
+ "start_line": 23,
+ "end_line": 36,
"tags": {
"PURPOSE": "Create a new connection configuration.",
"PRE": "connectionData must be a valid object.",
@@ -2022,14 +4592,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 23
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "deleteConnection",
"type": "Function",
- "start_line": 52,
- "end_line": 70,
+ "tier": "STANDARD",
+ "start_line": 38,
+ "end_line": 50,
"tags": {
"PURPOSE": "Delete a connection configuration.",
"PRE": "connectionId must be a valid string.",
@@ -2040,14 +4618,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 38
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "GitServiceClient",
"type": "Module",
+ "tier": "STANDARD",
"start_line": 1,
- "end_line": 325,
+ "end_line": 258,
"tags": {
"SEMANTICS": "git, service, api, client",
"PURPOSE": "API client for Git operations, managing the communication between frontend and backend.",
@@ -2059,8 +4645,9 @@
{
"name": "gitService",
"type": "Action",
- "start_line": 11,
- "end_line": 323,
+ "tier": "STANDARD",
+ "start_line": 13,
+ "end_line": 256,
"tags": {
"PURPOSE": "Retrieves the diff for specific files or the whole repository.",
"PRE": "dashboardId must be a valid integer.",
@@ -2072,20 +4659,29 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [],
+ "score": 1.0
}
}
],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Mandatory Tag: @TIER (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 1
+ }
+ ],
+ "score": 0.85
}
},
{
"name": "runTask",
"type": "Function",
- "start_line": 7,
- "end_line": 33,
+ "tier": "STANDARD",
+ "start_line": 9,
+ "end_line": 23,
"tags": {
"PURPOSE": "Start a new task for a given plugin.",
"PRE": "pluginId and params must be provided.",
@@ -2097,14 +4693,22 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 9
+ }
+ ],
+ "score": 0.9
}
},
{
"name": "getTaskStatus",
"type": "Function",
- "start_line": 35,
- "end_line": 52,
+ "tier": "STANDARD",
+ "start_line": 25,
+ "end_line": 38,
"tags": {
"PURPOSE": "Fetch details for a specific task (to poll status or get result).",
"PRE": "taskId must be provided.",
@@ -2116,14 +4720,450 @@
"children": [],
"compliance": {
"valid": true,
- "issues": []
+ "issues": [
+ {
+ "message": "Missing Belief State Logging: Function should use console.log with [ID][STATE] (required for STANDARD tier)",
+ "severity": "WARNING",
+ "line_number": 25
+ }
+ ],
+ "score": 0.9
+ }
+ },
+ {
+ "name": "adminService",
+ "type": "Module",
+ "tier": "STANDARD",
+ "start_line": 1,
+ "end_line": 241,
+ "tags": {
+ "TIER": "STANDARD",
+ "SEMANTICS": "admin, users, roles, ad-mappings, api",
+ "PURPOSE": "Service for Admin-related API calls (User and Role management).",
+ "LAYER": "Service",
+ "INVARIANT": "All requests must include valid Admin JWT token (handled by api client)."
+ },
+ "relations": [
+ {
+ "type": "DEPENDS_ON",
+ "target": "frontend.src.lib.api"
+ }
+ ],
+ "children": [
+ {
+ "name": "getUsers",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 15,
+ "end_line": 34,
+ "tags": {
+ "PURPOSE": "Fetches all registered users from the backend.",
+ "PRE": "User must be authenticated with Admin privileges.",
+ "POST": "Returns an array of user objects.",
+ "RETURNS": "{Promise}",
+ "RELATION": "CALLS -> backend.src.api.routes.admin.list_users"
+ },
+ "relations": [],
+ "children": [],
+ "compliance": {
+ "valid": true,
+ "issues": [],
+ "score": 1.0
+ }
+ },
+ {
+ "name": "createUser",
+ "type": "Function",
+ "tier": "STANDARD",
+ "start_line": 36,
+ "end_line": 56,
+ "tags": {
+ "PURPOSE": "Creates a new local user.",
+ "PRE": "User must be authenticated with Admin privileges.",
+ "PARAM": "{Object} userData - User details (username, email, password, roles, is_active).",
+ "POST": "New user record created in auth.db.",
+ "RETURNS": "{Promise