diff --git a/KNOWLEDGE_BASE.md b/KNOWLEDGE_BASE.md new file mode 100644 index 0000000..72a4d5c --- /dev/null +++ b/KNOWLEDGE_BASE.md @@ -0,0 +1,196 @@ +# Polyglot Codebase Knowledge Graph + +> Generated offline by **readmenator**. 2 files, 0 symbols, 0 imports. Supports C, C++, Python, Go, Rust, JS/TS, Java, C#, Shell, PHP, Dart, GDScript, Nim, ASM, Ruby, Swift, Kotlin, Scala, Lua, Elixir. +> No LLMs. No tokens. Pure static analysis. See more [here](https://github.com/grisuno/ReadMenator) + +**Start here:** Statistics Dashboard for scope, God Nodes for blast radius, Architecture Reference for per-file API. Agents: prefer `readmenator-agent/INDEX.md` + `SYMBOLS.md`. + +**Total Files Parsed:** 2 | **Total Symbols Extracted:** 0 | **Total Imports:** 0 + + + + +## Table of Contents + +1. [Statistics Dashboard](#statistics-dashboard) +2. [Architectural Layers](#architectural-layers) +3. [Ranked Context](#ranked-context) +4. [God Nodes](#god-nodes) +5. [Suggested Questions](#suggested-questions) +6. [Hotspot Analysis](#hotspot-analysis) +7. [Change Impact Analysis](#change-impact-analysis) +8. [Orphans](#orphans) +9. [Query Recipes](#query-recipes) +10. [Structural Knowledge Map](#structural-knowledge-map) +11. [UML Class Diagram](#uml-class-diagram) +12. [Code Property Graph](#code-property-graph) +13. [Architecture Reference](#architecture-reference) + - [PY (1 files)](#py-1-files) + - [SH (1 files)](#sh-1-files) + +--- + +## Statistics Dashboard + +| Metric | Value | +|--------|-------| +| Total Files | 2 | +| Total Symbols | 0 | +| Total Imports | 0 | +| Call Edges | 0 | +| Inheritance Edges | 0 | +| Languages | 2 | +| Avg Symbols/File | 0.0 | +| Avg Imports/File | 0.0 | + +--- + +## Architectural Layers + +Auto-detected from path patterns, naming conventions, and imported frameworks. + +| Layer | Files | +|-------|-------| +| utility | 2 | + +### utility + +- `app.py` (py, 0 symbols) +- `install.sh` (sh, 0 symbols) + +--- + +## Ranked Context + +Files ranked by composite score for the current query context. The ranking combines Personalized PageRank (query relevance), global authority, test coverage, documentation coverage, and code freshness. Model: v1.0. + +| Rank | File | Composite | PPR | Authority | Test | Doc | +|------|------|-----------|-----|-----------|------|-----| +| 1 | `app.py` | 0.1000 | 0.0000 | 0.0000 | 0.00 | 1.00 | +| 2 | `install.sh` | 0.0000 | 0.0000 | 0.0000 | 0.00 | 0.00 | + +--- + +## God Nodes + +Most architecturally central files ranked by combined import/export degree and symbol richness. + +| File | Score | Connections | PageRank | +|------|-------|-------------|----------| +| `app.py` | 0.0 | | 0.0000 | +| `install.sh` | 0.0 | | 0.0000 | + +--- + +## Suggested Questions + +Auto-generated exploration prompts based on graph structure: + +- What does app.py depend on, and what depends on it? (0 connections) +- What does install.sh depend on, and what depends on it? (0 connections) +- What is the overall architecture of this codebase? + +--- + +## Hotspot Analysis + +Files ranked by combined complexity (symbol count) and centrality (connection count). High-scoring files are architecturally critical and may need refactoring attention. + +| File | Complexity | Centrality | Combined | Symbols | Connections | +|------|-----------|------------|----------|---------|-------------| +| `app.py` | 0.000 | 0.000 | 0.000 | 0 | 0 | +| `install.sh` | 0.000 | 0.000 | 0.000 | 0 | 0 | + +--- + +## Change Impact Analysis + +Files sorted by how many other files would be affected if they changed. High-impact files should be changed with caution. + +| File | Direct Dependents | Transitive Dependents | Total Impact | +|------|------------------|----------------------|--------------| +| `app.py` | 0 | 0 | 0 | +| `install.sh` | 0 | 0 | 0 | + +--- + +## Orphans + +Files with no documentation or low connectivity. These are candidates for documentation investment or cleanup. + +- `install.sh` (0 symbols, no doc) + +--- + +## Query Recipes + +Example queries you can run against this knowledge base using the ranking engine: + +``` +# Find files most relevant to a concept +readmenator query "Where is the import resolver implemented?" + +# Rank files by relevance to a topic +readmenator query "How does documentation generation work?" + +# Explain why a file ranks highly +readmenator query "explain readmenator/_documentation.py" + +# Trace dependency paths with ranked context +readmenator query "path from CLI to exporter" +``` + +The ranking model uses the following signals: + +- **Personalized PageRank** (45% weight): query-specific relevance via seed propagation +- **Global Authority** (20% weight): structural importance via standard PageRank +- **Test Coverage** (15% weight): fraction of symbols referenced in test files +- **Doc Coverage** (10% weight): presence of docstrings and file-level docs +- **Freshness** (10% weight): recent modification activity + +Results include score decomposition and justification paths for each ranked item. + +--- + +## Structural Knowledge Map + +```mermaid +graph TD + classDef mod fill:#1e1e1e,stroke:#ff6666,stroke-width:2px,color:#fff; + classDef cls fill:#2d2d2d,stroke:#4ec9b0,stroke-width:2px,color:#fff; + classDef fn fill:#333,stroke:#dcdcaa,stroke-width:1px,color:#dcdcaa; + classDef ext fill:#111,stroke:#666,stroke-dasharray:5 5,color:#aaa; + app_py["app.py (py)"] + class app_py mod; + install_sh["install.sh (sh)"] + class install_sh mod; +``` + +--- + +## Code Property Graph + +Machine-readable Code Property Graph (CPG) in JSON-LD format. This block allows AI agents to parse the full structural graph without additional file reads. Compatible with GraphRAG pipelines. + +```json +{"@context": "https://schema.org", "analysis": {"communities": [], "god_nodes": [{"node_id": "app.py", "score": 0.0}, {"node_id": "install.sh", "score": 0.0}], "surprising_connections": []}, "edges": [], "generator": "readmenator", "metadata": {"edge_count": 0, "file_count": 2, "language_count": 2, "symbol_count": 0}, "nodes": [{"doc": "_*_ coding: utf8 _*_", "id": "app.py", "kind": "module", "label": "app.py", "language": "py", "sha256": "57b21bdb023585b8", "symbol_count": 0, "symbols": []}, {"id": "install.sh", "kind": "module", "label": "install.sh", "language": "sh", "sha256": "c907d80fd6734993", "symbol_count": 0, "symbols": []}], "type": "CodePropertyGraph", "version": "1.0"} +``` + +--- + +## Architecture Reference + +### PY (1 files) + +#### `app.py` +**Path:** `app.py` +**File Doc:** *_*_ coding: utf8 _*_* + +*No symbols extracted* + +### SH (1 files) + +#### `install.sh` +**Path:** `install.sh` + +*No symbols extracted* diff --git a/issues/README.md b/issues/README.md new file mode 100644 index 0000000..40bdf28 --- /dev/null +++ b/issues/README.md @@ -0,0 +1,19 @@ +# Repository: template + +**Description:** template for the future proyects ;) + +| Metric | Value | +|--------|-------| +| Stars | 0 | +| Clones (last 14 days) | 41 | +| Open Issues | 2 | +| Total Issues | 0 | +| Dependabot Open Alerts | 0 | +| CodeScan Open Alerts | 1 | + +## Issues + +## Code Scanning Alerts +- [CodeScan #0](./codescan/alert_0.md) - N/A (N/A) - unknown + +Total issues downloaded: 0 diff --git a/issues/codescan/alert_0.md b/issues/codescan/alert_0.md new file mode 100644 index 0000000..ff8739e --- /dev/null +++ b/issues/codescan/alert_0.md @@ -0,0 +1,10 @@ +# Code Scanning Alert #0: N/A + +- **State:** unknown +- **Severity:** N/A +- **Tool:** unknown +- **Created:** +- **URL:** + +## Description + diff --git a/readmenator-agent/API.md b/readmenator-agent/API.md new file mode 100644 index 0000000..0286047 --- /dev/null +++ b/readmenator-agent/API.md @@ -0,0 +1,3 @@ +# API + +No public functions detected. \ No newline at end of file diff --git a/readmenator-agent/ARCHITECTURE.md b/readmenator-agent/ARCHITECTURE.md new file mode 100644 index 0000000..8f41542 --- /dev/null +++ b/readmenator-agent/ARCHITECTURE.md @@ -0,0 +1,9 @@ +# Architecture + +## Internal Dependencies + +- (no internal resolved imports) + +## External Imports + +- (no external imports detected) diff --git a/readmenator-agent/GOTCHAS.md b/readmenator-agent/GOTCHAS.md new file mode 100644 index 0000000..c98cea9 --- /dev/null +++ b/readmenator-agent/GOTCHAS.md @@ -0,0 +1,13 @@ +# Gotchas + +## God Nodes (high connectivity) + +These files have the most connections. Changes here have high blast radius. + +- `app.py` (score: 0.00) +- `install.sh` (score: 0.00) + +## Hotspots (complexity + centrality) + +- `app.py` -- complexity: 0.0, centrality: 0.0, combined: 0.0 +- `install.sh` -- complexity: 0.0, centrality: 0.0, combined: 0.0 diff --git a/readmenator-agent/INDEX.md b/readmenator-agent/INDEX.md new file mode 100644 index 0000000..686a8f2 --- /dev/null +++ b/readmenator-agent/INDEX.md @@ -0,0 +1,6 @@ +# Index + +| File | Purpose | Subsystem | Symbols | +|------|---------|-----------|---------| +| `app.py` | _*_ coding: utf8 _*_ | root | 0 | +| `install.sh` | - | root | 0 | diff --git a/readmenator-agent/KB_root.md b/readmenator-agent/KB_root.md new file mode 100644 index 0000000..f0843a3 --- /dev/null +++ b/readmenator-agent/KB_root.md @@ -0,0 +1,10 @@ +# Subsystem: root + +## app.py +- Layer: utility +- Doc: _*_ coding: utf8 _*_ +- Language: py + +## install.sh +- Layer: utility +- Language: sh diff --git a/readmenator-agent/MANIFEST.json b/readmenator-agent/MANIFEST.json new file mode 100644 index 0000000..b8c0e93 --- /dev/null +++ b/readmenator-agent/MANIFEST.json @@ -0,0 +1,22 @@ +{ + "tool": "readmenator", + "generated_at": "2026-09-11T05:54:51Z", + "project_root": "/tmp/push_template_20260911_012907", + "files": 2, + "symbols": 0, + "imports": 0, + "resolved_imports": 0, + "security_findings": 0, + "languages": { + "py": 1, + "sh": 1 + }, + "entrypoints": [], + "start_here": "INDEX.md", + "workflow": [ + "grep -n '' INDEX.md", + "cat KB_.md", + "grep -n '' ARCHITECTURE.md SYMBOLS.md" + ], + "regenerate": "readmenator . --rebuild" +} \ No newline at end of file diff --git a/readmenator-agent/SECURITY.md b/readmenator-agent/SECURITY.md new file mode 100644 index 0000000..e552b09 --- /dev/null +++ b/readmenator-agent/SECURITY.md @@ -0,0 +1,3 @@ +# Security Findings + +No security findings. \ No newline at end of file diff --git a/readmenator-agent/SYMBOLS.md b/readmenator-agent/SYMBOLS.md new file mode 100644 index 0000000..cdedf3d --- /dev/null +++ b/readmenator-agent/SYMBOLS.md @@ -0,0 +1,4 @@ +# Symbols + +| Symbol | Kind | File:Line | Signature | +|--------|------|-----------|-----------| diff --git a/readmenator-agent/recipes/add-function.md b/readmenator-agent/recipes/add-function.md new file mode 100644 index 0000000..9dfc507 --- /dev/null +++ b/readmenator-agent/recipes/add-function.md @@ -0,0 +1,8 @@ +# Recipe: Add a Function + +1. Find the target file: `grep -rn 'TODO\|FIXME' readmenator-agent/INDEX.md` +2. Read the subsystem context: `cat readmenator-agent/KB_.md` +3. Check dependencies: `grep -n '' readmenator-agent/ARCHITECTURE.md` +4. Edit the file +5. Regenerate: `readmenator .` + diff --git a/readmenator-agent/recipes/fix-cycle.md b/readmenator-agent/recipes/fix-cycle.md new file mode 100644 index 0000000..ef61f39 --- /dev/null +++ b/readmenator-agent/recipes/fix-cycle.md @@ -0,0 +1,7 @@ +# Recipe: Fix a Dependency Cycle + +1. Read cycles: `grep -A5 'Dependency Cycles' readmenator-agent/GOTCHAS.md` +2. Pick the cycle to break +3. Introduce an interface/abstraction to decouple +4. Verify: `readmenator . && grep -c 'cycle' readmenator-agent/GOTCHAS.md` + diff --git a/readmenator-agent/recipes/fix-security.md b/readmenator-agent/recipes/fix-security.md new file mode 100644 index 0000000..f7567ad --- /dev/null +++ b/readmenator-agent/recipes/fix-security.md @@ -0,0 +1,7 @@ +# Recipe: Fix a Security Finding + +1. Read findings: `grep -n '' readmenator-agent/SECURITY.md` +2. Check API contract: `grep -A10 '' readmenator-agent/API.md` +3. Apply fix +4. Verify: `readmenator . --audit && grep -c 'CRITICAL\|HIGH' readmenator-agent/SECURITY.md` + diff --git a/readmenator-agent/recipes/reduce-complexity.md b/readmenator-agent/recipes/reduce-complexity.md new file mode 100644 index 0000000..8ac91f9 --- /dev/null +++ b/readmenator-agent/recipes/reduce-complexity.md @@ -0,0 +1,8 @@ +# Recipe: Reduce File Complexity + +1. Read hotspots: `grep -A5 'Hotspots' readmenator-agent/GOTCHAS.md` +2. Pick the worst offender +3. Extract functions/classes into new files in the same subsystem +4. Update imports +5. Regenerate: `readmenator .` +