desarrollo · Referencia de comando
qzx diagnoseProject
Qué hace
Inspecciona tecnologías, dependencias, flujos de validación, estado de Git, calidad del código y archivos grandes sin ejecutar scripts del proyecto.
Madurez del comando: Alpha
Disponible para uso real y retroalimentación mientras su interfaz y comportamiento todavía pueden evolucionar. Esta es la evaluación actual del checkout de desarrollo. Cada futuro tag inmutable de release conservará la evaluación exacta incluida en esa versión. Disponible en PyPI 0.2.2.0.7a5. La documentación corresponde al checkout alpha 0.2.2.0.7a5.
Comportamiento y protecciones integradas
Inspecciona sin cambiar el estado
Ejecución directa para esta operación
Usa una herramienta nativa cuando hace falta
Funciona sin usar la red
Diseñado para funcionar sin elevación
Es una inspección de solo lectura. Puede invocar consultas de Git, pero nunca ejecuta pruebas, linters, comprobadores de tipos, builds, scripts de paquetes, hooks ni instaladores definidos por el proyecto. Los flujos detectados se devuelven como comandos sugeridos y permanecen explícitamente sin verificar.
Esta clasificación de seguridad fue revisada por OpenAI Codex agent contra el digest de implementación sha256:f78f9567543d98638cbe33e1e7d184f7fa0fbd669d2352fd9609bb2b4bbcd391 el 2026-08-08.
Sintaxis exacta
qzx diagnoseProject [path] --jsonParámetros
Desliza o usa la barra horizontal para ver todas las columnas.
| Nombre | Tipo | Obligatorio | Predeterminado | Descripción |
|---|---|---|---|---|
| path | str | No | "." | Ruta del directorio del proyecto que se diagnosticará (valor predeterminado: '.') |
Ejemplos de entrada
qzx diagnoseProjectDiagnosticar el proyecto del directorio actual sin ejecutar sus scripts
qzx diagnoseProject C:/my/projectDiagnosticar el proyecto de la ruta indicada
Para obtener la carga estructurada completa, añade --json: qzx diagnoseProject [path] --json
Ejemplo de salida observada
Capturado con QZX 0.2.2.0.7a5 en Windows 11; código de salida 0. Los valores dependientes del host y la duración pueden variar.
Comando del ejemplo: qzx diagnoseProject ../artifacts/qzx-evidence/project-doctor --json
{
"success": true,
"message": "Project diagnosis completed with 1 observed issue. 2 configured validation workflows were discovered but not executed; run the suggested commands before treating the project as release-ready.",
"details": {
"path": "C:\\Team Dropbox\\Valis Idealis\\Ale\\Programacion\\QZX - Quick Zap Exchange\\artifacts\\qzx-evidence\\project-doctor",
"technologies": [
"Python"
],
"dependencies": {
"manifest_count": 1,
"manifests_found": [
"pyproject.toml"
],
"total_declaration_count": 1,
"unique_declared_package_count": 1,
"unique_packages": [
"httpx"
],
"parse_errors": [],
"manifests": [
{
"path": "pyproject.toml",
"ecosystem": "python",
"status": "parsed",
"declaration_count": 1,
"group_counts": {
"runtime": 1
},
"packages": [
"httpx"
]
}
],
"counting_note": "Declaration totals include repeated packages across manifests and dependency groups; unique_declared_package_count deduplicates normalized package names."
},
"environment": {
"local_files": [],
"template_files": [],
"local_configuration_present": false,
"template_present": false,
"values_inspected": false,
"note": "Only environment filenames are reported; diagnoseProject never reads or returns environment values."
},
"validation": {
"execution_policy": "discovery_only",
"execution_note": "diagnoseProject never executes project-owned tests, linters, type checkers, builds, package scripts, hooks, or installers.",
"tests": {
"configured": true,
"status": "configured_not_run",
"tools": [
"pytest"
],
"configs": [
"tests",
"pyproject.toml [tool.pytest]"
],
"commands": [
"python -m pytest"
]
},
"lint": {
"configured": true,
"status": "configured_not_run",
"tools": [
"ruff"
],
"configs": [
"pyproject.toml [tool.ruff]"
],
"commands": [
"python -m ruff check ."
]
},
"type_checking": {
"configured": false,
"status": "not_configured",
"tools": [],
"configs": [],
"commands": []
},
"build": {
"configured": false,
"status": "not_configured",
"tools": [],
"configs": [],
"commands": []
}
},
"version_control": {
"status": "not_repository",
"reason": "Git did not identify a repository for this path."
},
"source_analysis": {
"unused_code": {
"status": "passed",
"candidate_symbols_count": 0,
"candidate_symbols": [],
"interpretation": "Candidates have no statically visible references; review dynamic uses before removal."
},
"circular_imports": {
"status": "passed",
"cycles_count": 0,
"cycles": []
}
},
"file_scan": {
"scanned_file_count": 3,
"maximum_file_count": 5000,
"scan_complete": true,
"error_count": 0,
"large_file_threshold_bytes": 1048576,
"large_file_threshold_formatted": "1.00 MB",
"large_file_count": 0,
"large_files": []
},
"summary": {
"status": "review",
"issue_count": 1,
"informational_count": 0,
"issue_counts_by_severity": {
"high": 0,
"medium": 0,
"low": 1,
"info": 0
},
"issues": [
{
"code": "git_not_detected",
"severity": "low",
"title": "Git repository not detected",
"description": "The inspected path is not inside a Git working tree.",
"remediation": "Use version control for maintained source projects or confirm that this directory is intentionally unversioned."
}
],
"verification": {
"level": "partial",
"release_readiness": "not_assessed",
"verified_areas": [
"technology and manifest discovery",
"dependency declaration inventory",
"Git working-tree state when Git is available",
"static unused-code candidates",
"static circular-import analysis",
"bounded large-file scan"
],
"configured_but_not_run": [
"tests",
"lint"
],
"suggested_commands": [
"python -m pytest",
"python -m ruff check ."
],
"reason": "The command performs read-only inspection and never executes project-owned validation or build scripts."
}
}
},
"meta": {
"command": "diagnoseProject",
"command_maturity": {
"stage": "alpha",
"label": "Alpha",
"sequence": 2,
"public_executable": true,
"stability": "interface_may_change",
"summary": "Available for real use and feedback while its interface and behavior can still evolve.",
"promotion_review_required": false,
"assessment_scope": "development_checkout"
},
"duration_ms": 452.399,
"schema_version": 1
}
}Ver el contrato de resultado JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": [
"success",
"message",
"meta"
],
"properties": {
"success": {
"type": "boolean"
},
"message": {
"type": "string"
},
"meta": {
"type": "object",
"required": [
"command",
"command_maturity",
"duration_ms",
"schema_version"
],
"properties": {
"command": {
"type": "string"
},
"command_maturity": {
"type": "object",
"required": [
"stage",
"label",
"sequence",
"public_executable",
"stability",
"summary",
"promotion_review_required",
"assessment_scope"
],
"properties": {
"stage": {
"type": "string"
},
"label": {
"type": "string"
},
"sequence": {
"type": "integer"
},
"public_executable": {
"type": "boolean"
},
"stability": {
"type": "string"
},
"summary": {
"type": "string"
},
"promotion_review_required": {
"type": "boolean"
},
"assessment_scope": {
"type": "string"
},
"note": {
"type": "string"
},
"review": {
"type": "object",
"required": [
"reviewed_on",
"rationale",
"evidence"
],
"properties": {
"reviewed_on": {
"type": "string",
"format": "date"
},
"rationale": {
"type": "string"
},
"evidence": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
}
},
"replacement": {
"type": "string"
}
},
"additionalProperties": false
}
},
"additionalProperties": true
},
"duration_ms": {
"type": "number"
},
"schema_version": {
"type": "integer"
}
},
"additionalProperties": true
},
"details": {
"type": "object",
"properties": {
"path": [],
"technologies": [],
"dependencies": [],
"environment": [],
"validation": [],
"version_control": [],
"source_analysis": [],
"file_scan": [],
"summary": []
},
"additionalProperties": true
},
"error": {
"type": "string"
}
},
"additionalProperties": true
}Errores y límites
El contrato público exige success=false y un message descriptivo en fallos. Este catálogo aún no declara una taxonomía de errores específica para cada comando; revisa el resultado y no infieras códigos inexistentes.
QZX está en alpha. Dependencias opcionales, permisos y capacidades del host pueden cambiar el resultado.
{
"success": false,
"error": "Path '../artifacts/qzx-evidence/missing-golden-core-path' does not exist.",
"message": "Cannot diagnose the project because '../artifacts/qzx-evidence/missing-golden-core-path' does not exist.",
"meta": {
"command": "diagnoseProject",
"command_maturity": {
"stage": "alpha",
"label": "Alpha",
"sequence": 2,
"public_executable": true,
"stability": "interface_may_change",
"summary": "Available for real use and feedback while its interface and behavior can still evolve.",
"promotion_review_required": false,
"assessment_scope": "development_checkout"
},
"duration_ms": 4.511,
"schema_version": 1
}
}Comando capturado: qzx diagnoseProject ../artifacts/qzx-evidence/missing-golden-core-path --json
Flujo de evidencia: capturada y validada por digest.
Evidencia y procedencia
- Implementación
- src/qzx/commands/development/diagnose_project.py
- Canal de documentación
- Documentación de desarrollo 0.2.2.0.7a5 · main · sha256:f2555cf1c06a4bb51aacdb4c3cfb8a4dcdaa991d21751f203e889bd3653fcd24
- Disponibilidad
- 0.2.2.0.7a5 o anterior
Sigue explorando
Comandos relacionados
Estos comandos también pertenecen a la categoría de desarrollo. Compáralos para elegir la operación que mejor resuelva tu tarea.
qzx deployProjectPrevisualiza o despliega un artefacto explícito por SSH con respaldo remoto verificado, validación SHA-256, promoción atómica, comprobación de salud y rollback automático.qzx findUnusedCodeBusca funciones, clases y exportaciones sin referencias visibles para revisarlas antes de retirarlas.qzx compareFilesCompara archivos de texto línea por línea y archivos binarios mediante bytes exactos y SHA-256.qzx formatCodeDetecta el lenguaje y ejecuta el formateador correspondiente sobre archivos de código fuente.