trackops 2.0.4 → 2.0.5

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.
Files changed (90) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +695 -640
  3. package/bin/trackops.js +116 -116
  4. package/lib/config.js +326 -326
  5. package/lib/control.js +208 -208
  6. package/lib/env.js +244 -244
  7. package/lib/init.js +325 -325
  8. package/lib/locale.js +41 -41
  9. package/lib/opera-bootstrap.js +942 -936
  10. package/lib/opera.js +495 -486
  11. package/lib/preferences.js +74 -74
  12. package/lib/registry.js +214 -214
  13. package/lib/release.js +56 -56
  14. package/lib/runtime-state.js +144 -144
  15. package/lib/skills.js +74 -57
  16. package/lib/workspace.js +260 -260
  17. package/locales/en.json +192 -170
  18. package/locales/es.json +192 -170
  19. package/package.json +61 -58
  20. package/scripts/postinstall-locale.js +21 -21
  21. package/scripts/skills-marketplace-smoke.js +124 -124
  22. package/scripts/smoke-tests.js +558 -554
  23. package/scripts/sync-skill-version.js +21 -21
  24. package/scripts/validate-skill.js +103 -103
  25. package/skills/trackops/SKILL.md +126 -122
  26. package/skills/trackops/agents/openai.yaml +7 -7
  27. package/skills/trackops/locales/en/SKILL.md +126 -122
  28. package/skills/trackops/locales/en/references/activation.md +94 -90
  29. package/skills/trackops/locales/en/references/troubleshooting.md +73 -67
  30. package/skills/trackops/locales/en/references/workflow.md +55 -32
  31. package/skills/trackops/references/activation.md +94 -90
  32. package/skills/trackops/references/troubleshooting.md +73 -67
  33. package/skills/trackops/references/workflow.md +55 -32
  34. package/skills/trackops/skill.json +29 -29
  35. package/templates/hooks/post-checkout +2 -2
  36. package/templates/hooks/post-commit +2 -2
  37. package/templates/hooks/post-merge +2 -2
  38. package/templates/opera/agent.md +28 -27
  39. package/templates/opera/architecture/dependency-graph.md +24 -24
  40. package/templates/opera/architecture/runtime-automation.md +24 -24
  41. package/templates/opera/architecture/runtime-operations.md +34 -34
  42. package/templates/opera/en/agent.md +22 -21
  43. package/templates/opera/en/architecture/dependency-graph.md +24 -24
  44. package/templates/opera/en/architecture/runtime-automation.md +24 -24
  45. package/templates/opera/en/architecture/runtime-operations.md +34 -34
  46. package/templates/opera/en/reviews/delivery-audit.md +18 -18
  47. package/templates/opera/en/reviews/integration-audit.md +18 -18
  48. package/templates/opera/en/router.md +24 -19
  49. package/templates/opera/references/autonomy-and-recovery.md +117 -117
  50. package/templates/opera/references/opera-cycle.md +193 -193
  51. package/templates/opera/registry.md +28 -28
  52. package/templates/opera/reviews/delivery-audit.md +18 -18
  53. package/templates/opera/reviews/integration-audit.md +18 -18
  54. package/templates/opera/router.md +54 -49
  55. package/templates/skills/changelog-updater/SKILL.md +69 -69
  56. package/templates/skills/commiter/SKILL.md +99 -99
  57. package/templates/skills/opera-contract-auditor/SKILL.md +38 -38
  58. package/templates/skills/opera-contract-auditor/locales/en/SKILL.md +38 -38
  59. package/templates/skills/opera-policy-guard/SKILL.md +26 -26
  60. package/templates/skills/opera-policy-guard/locales/en/SKILL.md +26 -26
  61. package/templates/skills/opera-skill/SKILL.md +279 -0
  62. package/templates/skills/opera-skill/locales/en/SKILL.md +279 -0
  63. package/templates/skills/opera-skill/locales/en/references/phase-dod.md +138 -0
  64. package/templates/skills/opera-skill/references/phase-dod.md +138 -0
  65. package/templates/skills/project-starter-skill/SKILL.md +150 -131
  66. package/templates/skills/project-starter-skill/locales/en/SKILL.md +143 -105
  67. package/templates/skills/project-starter-skill/references/opera-cycle.md +195 -193
  68. package/ui/css/base.css +284 -284
  69. package/ui/css/charts.css +425 -425
  70. package/ui/css/components.css +1107 -1107
  71. package/ui/css/onboarding.css +133 -133
  72. package/ui/css/terminal.css +125 -125
  73. package/ui/css/timeline.css +58 -58
  74. package/ui/css/tokens.css +284 -284
  75. package/ui/favicon.svg +5 -5
  76. package/ui/index.html +99 -99
  77. package/ui/js/charts.js +526 -526
  78. package/ui/js/console-logger.js +172 -172
  79. package/ui/js/filters.js +247 -247
  80. package/ui/js/icons.js +129 -129
  81. package/ui/js/keyboard.js +229 -229
  82. package/ui/js/router.js +142 -142
  83. package/ui/js/theme.js +100 -100
  84. package/ui/js/time-tracker.js +248 -248
  85. package/ui/js/views/dashboard.js +870 -870
  86. package/ui/js/views/flash.js +47 -47
  87. package/ui/js/views/projects.js +745 -745
  88. package/ui/js/views/scrum.js +476 -476
  89. package/ui/js/views/settings.js +331 -331
  90. package/ui/js/views/timeline.js +265 -265
