xonecode 0.3.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -8
- package/THIRD_PARTY_NOTICES.md +160 -0
- package/apps/web/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/apps/web/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/apps/web/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/apps/web/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/apps/web/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/apps/web/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/apps/web/dist/assets/c-BIGW1oBm.js +1 -0
- package/apps/web/dist/assets/cpp-DddhVWhK.js +1 -0
- package/apps/web/dist/assets/csharp-DSvCPggb.js +1 -0
- package/apps/web/dist/assets/css-CLj8gQPS.js +1 -0
- package/apps/web/dist/assets/go-C27-OAKa.js +1 -0
- package/apps/web/dist/assets/html-CfGypltT.js +1 -0
- package/apps/web/dist/assets/index-BB3SamhR.css +1 -0
- package/apps/web/dist/assets/index-CFYAoHdw.js +477 -0
- package/apps/web/dist/assets/ini-BEwlwnbL.js +1 -0
- package/apps/web/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
- package/apps/web/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
- package/apps/web/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
- package/apps/web/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
- package/apps/web/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
- package/apps/web/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
- package/apps/web/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
- package/apps/web/dist/assets/java-CylS5w8V.js +1 -0
- package/apps/web/dist/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2 +0 -0
- package/apps/web/dist/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2 +0 -0
- package/apps/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
- package/apps/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
- package/apps/web/dist/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2 +0 -0
- package/apps/web/dist/assets/kotlin-BdnUsdx6.js +1 -0
- package/apps/web/dist/assets/less-B1dDrJ26.js +1 -0
- package/apps/web/dist/assets/lua-BaeVxFsk.js +1 -0
- package/apps/web/dist/assets/markdown-Cvjx9yec.js +1 -0
- package/apps/web/dist/assets/mdx-Cmh6b_Ma.js +1 -0
- package/apps/web/dist/assets/php-D_2--9WK.js +1 -0
- package/apps/web/dist/assets/python-B6aJPvgy.js +1 -0
- package/apps/web/dist/assets/ruby-DSHSDbk1.js +1 -0
- package/apps/web/dist/assets/rust-B1yitclQ.js +1 -0
- package/apps/web/dist/assets/scss-D5BDwBP9.js +1 -0
- package/apps/web/dist/assets/sql-CRqJ_cUM.js +1 -0
- package/apps/web/dist/assets/swift-C2oV4EkX.js +1 -0
- package/apps/web/dist/assets/toml-vGWfd6FD.js +1 -0
- package/apps/web/dist/assets/xml-sdJ4AIDG.js +1 -0
- package/apps/web/dist/assets/yaml-Buea-lGh.js +1 -0
- package/apps/web/dist/iconos/xonecode.png +0 -0
- package/apps/web/dist/index.html +20 -0
- package/dist/agent/agentesEnDisco.js +539 -0
- package/dist/agent/agentesEnDisco.js.map +1 -0
- package/dist/agent/arbolDeProyecto.js +245 -0
- package/dist/agent/arbolDeProyecto.js.map +1 -0
- package/dist/agent/artefactosEnDisco.js +139 -0
- package/dist/agent/artefactosEnDisco.js.map +1 -0
- package/dist/agent/aumentador.js +175 -0
- package/dist/agent/aumentador.js.map +1 -0
- package/dist/agent/authEnDisco.js +76 -1
- package/dist/agent/authEnDisco.js.map +1 -1
- package/dist/agent/busquedaRegex.js +92 -0
- package/dist/agent/busquedaRegex.js.map +1 -0
- package/dist/agent/catalogoModelos.js +345 -0
- package/dist/agent/catalogoModelos.js.map +1 -0
- package/dist/agent/checkpointer.js +127 -0
- package/dist/agent/checkpointer.js.map +1 -0
- package/dist/agent/cloudstudioClient.js +194 -0
- package/dist/agent/cloudstudioClient.js.map +1 -0
- package/dist/agent/cloudstudioMcp.js +722 -0
- package/dist/agent/cloudstudioMcp.js.map +1 -0
- package/dist/agent/configEnDisco.js +309 -11
- package/dist/agent/configEnDisco.js.map +1 -1
- package/dist/agent/consumoExterno.js +99 -0
- package/dist/agent/consumoExterno.js.map +1 -0
- package/dist/agent/descarga.js +149 -0
- package/dist/agent/descarga.js.map +1 -0
- package/dist/agent/diagnosticoDeTools.js +51 -0
- package/dist/agent/diagnosticoDeTools.js.map +1 -0
- package/dist/agent/dispositivosEnMaquina.js +596 -0
- package/dist/agent/dispositivosEnMaquina.js.map +1 -0
- package/dist/agent/escrituraDeCodex.js +134 -0
- package/dist/agent/escrituraDeCodex.js.map +1 -0
- package/dist/agent/escrituraDeOpencode.js +80 -0
- package/dist/agent/escrituraDeOpencode.js.map +1 -0
- package/dist/agent/escrituraExterna.js +742 -0
- package/dist/agent/escrituraExterna.js.map +1 -0
- package/dist/agent/gemini.js +81 -0
- package/dist/agent/gemini.js.map +1 -0
- package/dist/agent/git.js +83 -0
- package/dist/agent/git.js.map +1 -0
- package/dist/agent/gitSync.js +441 -0
- package/dist/agent/gitSync.js.map +1 -0
- package/dist/agent/hotswap.js +448 -0
- package/dist/agent/hotswap.js.map +1 -0
- package/dist/agent/instalacionEnMaquina.js +252 -0
- package/dist/agent/instalacionEnMaquina.js.map +1 -0
- package/dist/agent/instantanea.js +7 -10
- package/dist/agent/instantanea.js.map +1 -1
- package/dist/agent/interrupts.js +11 -2
- package/dist/agent/interrupts.js.map +1 -1
- package/dist/agent/juezDeTarea.js +345 -0
- package/dist/agent/juezDeTarea.js.map +1 -0
- package/dist/agent/lanzamientoEnMaquina.js +377 -0
- package/dist/agent/lanzamientoEnMaquina.js.map +1 -0
- package/dist/agent/manifiesto.js +59 -0
- package/dist/agent/manifiesto.js.map +1 -0
- package/dist/agent/memoriaDeProyecto.js +60 -0
- package/dist/agent/memoriaDeProyecto.js.map +1 -0
- package/dist/agent/modelos.js +105 -17
- package/dist/agent/modelos.js.map +1 -1
- package/dist/agent/modelosDeMotor.js +204 -0
- package/dist/agent/modelosDeMotor.js.map +1 -0
- package/dist/agent/paqueteDelProyecto.js +181 -0
- package/dist/agent/paqueteDelProyecto.js.map +1 -0
- package/dist/agent/perfiles.js +92 -31
- package/dist/agent/perfiles.js.map +1 -1
- package/dist/agent/persona.js +40 -0
- package/dist/agent/persona.js.map +1 -0
- package/dist/agent/procesosEnMaquina.js +204 -0
- package/dist/agent/procesosEnMaquina.js.map +1 -0
- package/dist/agent/proyecto.js +311 -13
- package/dist/agent/proyecto.js.map +1 -1
- package/dist/agent/puente.js +63 -6
- package/dist/agent/puente.js.map +1 -1
- package/dist/agent/resumenDeContexto.js +30 -0
- package/dist/agent/resumenDeContexto.js.map +1 -0
- package/dist/agent/resumenDeTool.js +64 -18
- package/dist/agent/resumenDeTool.js.map +1 -1
- package/dist/agent/sesionGit.js +481 -0
- package/dist/agent/sesionGit.js.map +1 -0
- package/dist/agent/settingsEnDisco.js +189 -0
- package/dist/agent/settingsEnDisco.js.map +1 -0
- package/dist/agent/subagenteCodex.js +368 -0
- package/dist/agent/subagenteCodex.js.map +1 -0
- package/dist/agent/subagenteExterno.js +423 -0
- package/dist/agent/subagenteExterno.js.map +1 -0
- package/dist/agent/subagenteOpencode.js +389 -0
- package/dist/agent/subagenteOpencode.js.map +1 -0
- package/dist/agent/subida.js +202 -0
- package/dist/agent/subida.js.map +1 -0
- package/dist/agent/tareasEnDisco.js +466 -0
- package/dist/agent/tareasEnDisco.js.map +1 -0
- package/dist/agent/turnoReal.js +663 -50
- package/dist/agent/turnoReal.js.map +1 -1
- package/dist/agent/versionEnDisco.js +48 -0
- package/dist/agent/versionEnDisco.js.map +1 -0
- package/dist/agent/xoneAgent.js +290 -49
- package/dist/agent/xoneAgent.js.map +1 -1
- package/dist/agent/zip.js +52 -0
- package/dist/agent/zip.js.map +1 -0
- package/dist/cli/acuseDeModelo.js +30 -0
- package/dist/cli/acuseDeModelo.js.map +1 -0
- package/dist/cli/aprobar.js +55 -2
- package/dist/cli/aprobar.js.map +1 -1
- package/dist/cli/config.js +9 -13
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/consola.js +750 -19
- package/dist/cli/consola.js.map +1 -1
- package/dist/cli/main.js +740 -81
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/markdown.js +188 -2
- package/dist/cli/markdown.js.map +1 -1
- package/dist/cli/run.js +32 -4
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/stdio.js +46 -19
- package/dist/cli/stdio.js.map +1 -1
- package/dist/cli/tema.js +96 -8
- package/dist/cli/tema.js.map +1 -1
- package/dist/cli/tokens.js +29 -0
- package/dist/cli/tokens.js.map +1 -0
- package/dist/cli/tui/app.js +171 -0
- package/dist/cli/tui/app.js.map +1 -0
- package/dist/cli/tui/aprobarTui.js +80 -0
- package/dist/cli/tui/aprobarTui.js.map +1 -0
- package/dist/cli/tui/barra.js +37 -0
- package/dist/cli/tui/barra.js.map +1 -0
- package/dist/cli/tui/correrTui.js +478 -0
- package/dist/cli/tui/correrTui.js.map +1 -0
- package/dist/cli/tui/entrada.js +166 -0
- package/dist/cli/tui/entrada.js.map +1 -0
- package/dist/cli/tui/filas.js +24 -0
- package/dist/cli/tui/filas.js.map +1 -0
- package/dist/cli/tui/logo.js +49 -0
- package/dist/cli/tui/logo.js.map +1 -0
- package/dist/cli/tui/pielTui.js +14 -0
- package/dist/cli/tui/pielTui.js.map +1 -0
- package/dist/cli/tui/raton.js +126 -0
- package/dist/cli/tui/raton.js.map +1 -0
- package/dist/cli/tui/sidebar.js +86 -0
- package/dist/cli/tui/sidebar.js.map +1 -0
- package/dist/cli/tui/store.js +143 -0
- package/dist/cli/tui/store.js.map +1 -0
- package/dist/cli/tui/tarjeta.js +19 -0
- package/dist/cli/tui/tarjeta.js.map +1 -0
- package/dist/cli/tui/temaInk.js +114 -0
- package/dist/cli/tui/temaInk.js.map +1 -0
- package/dist/cli/tui/transcript.js +254 -0
- package/dist/cli/tui/transcript.js.map +1 -0
- package/dist/cli/wizardInicial.js +240 -0
- package/dist/cli/wizardInicial.js.map +1 -0
- package/dist/core/actos.js +113 -0
- package/dist/core/actos.js.map +1 -0
- package/dist/core/adjuntos.js +97 -0
- package/dist/core/adjuntos.js.map +1 -0
- package/dist/core/agentes.js +227 -0
- package/dist/core/agentes.js.map +1 -0
- package/dist/core/artefactos.js +149 -0
- package/dist/core/artefactos.js.map +1 -0
- package/dist/core/cloudstudio.js +7 -0
- package/dist/core/cloudstudio.js.map +1 -0
- package/dist/core/config.js +212 -5
- package/dist/core/config.js.map +1 -1
- package/dist/core/contextos.js +53 -1
- package/dist/core/contextos.js.map +1 -1
- package/dist/core/descargas.js +106 -0
- package/dist/core/descargas.js.map +1 -0
- package/dist/core/descriptoresDeApp.js +279 -0
- package/dist/core/descriptoresDeApp.js.map +1 -0
- package/dist/core/dispositivos.js +466 -0
- package/dist/core/dispositivos.js.map +1 -0
- package/dist/core/entrega.js +141 -0
- package/dist/core/entrega.js.map +1 -0
- package/dist/core/entrelazar.js +90 -0
- package/dist/core/entrelazar.js.map +1 -0
- package/dist/core/esqueleto.js +10 -0
- package/dist/core/esqueleto.js.map +1 -1
- package/dist/core/modelos.js +235 -3
- package/dist/core/modelos.js.map +1 -1
- package/dist/core/notify.js +27 -9
- package/dist/core/notify.js.map +1 -1
- package/dist/core/planDeSubida.js +127 -0
- package/dist/core/planDeSubida.js.map +1 -0
- package/dist/core/ports.js +189 -1
- package/dist/core/ports.js.map +1 -1
- package/dist/core/puedeLanzarse.js +239 -0
- package/dist/core/puedeLanzarse.js.map +1 -0
- package/dist/core/rutaVirtual.js +42 -0
- package/dist/core/rutaVirtual.js.map +1 -0
- package/dist/core/settings.js +246 -0
- package/dist/core/settings.js.map +1 -0
- package/dist/core/tareas.js +230 -0
- package/dist/core/tareas.js.map +1 -0
- package/dist/core/textos.js +36 -0
- package/dist/core/textos.js.map +1 -0
- package/dist/core/turno.js +56 -8
- package/dist/core/turno.js.map +1 -1
- package/dist/core/version.js +31 -0
- package/dist/core/version.js.map +1 -0
- package/dist/vendor/sqliteSaver.js +389 -0
- package/dist/vendor/sqliteSaver.js.map +1 -0
- package/dist/vendor/tokenTracking.js +22 -1
- package/dist/vendor/tokenTracking.js.map +1 -1
- package/dist/web/servidor/arranque.js +3964 -0
- package/dist/web/servidor/arranque.js.map +1 -0
- package/dist/web/servidor/consolaDeTarea.js +161 -0
- package/dist/web/servidor/consolaDeTarea.js.map +1 -0
- package/dist/web/servidor/consolaWeb.js +389 -0
- package/dist/web/servidor/consolaWeb.js.map +1 -0
- package/dist/web/servidor/corredorDeTareas.js +1119 -0
- package/dist/web/servidor/corredorDeTareas.js.map +1 -0
- package/dist/web/servidor/pielWeb.js +269 -0
- package/dist/web/servidor/pielWeb.js.map +1 -0
- package/dist/web/servidor/servidor.js +257 -0
- package/dist/web/servidor/servidor.js.map +1 -0
- package/dist/web/servidor/sesiones.js +440 -0
- package/dist/web/servidor/sesiones.js.map +1 -0
- package/dist/web/servidor/transporte.js +169 -0
- package/dist/web/servidor/transporte.js.map +1 -0
- package/dist/web/servidor/vestibulo.js +1276 -0
- package/dist/web/servidor/vestibulo.js.map +1 -0
- package/package.json +33 -9
- package/skills/archify/LICENSE +22 -0
- package/skills/archify/SKILL.md +109 -0
- package/skills/archify/THIRD_PARTY_NOTICES.md +56 -0
- package/skills/archify/assets/template.html +14787 -0
- package/skills/archify/bin/archify.mjs +1990 -0
- package/skills/archify/bin/open-artifact.mjs +86 -0
- package/skills/archify/bin/preview.mjs +648 -0
- package/skills/archify/bin/visual-check.mjs +829 -0
- package/skills/archify/brand-marks/README.md +31 -0
- package/skills/archify/brand-marks/catalog.json +131 -0
- package/skills/archify/delta/architecture-delta.mjs +1214 -0
- package/skills/archify/examples/agent-run.lifecycle.json +71 -0
- package/skills/archify/examples/agent-tool-call.workflow.json +94 -0
- package/skills/archify/examples/async-job-roundtrip.sequence.json +61 -0
- package/skills/archify/examples/brand-aware-delivery.architecture.json +47 -0
- package/skills/archify/examples/cache-miss-request.sequence.json +81 -0
- package/skills/archify/examples/checkout-platform.base.architecture.json +31 -0
- package/skills/archify/examples/checkout-platform.head.architecture.json +31 -0
- package/skills/archify/examples/dataflow-product-analytics.html +14898 -0
- package/skills/archify/examples/deployment-release.lifecycle.json +49 -0
- package/skills/archify/examples/event-stream.dataflow.json +57 -0
- package/skills/archify/examples/incident-response.workflow.json +64 -0
- package/skills/archify/examples/lifecycle-agent-run.html +14847 -0
- package/skills/archify/examples/product-analytics.dataflow.json +76 -0
- package/skills/archify/examples/production-deployment.architecture.json +71 -0
- package/skills/archify/examples/release-delivery.workflow.json +62 -0
- package/skills/archify/examples/sequence-cache-miss-request.html +14913 -0
- package/skills/archify/examples/web-app-rendered.html +14862 -0
- package/skills/archify/examples/web-app.architecture.json +46 -0
- package/skills/archify/examples/workflow-agent-tool-call-rendered.html +14904 -0
- package/skills/archify/migrations/workflow-v2.mjs +279 -0
- package/skills/archify/package.json +17 -0
- package/skills/archify/recipes/scenarios.mjs +391 -0
- package/skills/archify/references/authoring-contract.md +198 -0
- package/skills/archify/references/brand-marks.md +69 -0
- package/skills/archify/references/delivery-contract.md +116 -0
- package/skills/archify/references/viewer-runtime.md +45 -0
- package/skills/archify/renderers/architecture/grid.mjs +62 -0
- package/skills/archify/renderers/architecture/render-architecture.mjs +1078 -0
- package/skills/archify/renderers/dataflow/README.md +104 -0
- package/skills/archify/renderers/dataflow/render-dataflow.mjs +483 -0
- package/skills/archify/renderers/lifecycle/README.md +115 -0
- package/skills/archify/renderers/lifecycle/render-lifecycle.mjs +561 -0
- package/skills/archify/renderers/sequence/README.md +114 -0
- package/skills/archify/renderers/sequence/render-sequence.mjs +453 -0
- package/skills/archify/renderers/shared/brand-marks.mjs +563 -0
- package/skills/archify/renderers/shared/cli.mjs +218 -0
- package/skills/archify/renderers/shared/desktop-readability.mjs +26 -0
- package/skills/archify/renderers/shared/diagnostics.mjs +127 -0
- package/skills/archify/renderers/shared/engineering-profiles.mjs +157 -0
- package/skills/archify/renderers/shared/generated-brand-marks.mjs +2003 -0
- package/skills/archify/renderers/shared/generated-validators.mjs +13 -0
- package/skills/archify/renderers/shared/geometry.mjs +1423 -0
- package/skills/archify/renderers/shared/i18n.mjs +594 -0
- package/skills/archify/renderers/shared/layout-report.mjs +40 -0
- package/skills/archify/renderers/shared/legend.mjs +217 -0
- package/skills/archify/renderers/shared/output-path.mjs +321 -0
- package/skills/archify/renderers/shared/repository-evidence.mjs +235 -0
- package/skills/archify/renderers/shared/text-fit.mjs +49 -0
- package/skills/archify/renderers/shared/utils.mjs +232 -0
- package/skills/archify/renderers/shared/validator.mjs +86 -0
- package/skills/archify/renderers/workflow/README.md +223 -0
- package/skills/archify/renderers/workflow/render-workflow.mjs +35 -0
- package/skills/archify/renderers/workflow/workflow-compiler.mjs +4400 -0
- package/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +144 -0
- package/skills/archify/schemas/README.md +211 -0
- package/skills/archify/schemas/architecture.schema.json +176 -0
- package/skills/archify/schemas/common.schema.json +115 -0
- package/skills/archify/schemas/dataflow.schema.json +243 -0
- package/skills/archify/schemas/lifecycle.schema.json +266 -0
- package/skills/archify/schemas/sequence.schema.json +223 -0
- package/skills/archify/schemas/workflow.schema.json +428 -0
- package/skills/archify/scripts/check-render-output.mjs +835 -0
- package/skills/archify/scripts/check-update.mjs +1667 -0
- package/skills/archify/scripts/render-examples.mjs +26 -0
- package/skills/archify/scripts/update-contract.mjs +182 -0
- package/skills/archify/skill-release.json +10 -0
- package/skills/artifacts-builder/SKILL.md +120 -0
- package/skills/artifacts-builder/reference/diagramas.md +123 -0
- package/skills/artifacts-builder/reference/estilo.md +123 -0
- package/skills/artifacts-builder/reference/exportar-pdf.md +56 -0
- package/skills/artifacts-builder/reference/graficas.md +22 -0
- package/skills/artifacts-builder/scripts/bundle_artifact.py +109 -0
- package/skills/artifacts-builder/scripts/validate_artifact.py +345 -0
- package/skills/xone-hotswap/SKILL.md +185 -0
- package/skills/xone-hotswap/references/comandos.md +706 -0
- package/skills/xone-hotswap/references/conexion-y-despliegue.md +226 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Los descriptores de una app XOne: `app.xml` (qué conexiones declara) y `app.ini` (cómo se
|
|
3
|
+
* llama). Datos puros, sin tocar el disco y sin una sola dependencia.
|
|
4
|
+
*
|
|
5
|
+
* **Por qué un escáner y no un regex.** Un regex sobre el texto entero no puede distinguir una
|
|
6
|
+
* etiqueta dentro de un comentario de una de verdad —`<!-- <connection .../> -->` le da
|
|
7
|
+
* exactamente lo mismo—, y aquí el error peligroso es el **falso negativo**: decir «este
|
|
8
|
+
* proyecto no declara conexión» cuando sí la declara deja pasar justo el caso que esta
|
|
9
|
+
* comprobación existe para parar, que es el fichero que falta, el `{"result":true}` del
|
|
10
|
+
* lanzamiento y el diálogo «Database not found» detrás. Un falso positivo, en cambio, solo
|
|
11
|
+
* bloquea y dice por qué: es recuperable. El escáner puede ser correcto en las dos
|
|
12
|
+
* direcciones; un regex, no. Y **no se añade una dependencia de XML**: esto lee dos atributos
|
|
13
|
+
* de un fichero que ya conocemos y que sabemos emitir, no un documento arbitrario.
|
|
14
|
+
*
|
|
15
|
+
* Medido el 2026-09-16 sobre proyectos reales: de cuatro proyectos, dos declaran sus conexiones
|
|
16
|
+
* con `Provider=…` (Replanteos_2026, MyAllXOne), uno declara además la local
|
|
17
|
+
* `connstring="bd/gestion.db"` (MinitsMT) y el esqueleto de `core/esqueleto.ts` declara solo
|
|
18
|
+
* esa ruta. O sea que las dos formas conviven, y por eso hay un predicado que las separa.
|
|
19
|
+
*
|
|
20
|
+
* **Y de ahí sale una consecuencia que NO es la obvia: la declaración es la forma RARA.** De
|
|
21
|
+
* esos cuatro, tres no declaran su base y **los cuatro tienen su `bd/gestion.db`** — porque
|
|
22
|
+
* XOne usa esa ruta **por defecto**, se declare o no—. Así que `esRutaDeFichero` sirve para
|
|
23
|
+
* separar una ruta de una cadena de proveedor dentro de lo declarado, y **no** para decidir qué
|
|
24
|
+
* bases hay que comprobar: eso lo decide la convención, en `puedeLanzarse.ts`. Una regla que
|
|
25
|
+
* dependiera de este escáner para saber si hay base dejaría sin mirar el caso más común —el
|
|
26
|
+
* medido, el diálogo «Database not found»— en tres de cada cuatro proyectos.
|
|
27
|
+
*
|
|
28
|
+
* Y sobre `app.ini`: **el `app.ini` real escribe `name=` en MINÚSCULA** y el esqueleto de
|
|
29
|
+
* `core/esqueleto.ts` escribe `Name=` en mayúscula. Un lector sensible a mayúsculas devolvería
|
|
30
|
+
* `undefined` en todos los proyectos reales y funcionaría solo en el esqueleto — el patrón de
|
|
31
|
+
* fallo de esta casa, escrito en `CLAUDE.md`.
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Hasta dónde se mira. `app.xml` de verdad son 2-4 KB (el mayor medido, MinitsMT, 3.9 KB), así
|
|
35
|
+
* que este tope solo existe para que un fichero que no es un `app.xml` —un binario, un minified
|
|
36
|
+
* gigante— no se recorra entero. Por encima se devuelve **lo encontrado**: no es un error, es
|
|
37
|
+
* el final del texto que sabemos leer.
|
|
38
|
+
*/
|
|
39
|
+
export const TOPE_DE_XML = 400_000;
|
|
40
|
+
/** `[A-Za-z_:]`: con lo que empieza un nombre en XML. */
|
|
41
|
+
function esInicioDeNombre(c) {
|
|
42
|
+
return (c >= 65 && c <= 90) || (c >= 97 && c <= 122) || c === 95 || c === 58;
|
|
43
|
+
}
|
|
44
|
+
/** `[-A-Za-z0-9_:.]`: con lo que sigue. */
|
|
45
|
+
function esCaracterDeNombre(c) {
|
|
46
|
+
return esInicioDeNombre(c) || (c >= 48 && c <= 57) || c === 45 || c === 46;
|
|
47
|
+
}
|
|
48
|
+
function esEspacio(c) {
|
|
49
|
+
return c === 32 || c === 9 || c === 10 || c === 13;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Avanza hasta después del `>` que cierra la etiqueta, **sin contar los que van dentro de un
|
|
53
|
+
* valor entrecomillado**. Un `connstring="…Proxy=>algo"` no corta aquí: si cortara, el resto de
|
|
54
|
+
* la etiqueta se leería como si fuera texto del documento.
|
|
55
|
+
*/
|
|
56
|
+
function saltarEtiqueta(xml, desde, fin) {
|
|
57
|
+
let j = desde;
|
|
58
|
+
while (j < fin) {
|
|
59
|
+
const c = xml[j];
|
|
60
|
+
if (c === '"' || c === "'") {
|
|
61
|
+
const cierre = xml.indexOf(c, j + 1);
|
|
62
|
+
if (cierre < 0)
|
|
63
|
+
return fin; // comilla sin cerrar: se acabó lo legible
|
|
64
|
+
j = cierre + 1;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
if (c === ">")
|
|
68
|
+
return j + 1;
|
|
69
|
+
j++;
|
|
70
|
+
}
|
|
71
|
+
return fin;
|
|
72
|
+
}
|
|
73
|
+
/** Un valor entrecomillado o desnudo, desde después del `=`. Devuelve el valor y dónde sigue. */
|
|
74
|
+
function leerValor(xml, desde, fin) {
|
|
75
|
+
let j = desde;
|
|
76
|
+
while (j < fin && esEspacio(xml.charCodeAt(j)))
|
|
77
|
+
j++;
|
|
78
|
+
const comilla = xml[j];
|
|
79
|
+
if (comilla === '"' || comilla === "'") {
|
|
80
|
+
const cierre = xml.indexOf(comilla, j + 1);
|
|
81
|
+
if (cierre < 0)
|
|
82
|
+
return { valor: "", siguiente: fin }; // sin cerrar: no se inventa el valor
|
|
83
|
+
return { valor: xml.slice(j + 1, cierre), siguiente: cierre + 1 };
|
|
84
|
+
}
|
|
85
|
+
// Sin comillas, que es tolerancia y no XML: termina en espacio, en `>` o en el `/` de `/>`.
|
|
86
|
+
const inicio = j;
|
|
87
|
+
while (j < fin) {
|
|
88
|
+
const c = xml[j];
|
|
89
|
+
if (esEspacio(xml.charCodeAt(j)) || c === ">")
|
|
90
|
+
break;
|
|
91
|
+
if (c === "/" && xml[j + 1] === ">")
|
|
92
|
+
break;
|
|
93
|
+
j++;
|
|
94
|
+
}
|
|
95
|
+
return { valor: xml.slice(inicio, j), siguiente: j };
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Lee los atributos de la etiqueta abierta en `desde` y devuelve los DOS que importan más el
|
|
99
|
+
* índice por el que seguir. Se queda con `name` y `connstring` y con nada más: `datemask`,
|
|
100
|
+
* `prefix`, `objname`, `updateobj` y `progid` están medidos en los proyectos reales y ninguno
|
|
101
|
+
* cambia la decisión.
|
|
102
|
+
*
|
|
103
|
+
* No desescapa entidades a propósito. El valor de un `connstring` que es una ruta **es** una
|
|
104
|
+
* ruta, y `&` → `&` la cambiaría por un camino que XOne no va a abrir: desescapar aquí
|
|
105
|
+
* sería inventar.
|
|
106
|
+
*/
|
|
107
|
+
function leerAtributos(xml, desde, fin) {
|
|
108
|
+
let nombre = "";
|
|
109
|
+
let connstring = "";
|
|
110
|
+
let j = desde;
|
|
111
|
+
while (j < fin) {
|
|
112
|
+
while (j < fin && esEspacio(xml.charCodeAt(j)))
|
|
113
|
+
j++;
|
|
114
|
+
if (j >= fin)
|
|
115
|
+
break;
|
|
116
|
+
const c = xml[j];
|
|
117
|
+
if (c === ">") {
|
|
118
|
+
j++;
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
121
|
+
if (c === "/") {
|
|
122
|
+
j++; // el `>` de `/>` lo consume la vuelta siguiente
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
const inicio = j;
|
|
126
|
+
while (j < fin && esCaracterDeNombre(xml.charCodeAt(j)))
|
|
127
|
+
j++;
|
|
128
|
+
if (j === inicio) {
|
|
129
|
+
j++; // algo que no entendemos: se avanza, que quedarse clavado sí sería un cuelgue
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
const atributo = xml.slice(inicio, j);
|
|
133
|
+
let k = j;
|
|
134
|
+
while (k < fin && esEspacio(xml.charCodeAt(k)))
|
|
135
|
+
k++;
|
|
136
|
+
if (xml[k] !== "=") {
|
|
137
|
+
j = k; // atributo sin valor (un `disabled` suelto): legal, y no es de los nuestros
|
|
138
|
+
continue;
|
|
139
|
+
}
|
|
140
|
+
const leido = leerValor(xml, k + 1, fin);
|
|
141
|
+
if (atributo === "name")
|
|
142
|
+
nombre = leido.valor;
|
|
143
|
+
else if (atributo === "connstring")
|
|
144
|
+
connstring = leido.valor;
|
|
145
|
+
j = leido.siguiente;
|
|
146
|
+
}
|
|
147
|
+
return { nombre, connstring, siguiente: j };
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Las conexiones que declara `app.xml`, **en orden de aparición**.
|
|
151
|
+
*
|
|
152
|
+
* Bucle sobre índices y sin recursión: cada `<` se decide una vez y se avanza, así que un
|
|
153
|
+
* documento mal formado no puede hacer otra cosa que terminar antes.
|
|
154
|
+
*
|
|
155
|
+
* No se mira `<connection>` **dentro de un comentario, de un CDATA, del prólogo `<?xml ?>` ni
|
|
156
|
+
* de un `<!DOCTYPE>`**, que es exactamente lo que un regex no sabe hacer. Medido: el `app.xml`
|
|
157
|
+
* de MinitsMT tiene cuatro bloques de comentario —uno de ellos de cinco líneas y otro que
|
|
158
|
+
* contiene atributos comentados— y el de Replanteos tiene un `<include>` comentado.
|
|
159
|
+
*
|
|
160
|
+
* Un `<connection` sin `>` que lo cierre **sí** se devuelve, con lo que se haya podido leer. Es
|
|
161
|
+
* el lado conservador y la misma doctrina del falso negativo: una etiqueta truncada es una
|
|
162
|
+
* conexión declarada cuyo valor no se pudo leer, y decir «no declara ninguna» sería afirmar de
|
|
163
|
+
* más.
|
|
164
|
+
*/
|
|
165
|
+
export function conexionesDeApp(xml) {
|
|
166
|
+
const conexiones = [];
|
|
167
|
+
const fin = Math.min(xml.length, TOPE_DE_XML);
|
|
168
|
+
let i = 0;
|
|
169
|
+
while (i < fin) {
|
|
170
|
+
const lt = xml.indexOf("<", i);
|
|
171
|
+
if (lt < 0 || lt >= fin)
|
|
172
|
+
break;
|
|
173
|
+
if (xml.startsWith("<!--", lt)) {
|
|
174
|
+
const cierre = xml.indexOf("-->", lt + 4);
|
|
175
|
+
if (cierre < 0)
|
|
176
|
+
break; // comentario sin cerrar: no hay nada más que leer
|
|
177
|
+
i = cierre + 3;
|
|
178
|
+
continue;
|
|
179
|
+
}
|
|
180
|
+
if (xml.startsWith("<![CDATA[", lt)) {
|
|
181
|
+
const cierre = xml.indexOf("]]>", lt + 9);
|
|
182
|
+
if (cierre < 0)
|
|
183
|
+
break;
|
|
184
|
+
i = cierre + 3;
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
if (xml.startsWith("<?", lt)) {
|
|
188
|
+
const cierre = xml.indexOf("?>", lt + 2);
|
|
189
|
+
if (cierre < 0)
|
|
190
|
+
break;
|
|
191
|
+
i = cierre + 2;
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
if (xml.startsWith("<!", lt)) {
|
|
195
|
+
// `<!DOCTYPE …>` y cualquier otra declaración. Con subconjunto interno —el `[ … ]>`— se
|
|
196
|
+
// salta hasta `]>` y no hasta el primer `>`: dentro puede haber cualquier cosa, y parar
|
|
197
|
+
// en un `>` de dentro dejaría el resto del subconjunto leyéndose como texto del
|
|
198
|
+
// documento. Ahí es donde un `<connection>` de mentira se colaría.
|
|
199
|
+
const corchete = xml.indexOf("[", lt + 2);
|
|
200
|
+
const primerCierre = xml.indexOf(">", lt + 2);
|
|
201
|
+
const conSubconjunto = corchete >= 0 && (primerCierre < 0 || corchete < primerCierre);
|
|
202
|
+
const cierre = conSubconjunto ? xml.indexOf("]>", corchete) : primerCierre;
|
|
203
|
+
if (cierre < 0)
|
|
204
|
+
break;
|
|
205
|
+
i = conSubconjunto ? cierre + 2 : cierre + 1;
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
const esDeCierre = xml[lt + 1] === "/";
|
|
209
|
+
let j = esDeCierre ? lt + 2 : lt + 1;
|
|
210
|
+
const inicioDelNombre = j;
|
|
211
|
+
while (j < fin && esCaracterDeNombre(xml.charCodeAt(j)))
|
|
212
|
+
j++;
|
|
213
|
+
if (j === inicioDelNombre) {
|
|
214
|
+
// Un `<` suelto —una comparación en un `script`—: no es una etiqueta. Se sigue desde el
|
|
215
|
+
// carácter siguiente y no desde `j`, o el `<` se volvería a encontrar para siempre.
|
|
216
|
+
i = lt + 1;
|
|
217
|
+
continue;
|
|
218
|
+
}
|
|
219
|
+
if (esDeCierre || xml.slice(inicioDelNombre, j) !== "connection") {
|
|
220
|
+
i = saltarEtiqueta(xml, j, fin);
|
|
221
|
+
continue;
|
|
222
|
+
}
|
|
223
|
+
const { nombre, connstring, siguiente } = leerAtributos(xml, j, fin);
|
|
224
|
+
conexiones.push({ nombre, connstring });
|
|
225
|
+
i = siguiente;
|
|
226
|
+
}
|
|
227
|
+
return conexiones;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* El `name=`/`Name=` de `app.ini`, recortado. `undefined` si no está o si está vacío.
|
|
231
|
+
*
|
|
232
|
+
* **Sin distinguir mayúsculas, y no es prudencia: es el censo.** Los tres `app.ini` reales que
|
|
233
|
+
* existen —Replanteos_2026, MyAllXOne y AppDemo; MinitsMT no tiene— escriben `name=` en
|
|
234
|
+
* minúscula, y el esqueleto de xonecode escribe `Name=`. Comparar con `=== "name"` funcionaría
|
|
235
|
+
* en todos los proyectos de verdad y fallaría en el único que escribimos nosotros, que es el
|
|
236
|
+
* peor reparto posible.
|
|
237
|
+
*
|
|
238
|
+
* Se salta las líneas sin `=`: el `app.ini` de AppDemo tiene una. Y la PRIMERA clave que case
|
|
239
|
+
* decide: no se sigue buscando otra por si acaso, porque dos `name=` en el mismo fichero no son
|
|
240
|
+
* una ambigüedad que resolver, son un fichero que alguien tocó.
|
|
241
|
+
*/
|
|
242
|
+
export function nombreDeApp(ini) {
|
|
243
|
+
for (const linea of ini.split("\n")) {
|
|
244
|
+
const corte = linea.indexOf("=");
|
|
245
|
+
if (corte < 0)
|
|
246
|
+
continue;
|
|
247
|
+
if (linea.slice(0, corte).trim().toLowerCase() !== "name")
|
|
248
|
+
continue;
|
|
249
|
+
const valor = linea.slice(corte + 1).trim();
|
|
250
|
+
return valor === "" ? undefined : valor;
|
|
251
|
+
}
|
|
252
|
+
return undefined;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* ¿Este `connstring` es una RUTA del proyecto, o una cadena de proveedor?
|
|
256
|
+
*
|
|
257
|
+
* Medido el 2026-09-16: `bd/gestion.db` es una ruta; `Provider=Xone Remote Provider;ProgID=…`
|
|
258
|
+
* no lo es, y esos proyectos (Replanteos_2026, MyAllXOne) arrancan perfectamente. Confundirlos
|
|
259
|
+
* bloquearía un lanzamiento que funciona. Los tres descartes son la forma de una cadena de
|
|
260
|
+
* proveedor y no una lista de proveedores conocidos, para que uno nuevo no se cuele como ruta:
|
|
261
|
+
* `;` separa campos, `=` asigna, y `://` es un origen remoto.
|
|
262
|
+
*
|
|
263
|
+
* **La comprobación de existencia que esto habilita es conservadora a propósito, y su falso
|
|
264
|
+
* positivo está acotado.** Mira el PROYECTO, no el dispositivo: un proyecto que nunca se
|
|
265
|
+
* arrancó en local puede no tener `bd/gestion.db` aquí y tenerlo en el aparato, y entonces esto
|
|
266
|
+
* bloquea un lanzamiento que habría funcionado. Se acepta porque el error contrario —el
|
|
267
|
+
* medido— es un `{"result":true}` seguido de un diálogo de error, sin síntoma en ningún sitio;
|
|
268
|
+
* y porque la frase que lo acompaña dice exactamente qué falta. Preguntarle al DISPOSITIVO si
|
|
269
|
+
* tiene el fichero es la mejora obvia y queda fuera de esta pasada.
|
|
270
|
+
*/
|
|
271
|
+
export function esRutaDeFichero(connstring) {
|
|
272
|
+
const valor = connstring.trim();
|
|
273
|
+
if (valor === "")
|
|
274
|
+
return false;
|
|
275
|
+
if (valor.includes(";") || valor.includes("=") || valor.includes("://"))
|
|
276
|
+
return false;
|
|
277
|
+
return /\.[A-Za-z0-9]{1,8}$/.test(valor);
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=descriptoresDeApp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"descriptoresDeApp.js","sourceRoot":"","sources":["../../src/core/descriptoresDeApp.ts"],"names":[],"mappings":"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"}
|