Diseño técnico
Metodología y límites de seguridad
La implementación favorece la procedencia de los datos, la mutación mínima, la incertidumbre explícita y la verificación repetible en lugar de la conversión por conveniencia.
1. Identificación de entrada
El analizador no se basa exclusivamente en el nombre del archivo. Comprueba ZIP, OLE, JSON, XML y firmas de texto, luego inspecciona los miembros del paquete cuando corresponda. La normalización de rutas rechaza rutas absolutas, barras invertidas, componentes transversales, nombres normalizados duplicados, cifrado, compresión no compatible, archivos multidisco, ZIP64, recuentos de entradas excesivos, tamaño expandido excesivo y relaciones de compresión sospechosas.
2. Lectura redundante
Texto delimitado
Una máquina de estado orientada a bytes registra el intervalo de valores sin procesar de cada campo respetando los delimitadores entre comillas, las comillas escapadas y los finales de línea incrustados. Una máquina de estado de cadena decodificada separada analiza la misma entrada. Sus matrices se comparan antes de que se permita la salida con conservación de bytes.
OOXML
El lector de paquetes resuelve relaciones entre libros y hojas de trabajo, cadenas compartidas, estilos, sistemas de fechas e inventarios de contenido. Cada hoja de trabajo seleccionada se analiza una vez a través de las API DOM XML del navegador y nuevamente a través de un escáner de celdas XML sin formato. Se concilian los valores, el texto de la fórmula y los tipos de almacenamiento.
3. Coincidencia gen-símbolo
Los registros de referencia están indexados por símbolo aprobado, símbolos anteriores, alias e identificadores estables. La coincidencia se clasifica en lugar de agruparse en un solo reemplazo:
- coincidencia exacta aprobada;
- símbolo aprobado con diferencia de capitalización;
- coincidencia de símbolo anterior única o ambigua;
- coincidencia de alias única o ambigua;
- coincidencia de fecha de recuperación única o ambigua;
- entrada inigualable.
Sólo las asignaciones compatibles inequívocas son elegibles para una recomendación predeterminada. Las asignaciones de alias están deshabilitadas de forma predeterminada porque los alias suelen tener una semántica más débil que los símbolos anteriores.
4. Clasificación de riesgo Excel
Siempre que sea posible, las reglas de protección operan en la cadena original en lugar de en un número JavaScript. Detectan ceros a la izquierda, enteros largos, patrones de notación científica, formas de mes/fecha/hora, prefijos de fórmulas, ubicación problemática de comas, espacios en blanco de límites, patrones de comillas, caracteres de control y el límite de longitud de fórmula heredado Excel.
5. Rutas de salida
| Fuente | Escritor preferido | Verificación |
|---|---|---|
| UTF-8 CSV/TSV/TXT | Reemplazo de bytes sin formato para campos aprobados | Acuerdo del lector y bytes sin cambios fuera de los intervalos de parches |
| XLSX/XLSM | Reemplazo de celda XML de hoja de trabajo dentro del paquete existente | Vuelva a abrir la salida, confirme las celdas cambiadas, compare cada parte del paquete sin comprimir y no modificada y compare los bytes de macro |
| JSON/ODS o texto que no se conserva en bytes | Nuevo XLSX mínimo que utiliza texto explícito y celdas numéricas conservadoras | Manifiesto de cambio y lectura del paquete; etiquetado como conversión en lugar de preservación de la fuente |
| Escanear solo | Sin salida de datos | Paquete de auditoría con inventario, hallazgos, advertencias y metadatos de conciliación |
6. Casos bloqueados o restringidos
- Los archivos cifrados ZIP/OOXML están bloqueados.
- Los libros de trabajo OOXML firmados pueden inspeccionarse pero no modificarse.
- Las celdas de fórmula no se reemplazan automáticamente.
- Los archivos OLE XLS heredados requieren conversión en una aplicación de hoja de cálculo confiable antes de procesarlos.
- Las codificaciones XML no compatibles y las relaciones con formato incorrecto no se cierran.
- En esta versión estática inicial, solo se exporta la hoja de trabajo seleccionada para formatos basados en matrices.
- La referencia predeterminada HGNC es deliberadamente compacta; La migración de símbolos amplios debe utilizar un archivo HGNC completo cargado localmente.
7. Artefactos de reproducibilidad
La auditoría ZIP incluye un manifiesto JSON legible por máquina, conjuntos de cambios CSV y JSON, advertencias y la salida principal cuando existe. El manifiesto registra el hash de entrada, el hash de salida, la versión de la aplicación, el flujo de trabajo, la versión de referencia, los nombres de los lectores, el estado de conciliación, el recuento de cambios, el recuento de ambigüedades no resueltas y el resultado de la verificación.