package/ui/index.html CHANGED
@@ -1,99 +1,99 @@
1
- <!doctype html>
2
- <html lang="es">
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>TrackOps Beta — Centro de control</title>
7
- <meta name="description" content="Panel local beta de TrackOps: gestión de proyectos, tareas, analíticas y seguimiento de tiempo para desarrolladores." />
8
- <link rel="icon" type="image/svg+xml" href="favicon.svg" />
9
-
10
- <!-- Google Fonts (coherente con web corporativa) -->
11
- <link rel="preconnect" href="https://fonts.googleapis.com" />
12
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
13
- <link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@700;800&display=swap" rel="stylesheet" />
14
-
15
- <!-- Anti-FOUC: aplica el tema antes del primer paint -->
16
- <script>
17
- (function(){
18
- var t = localStorage.getItem('trackops-theme');
19
- if (!t) t = 'light';
20
- if (t === 'light') document.documentElement.setAttribute('data-theme','light');
21
- })();
22
- </script>
23
-
24
- <!-- CSS Modular -->
25
- <link rel="stylesheet" href="/css/tokens.css" />
26
- <link rel="stylesheet" href="/css/base.css" />
27
- <link rel="stylesheet" href="/css/components.css" />
28
- <link rel="stylesheet" href="/css/panels.css" />
29
- <link rel="stylesheet" href="/css/charts.css" />
30
- <link rel="stylesheet" href="/css/terminal.css" />
31
- <link rel="stylesheet" href="/css/onboarding.css" />
32
- <link rel="stylesheet" href="/css/timeline.css" />
33
- </head>
34
- <body>
35
-
36
- <!-- Skip to content (WCAG 2.2 AA) -->
37
- <a class="skip-link" href="#view-container">Saltar al contenido principal</a>
38
-
39
- <!-- App shell -->
40
- <div class="app-shell">
41
-
42
- <!-- ══ SIDEBAR ══ -->
43
- <aside id="sidebar" role="navigation" aria-label="Navegación principal">
44
- <!-- Rendered by sidebar.js -->
45
- </aside>
46
-
47
- <!-- ══ TOPBAR ══ -->
48
- <header id="topbar" role="banner">
49
- <!-- Rendered by topbar.js -->
50
- </header>
51
-
52
- <!-- ══ MAIN CONTENT ══ -->
53
- <main id="view-container" role="main" tabindex="-1">
54
- <!-- Rendered by router.js / views -->
55
- </main>
56
-
57
- </div><!-- /.app-shell -->
58
-
59
- <!-- Flash / Toast container (aria-live para a11y) -->
60
- <div id="flash-container" aria-live="polite" aria-atomic="false"></div>
61
-
62
- <!-- Panel de registros -->
63
- <div id="console-panel" class="console-panel" role="log" aria-label="Consola de errores" aria-live="off">
64
- <div class="console-panel-header">
65
- <div class="console-panel-title" id="console-panel-title">
66
- <span>·</span> Registros
67
- <span id="console-error-count" class="badge badge-danger" style="display:none">0</span>
68
- </div>
69
- <div class="console-panel-actions">
70
- <button class="btn btn-ghost btn-sm" id="console-clear-btn" type="button" aria-label="Limpiar logs">Limpiar</button>
71
- <button class="btn btn-ghost btn-sm" id="console-close-btn" type="button" aria-label="Cerrar consola">✕</button>
72
- </div>
73
- </div>
74
- <div class="console-logs" id="console-logs" role="list"></div>
75
- </div>
76
-
77
- <!-- Onboarding Spotlight -->
78
- <div id="onboarding-spotlight" class="onboarding-spotlight is-hidden" aria-hidden="true"></div>
79
-
80
- <div id="onboarding-tooltip" class="onboarding-tooltip is-hidden" role="dialog" aria-modal="true" aria-labelledby="ob-title">
81
- <div class="ob-step-label" id="ob-step-label">Paso 1 de X</div>
82
- <h2 class="ob-title" id="ob-title"></h2>
83
- <p class="ob-desc" id="ob-desc"></p>
84
-
85
- <div class="ob-nav">
86
- <div class="ob-dots" id="ob-dots" aria-hidden="true"></div>
87
- <div class="ob-actions">
88
- <button class="btn btn-ghost btn-sm" id="ob-skip" type="button">Saltar</button>
89
- <button class="btn btn-ghost btn-sm" id="ob-prev" type="button">Anterior</button>
90
- <button class="btn btn-primary btn-sm" id="ob-next" type="button">Siguiente</button>
91
- </div>
92
- </div>
93
- </div>
94
-
95
- <!-- JS Módulos (ES modules) -->
96
- <script type="module" src="/js/app.js"></script>
97
-
98
- </body>
99
- </html>
1
+ <!doctype html>
2
+ <html lang="es">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>TrackOps Beta — Centro de control</title>
7
+ <meta name="description" content="Panel local beta de TrackOps: gestión de proyectos, tareas, analíticas y seguimiento de tiempo para desarrolladores." />
8
+ <link rel="icon" type="image/svg+xml" href="favicon.svg" />
9
+
10
+ <!-- Google Fonts (coherente con web corporativa) -->
11
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
12
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
13
+ <link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@700;800&display=swap" rel="stylesheet" />
14
+
15
+ <!-- Anti-FOUC: aplica el tema antes del primer paint -->
16
+ <script>
17
+ (function(){
18
+ var t = localStorage.getItem('trackops-theme');
19
+ if (!t) t = 'light';
20
+ if (t === 'light') document.documentElement.setAttribute('data-theme','light');
21
+ })();
22
+ </script>
23
+
24
+ <!-- CSS Modular -->
25
+ <link rel="stylesheet" href="/css/tokens.css" />
26
+ <link rel="stylesheet" href="/css/base.css" />
27
+ <link rel="stylesheet" href="/css/components.css" />
28
+ <link rel="stylesheet" href="/css/panels.css" />
29
+ <link rel="stylesheet" href="/css/charts.css" />
30
+ <link rel="stylesheet" href="/css/terminal.css" />
31
+ <link rel="stylesheet" href="/css/onboarding.css" />
32
+ <link rel="stylesheet" href="/css/timeline.css" />
33
+ </head>
34
+ <body>
35
+
36
+ <!-- Skip to content (WCAG 2.2 AA) -->
37
+ <a class="skip-link" href="#view-container">Saltar al contenido principal</a>
38
+
39
+ <!-- App shell -->
40
+ <div class="app-shell">
41
+
42
+ <!-- ══ SIDEBAR ══ -->
43
+ <aside id="sidebar" role="navigation" aria-label="Navegación principal">
44
+ <!-- Rendered by sidebar.js -->
45
+ </aside>
46
+
47
+ <!-- ══ TOPBAR ══ -->
48
+ <header id="topbar" role="banner">
49
+ <!-- Rendered by topbar.js -->
50
+ </header>
51
+
52
+ <!-- ══ MAIN CONTENT ══ -->
53
+ <main id="view-container" role="main" tabindex="-1">
54
+ <!-- Rendered by router.js / views -->
55
+ </main>
56
+
57
+ </div><!-- /.app-shell -->
58
+
59
+ <!-- Flash / Toast container (aria-live para a11y) -->
60
+ <div id="flash-container" aria-live="polite" aria-atomic="false"></div>
61
+
62
+ <!-- Panel de registros -->
63
+ <div id="console-panel" class="console-panel" role="log" aria-label="Consola de errores" aria-live="off">
64
+ <div class="console-panel-header">
65
+ <div class="console-panel-title" id="console-panel-title">
66
+ <span>·</span> Registros
67
+ <span id="console-error-count" class="badge badge-danger" style="display:none">0</span>
68
+ </div>
69
+ <div class="console-panel-actions">
70
+ <button class="btn btn-ghost btn-sm" id="console-clear-btn" type="button" aria-label="Limpiar logs">Limpiar</button>
71
+ <button class="btn btn-ghost btn-sm" id="console-close-btn" type="button" aria-label="Cerrar consola">✕</button>
72
+ </div>
73
+ </div>
74
+ <div class="console-logs" id="console-logs" role="list"></div>
75
+ </div>
76
+
77
+ <!-- Onboarding Spotlight -->
78
+ <div id="onboarding-spotlight" class="onboarding-spotlight is-hidden" aria-hidden="true"></div>
79
+
80
+ <div id="onboarding-tooltip" class="onboarding-tooltip is-hidden" role="dialog" aria-modal="true" aria-labelledby="ob-title">
81
+ <div class="ob-step-label" id="ob-step-label">Paso 1 de X</div>
82
+ <h2 class="ob-title" id="ob-title"></h2>
83
+ <p class="ob-desc" id="ob-desc"></p>
84
+
85
+ <div class="ob-nav">
86
+ <div class="ob-dots" id="ob-dots" aria-hidden="true"></div>
87
+ <div class="ob-actions">
88
+ <button class="btn btn-ghost btn-sm" id="ob-skip" type="button">Saltar</button>
89
+ <button class="btn btn-ghost btn-sm" id="ob-prev" type="button">Anterior</button>
90
+ <button class="btn btn-primary btn-sm" id="ob-next" type="button">Siguiente</button>
91
+ </div>
92
+ </div>
93
+ </div>
94
+
95
+ <!-- JS Módulos (ES modules) -->
96
+ <script type="module" src="/js/app.js"></script>
97
+
98
+ </body>
99
+ </html>