Guía de la versión preliminar · 0.1.0

Cómo se organiza CodeSecurity

Sigue los permisos del código, los trabajos duraderos y la evidencia de los analizadores a través del entorno local.

La referencia de la API está en inglés.

CodeSecurity es un entorno de seguridad local con dos clientes: el panel del navegador y la extensión VS Code. FastAPI sirve la aplicación React compilada y la API de control. PostgreSQL conserva el estado. Un worker separado ejecuta comandos duraderos contra el analizador, el actualizador de datos y el conector Advisor opcional.

Sigue un análisis desde el código guardado hasta la evidencia conservada. Cada servicio tiene una función acotada y su propio límite de permisos.

Sigue un análisis por el sistema

Entorno local / mapa de serviciosDiagrama

Clientes del operador

  • Navegador

    Sesión de operador asociada y entorno web.

  • VS Code

    Un perfil aprobado con capacidades acotadas.

Entrada local y estado duradero

  • Relé loopback

    Publica el punto TCP local sin secretos de ejecución ni montajes persistentes.

  • FastAPI + React

    Sirve el entorno y comprueba solicitudes de control. No tiene socket Docker.

  • PostgreSQL

    Conserva estado, comandos, trabajos, hallazgos y política.

  • Worker de trabajos

    Reclama trabajo duradero y coordina su resultado.

Servicios de ejecución acotada

  • Analizador

    Lee código autorizado y datos validados en una red interna.

  • Actualizador

    Obtiene datos revisados sin montar código de proyectos.

  • Conector Advisor

    Ejecuta solicitudes opcionales con concesiones exactas.

Datos y proveedor opcional

  • Caché validada del analizador

    Los lectores usan una generación seleccionada de solo lectura.

  • Proveedor Ollama autorizado

    Destino local o remoto autorizado explícitamente.

Conexiones

  • Navegador a Relé loopback

    El navegador entra por el punto loopback.

  • VS Code a Relé loopback

    El editor usa el mismo punto con sus propios permisos.

  • Relé loopback a FastAPI + React

    El relé reenvía tráfico TCP al servicio de control.

  • FastAPI + React a PostgreSQL

    El estado se lee y modifica mediante operaciones admitidas.

  • Worker de trabajos a PostgreSQL

    Concesiones y resultados de trabajos persisten independientemente de la página.

  • Worker de trabajos a Analizador

    El worker envía análisis acotados y recoge resultados.

  • Worker de trabajos a Actualizador

    La preparación se ejecuta aparte del análisis de código.

  • Analizador a Caché validada del analizador

    El analizador lee los datos validados seleccionados.

  • Actualizador a Caché validada del analizador

    El actualizador valida y selecciona una generación completa.

  • Worker de trabajos a Conector Advisor

    Advisor recibe una concesión exacta de proveedor.

  • Conector Advisor a Proveedor Ollama autorizado

    Solo se usan el destino y alcance autorizados.

El navegador y VS Code son clientes de una instalación local. API, worker duradero y servicios acotados tienen funciones diferentes. El tráfico opcional de proveedores usa el conector Advisor.
  1. El operador autoriza una raíz concreta o aporta una instantánea acotada admitida. Crear un proyecto registra su identidad; no concede acceso a otro directorio del host.
  2. La API comprueba alcance y preparación actuales. Registra juntos análisis y trabajo duradero.
  3. El worker reclama el trabajo con una concesión temporal. El analizador vuelve a validar el acceso y ejecuta herramientas habilitadas sobre la vista capturada y la generación validada de datos.
  4. La salida nativa se convierte en hallazgos acotados, normalizados y con datos sensibles ocultos. El worker valida manifiesto y páginas, y confirma evidencia admitida y punto de recuperación en PostgreSQL.
  5. Solo después confirma la recepción del resultado exacto al analizador para borrar salida temporal. La evidencia completa puede evaluarse con la política del proyecto.
  6. Los clientes recargan recursos autoritativos al cambiar trabajos y hallazgos. Consejos opcionales y decisiones humanas son acciones separadas; no aportan cobertura ausente.

