diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..c1235ae --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,11 @@ +# 👮‍♂️ CODEOWNERS +# This file defines the "God Mode" approvals. + +# Global Owner (The Founder) +* @Carturo8 + +# Governance (Strict Control) +/.github/ @Carturo8 + +# Translations (The Council can review) +/es/ @Carturo8 diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..0ac3a33 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" + groups: + dependencies: + patterns: + - "*" + labels: + - "chore" + - "dependencies" diff --git a/.github/markdown-link-check-config.json b/.github/markdown-link-check-config.json new file mode 100644 index 0000000..1a89a9c --- /dev/null +++ b/.github/markdown-link-check-config.json @@ -0,0 +1,9 @@ +{ + "ignorePatterns": [ + { + "pattern": "^http://localhost" + } + ], + "timeout": "20s", + "retryOn429": true +} \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..6ac8621 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,30 @@ +name: ⚡ CI - Quality Guard + +on: + pull_request: + branches: [ "main", "develop" ] + push: + branches: [ "main", "develop" ] + +permissions: + contents: read + +jobs: + markdown-lint: + name: 📝 Lint Markdown + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Check for Broken Links + uses: gaurav-nelson/github-action-markdown-link-check@v1 + with: + use-quiet-mode: 'yes' + config-file: '.github/markdown-link-check-config.json' + folder-path: '.' + + - name: Lint Markdown Structure + uses: DavidAnson/markdownlint-cli2-action@v16 + with: + globs: "**/*.md" diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml new file mode 100644 index 0000000..0372564 --- /dev/null +++ b/.github/workflows/scorecard.yml @@ -0,0 +1,33 @@ +name: 🛡️ Security Scorecard + +on: + branch_protection_rule: + schedule: + - cron: '00 0 * * 1' + push: + branches: [ "main" ] + +permissions: read-all + +jobs: + analysis: + name: Scorecard analysis + runs-on: ubuntu-latest + permissions: + security-events: write + id-token: write + contents: read + actions: read + + steps: + - name: "Checkout code" + uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: "Run analysis" + uses: ossf/scorecard-action@v2.3.1 + with: + results_file: results.sarif + results_format: sarif + publish_results: true diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000..6073619 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,23 @@ +name: 🧹 Stale Bot (Housekeeper) + +on: + schedule: + - cron: '30 1 * * *' + +permissions: + issues: write + pull-requests: write + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v9 + with: + stale-issue-message: 'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.' + stale-pr-message: 'This PR is stale because it has been open 45 days with no activity.' + close-issue-message: 'This issue was closed because it has been stalled for 7 days with no activity.' + days-before-stale: 60 + days-before-close: 7 + days-before-pr-stale: 45 + days-before-pr-close: 7 diff --git a/.gitignore b/.gitignore index 534c5a7..21e304d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -governance/ \ No newline at end of file +interno/ \ No newline at end of file diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 0000000..5941b05 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,14 @@ +{ + "default": true, + "MD013": false, + "MD026": { + "punctuation": ".,;!" + }, + "MD033": false, + "MD041": false, + "MD030": false, + "MD001": false, + "MD042": false, + "MD022": false, + "MD032": false +} \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 27f12a4..e3e8651 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,7 @@ We strictly adhere to a **modified GitFlow**. * Example: `feature/add-pdf-compression` ### Other Branch Types + * `fix/` - For bug fixes. * `hotfix/` - For critical production bugs (merges to main). * `chore/` - Maintenance, dependencies, config. @@ -33,6 +34,7 @@ We use **Conventional Commits**. Your commit messages must follow this structure ``` **Types:** + * `feat`: A new feature * `fix`: A bug fix * `docs`: Documentation only changes @@ -53,6 +55,7 @@ We use **Conventional Commits**. Your commit messages must follow this structure 4. **Review**: Wait for approval from The Council or The Founder. ## 🚫 What We Reject + * Spaghetti code. * Commits named "fix", "update", "wip". * Secrets associated with code (API Keys, Credentials). diff --git a/README.md b/README.md index c26573b..08c43db 100644 --- a/README.md +++ b/README.md @@ -14,9 +14,10 @@ Files located here are automatically applied to all repositories within the **Hl * **Public Profile:** [profile/README.md](./profile/README.md) handles the landing page description. * **Standards:** Stores `CONTRIBUTING`, `CODE_OF_CONDUCT`, and `SECURITY` policies. -## 🗺️ Navigation -* [Community Standards](./CONTRIBUTING.md) -* [Español (Documentación)](./es/profile/README.md) +* [Community Standards (Contributing)](./CONTRIBUTING.md) +* [Code of Conduct](./CODE_OF_CONDUCT.md) +* [Security Policy](./SECURITY.md) +* [Español (Documentación)](./es/README.md) --- *Maintained by **The Founder**.* diff --git a/SECURITY.md b/SECURITY.md index 2886507..cc1c6ae 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -14,11 +14,13 @@ We only support the latest version of our utilities. **DO NOT** report security vulnerabilities through public GitHub issues. ### The Protocol + 1. **Direct Contact**: Email **The Founder** directly or open a **Security Advisory** in the repository (if enabled). 2. **Encryption**: If possible, encrypt your message. 3. **Embargo**: Do not disclose the issue publicly until we have issued a `hotfix`. ### Response + * We categorize vulnerabilities as **Threat Level: Giants** (Critical) or **Threat Level: Trolls** (Minor). * You will receive an acknowledgment within 48 hours. * Once fixed, you will be credited in the Hall of Valor (Release Notes). diff --git a/es/CODE_OF_CONDUCT.md b/es/CODE_OF_CONDUCT.md index f4db961..2b7c166 100644 --- a/es/CODE_OF_CONDUCT.md +++ b/es/CODE_OF_CONDUCT.md @@ -8,19 +8,19 @@ En interés de fomentar un ambiente abierto y acogedor, nosotros como contribuye Ejemplos de comportamiento que contribuyen a un ambiente positivo incluyen: -* Uso de lenguaje acogedor e inclusivo -* Ser respetuoso con diferentes puntos de vista y experiencias -* Aceptar elegantemente las críticas constructivas -* Enfocarse en lo que es mejor para la comunidad -* Mostrar empatía hacia otros miembros de la comunidad +* Uso de lenguaje acogedor e inclusivo +* Ser respetuoso con diferentes puntos de vista y experiencias +* Aceptar elegantemente las críticas constructivas +* Enfocarse en lo que es mejor para la comunidad +* Mostrar empatía hacia otros miembros de la comunidad Ejemplos de comportamiento inaceptable por parte de los participantes incluyen: -* El uso de lenguaje o imágenes sexualizadas y atención o avances sexuales no deseados -* Troleo, comentarios insultantes/despectivos y ataques personales o políticos -* Acoso público o privado -* Publicar información privada de otros, como una dirección física o electrónica, sin permiso explícito -* Otra conducta que razonablemente podría considerarse inapropiada en un entorno profesional +* El uso de lenguaje o imágenes sexualizadas y atención o avances sexuales no deseados +* Troleo, comentarios insultantes/despectivos y ataques personales o políticos +* Acoso público o privado +* Publicar información privada de otros, como una dirección física o electrónica, sin permiso explícito +* Otra conducta que razonablemente podría considerarse inapropiada en un entorno profesional ## Protocolos @@ -29,3 +29,6 @@ Ejemplos de comportamiento inaceptable por parte de los participantes incluyen: ## Cumplimiento Instancias de comportamiento abusivo, acosador o inaceptable pueden ser reportadas contactando al equipo del proyecto. Todas las quejas serán revisadas e investigadas y resultarán en una respuesta que se considere necesaria y adecuada a las circunstancias. El equipo del proyecto está obligado a mantener la confidencialidad con respecto al reportante de un incidente. + +--- +**[English]** For the English version of this code, see: [CODE_OF_CONDUCT.md](../CODE_OF_CONDUCT.md) diff --git a/es/CONTRIBUTING.md b/es/CONTRIBUTING.md index 8f4914b..561bf61 100644 --- a/es/CONTRIBUTING.md +++ b/es/CONTRIBUTING.md @@ -57,3 +57,6 @@ Usamos **Conventional Commits**. Tus mensajes de commit deben seguir esta estruc * Commits llamados "fix", "update", "wip". * Secretos en el código (API Keys, Credenciales). * Conducta irrespetuosa. + +--- +**[English]** For the English version of this guide, see: [CONTRIBUTING.md](../CONTRIBUTING.md) diff --git a/es/README.md b/es/README.md index f2543bd..421ba68 100644 --- a/es/README.md +++ b/es/README.md @@ -15,7 +15,9 @@ Los archivos ubicados aquí se aplican automáticamente a todos los repositorios * **Estándares:** Almacena políticas de `CONTRIBUTING`, `CODE_OF_CONDUCT`, y `SECURITY`. ## 🗺️ Navegación -* [Estándares Comunitarios](../es/CONTRIBUTING.md) +* [Estándares Comunitarios (Contribución)](./CONTRIBUTING.md) +* [Código de Conducta](./CODE_OF_CONDUCT.md) +* [Política de Seguridad](./SECURITY.md) * [English (Documentation)](../README.md) --- diff --git a/es/SECURITY.md b/es/SECURITY.md index faa231d..7e3b453 100644 --- a/es/SECURITY.md +++ b/es/SECURITY.md @@ -14,11 +14,16 @@ Solo damos soporte a la última versión de nuestras utilidades. **NO** reportes vulnerabilidades de seguridad a través de issues públicos de GitHub. ### El Protocolo + 1. **Contacto Directo**: Envía un correo a **El Fundador** directamente o abre un **Aviso de Seguridad** en el repositorio (si está habilitado). 2. **Encriptación**: Si es posible, encripta tu mensaje. 3. **Embargo**: No divulgues el problema públicamente hasta que hayamos emitido un `hotfix`. ### Respuesta + * Categorizamos las vulnerabilidades como **Nivel de Amenaza: Gigantes** (Crítico) o **Nivel de Amenaza: Trolls** (Menor). * Recibirás un acuse de recibo dentro de las 48 horas. * Una vez solucionado, serás acreditado en el Salón del Valor (Notas de Lanzamiento). + +--- +**[English]** For the English version of this policy, see: [SECURITY.md](../SECURITY.md) diff --git a/es/profile/README.md b/es/profile/README.md index 31f3a81..c51ac61 100644 --- a/es/profile/README.md +++ b/es/profile/README.md @@ -19,8 +19,8 @@ Nuestro ecosistema está estrictamente limitado a **9 Servicios Interconectados* | Reino | Estado | Designación | Función | | :--- | :--- | :--- | :--- | -| **Vanaheim** | ✨ Activo | [`simulation-audio-generator`](https://github.com/Hlid-Systems/simulation-audio-generator) | **TTS e Inteligencia de Audio** | -| **Jotunheim** | 🔨 Activo | [`text-to-pdf-service`](https://github.com/Hlid-Systems/text-to-pdf-service) | **Transformador de Documentos y PDF** | +| **Vanaheim** | ✨ Activo | `simulation-audio-generator` | **TTS e Inteligencia de Audio** | +| **Jotunheim** | 🔨 Activo | `text-to-pdf-service` | **Transformador de Documentos y PDF** | | **Midgard** | 🌫️ TBD | `[REDACTADO]` | *Oculto en la niebla* | | **Muspelheim**| 🌫️ TBD | `[REDACTADO]` | *Oculto en la niebla* | | **Niflheim** | 🌫️ TBD | `[REDACTADO]` | *Oculto en la niebla* | @@ -34,6 +34,7 @@ Nuestro ecosistema está estrictamente limitado a **9 Servicios Interconectados* --- ### 🛠️ El Estándar Técnico + Somos **Agnósticos Tecnológicamente** e **Impulsados por IA**. No nos limitamos a un solo stack; empuñamos la herramienta correcta para el trabajo, amplificada por Inteligencia Artificial moderna. * **Núcleo de Ingeniería:** GitFlow (Ramas estrictas), Conventional Commits, Protocolo de Anulación del Dueño. @@ -41,15 +42,21 @@ Somos **Agnósticos Tecnológicamente** e **Impulsados por IA**. No nos limitamo * **Infraestructura:** Cloud-Native y Serverless. ### 🔒 Política de Seguridad + Tomamos la seguridad de nuestras utilidades muy en serio. + * **Sin Secretos:** Imponemos estrictamente el uso de variables de entorno. * **Escaneo de Dependencias:** Verificaciones de vulnerabilidad automatizadas. * **Reportes:** Si encuentras una vulnerabilidad, por favor abre un aviso privado o contacta directamente a El Consejo. ### ⚖️ Licencia + * **Utilidades Públicas:** Código Abierto (**Licencia MIT**) — Gratis para que la comunidad aprenda y use. * **Datos Centrales:** Propietario (**Hlid Systems - Todos los derechos reservados**). --- *"No solo encontramos el futuro; lo construimos."* **[Equipo Hlid Systems]** + +--- +**[English]** English Version: [profile/README.md](../../profile/README.md) diff --git a/es/pull_request_template.md b/es/pull_request_template.md index d555a75..96d8da6 100644 --- a/es/pull_request_template.md +++ b/es/pull_request_template.md @@ -24,3 +24,6 @@ - [ ] He comentado mi código, particularmente en áreas difíciles de entender. - [ ] He realizado los cambios correspondientes en la documentación. - [ ] Mis cambios no generan nuevas advertencias. + +--- + diff --git a/profile/README.md b/profile/README.md index 7e0dd1b..c5ef674 100644 --- a/profile/README.md +++ b/profile/README.md @@ -19,8 +19,8 @@ Our ecosystem is strictly scoped to **9 Interconnected Services**. | Realm | Status | Designation | Function | | :--- | :--- | :--- | :--- | -| **Vanaheim** | ✨ Active | [`simulation-audio-generator`](https://github.com/Hlid-Systems/simulation-audio-generator) | **TTS & Audio Intelligence** | -| **Jotunheim** | 🔨 Active | [`text-to-pdf-service`](https://github.com/Hlid-Systems/text-to-pdf-service) | **Document & PDF Transformer** | +| **Vanaheim** | ✨ Active | `simulation-audio-generator` | **TTS & Audio Intelligence** | +| **Jotunheim** | 🔨 Active | `text-to-pdf-service` | **Document & PDF Transformer** | | **Midgard** | 🌫️ TBD | `[REDACTED]` | *Hidden in the mist* | | **Muspelheim**| 🌫️ TBD | `[REDACTED]` | *Hidden in the mist* | | **Niflheim** | 🌫️ TBD | `[REDACTED]` | *Hidden in the mist* | @@ -34,6 +34,7 @@ Our ecosystem is strictly scoped to **9 Interconnected Services**. --- ### 🛠️ The Tech Standard + We are **Technology Agnostic** and **AI-Driven**. We do not limit ourselves to a single stack; we wield the right tool for the job, amplified by modern Artificial Intelligence. * **Engineering Core:** GitFlow (Strict Branching), Conventional Commits, Owner-Override Protocol. @@ -41,15 +42,21 @@ We are **Technology Agnostic** and **AI-Driven**. We do not limit ourselves to a * **Infrastructure:** Cloud-Native & Serverless. ### 🔒 Security Policy + We take the security of our utilities seriously. + * **No Secrets:** We strictly enforce environment variable usage. * **Dependency Scanning:** Automated vulnerability checks. * **Reporting:** If you find a vulnerability, please open a private advisory or contact The Council directly. ### ⚖️ License + * **Public Utilities:** Open Source (**MIT License**) — Free for the community to learn from and use. * **Core Data:** Proprietary (**Hlid Systems - All Rights Reserved**). --- *"We do not just find the future; we build it."* **[Hlid Systems Team]** + +--- +**[Español]** Versión en Español: [es/profile/README.md](../es/profile/README.md)