El capítulo de trabajos y evidencias sigue los fallos y recuperaciones de estos pasos.

Sitúa los permisos en cada límite

Compose expone una dirección loopback mediante un relé TCP sin privilegios. El relé reenvía a la API y no tiene montajes persistentes ni configuración de secretos de ejecución. La API no tiene socket Docker. Sesiones de navegador y capacidades del editor entran por el mismo límite de control con reglas de autenticación distintas.

Componente Lecturas y escrituras Función
API de control PostgreSQL, instantáneas acotadas y artefactos admitidos Autoriza comandos, sirve recursos y registra estado duradero. No tiene código de proyectos montado.
Worker PostgreSQL y almacenamiento de artefactos; instantáneas de solo lectura Gestiona ejecución, concesiones temporales, progreso, cancelación y persistencia.
Analizador Código autorizado, instantáneas y caché validada de solo lectura; espacio temporal privado y salida de artefactos Ejecuta herramientas fijadas y publica un protocolo de resultados acotado.
Actualizador de datos Caché escribible; fuentes de descarga revisadas Prepara y activa generaciones completas sin montar código de proyectos.
Conector Advisor Autorización dedicada y rutas de proveedor aprobadas Ejecuta trabajo Ollama local o remoto con permisos acotados.

El analizador usa una red interna. Actualizador y conector tienen redes de salida separadas. El worker llama al conector para modelos locales y remotos; no envía prompts directamente a Ollama. Son límites definidos en el código de despliegue. Imágenes, montajes efectivos y salida real aún necesitan verificación en la instalación evaluada.

Consulta permisos de código y clientes para las decisiones y servicios internos para sus protocolos.

Separa tipos distintos de estado

Pregunta Estado autoritativo Qué no implica
¿Se aceptó el comando? Identidad duradera de trabajo y comando Que empezara o terminara correctamente.
¿Está completo el análisis? Estado, resultados de herramientas y resumen de cobertura Que se comprobara toda vulnerabilidad posible.
¿Cómo se revisó un hallazgo? Decisión, razón y revisión Que se verificara un archivo editado o que otro análisis herede la decisión.
¿Cumple la evidencia la política? Decisión del control sobre evidencia completa Que haya protección instalada o un push autorizado.
¿Puede continuar este push protegido? Permisos actuales, árboles salientes, evidencia y política Que el hook local sea imposible de eludir.

La separación hace visible un análisis incompleto aunque todos sus hallazgos estén suprimidos. También evita sustituir comprobaciones de commits salientes anteriores por una aprobación del árbol de trabajo. Lee hallazgos, controles y protección Git para los flujos del operador.

Entiende qué se conserva

PostgreSQL conserva proyectos, análisis, hallazgos normalizados, políticas y trabajos. Volúmenes con nombre guardan artefactos admitidos, datos e instantáneas. Los informes nativos y la cola de transporte del analizador tienen vidas temporales acotadas. Abrir o cerrar una página no controla la vida del trabajo.

Es un diseño duradero, no una garantía de recuperación de desastres. El código documenta un auxiliar de copia experimental, no atómico y deshabilitado por defecto. Un procedimiento de recuperación probado necesita evidencia e inputs exactos propios.

Los perfiles opcionales de monitorización, proxy Git local y administración de base están desactivados por defecto. No forman parte de los permisos de la API principal ni convierten el entorno en un servicio alojado.

Lee la implementación por responsabilidad

Área Punto de partida
Servicios, montajes y redes Compose
Control y persistencia Aplicación API, modelo de datos
Ejecución y preparación Arquitectura de análisis
Actualizaciones de navegador y editor Eventos y reconciliación
Contribuciones Puntos de extensión

La política de seguridad define los supuestos de confianza. CodeSecurity no es un sandbox para repositorios hostiles. Aprobar un control es un resultado de política sobre evidencia admitida, no una garantía de código seguro.