agileflow 2.89.3 → 2.90.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.
Files changed (37) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/lib/placeholder-registry.js +617 -0
  3. package/lib/smart-json-file.js +228 -1
  4. package/lib/table-formatter.js +519 -0
  5. package/lib/transient-status.js +374 -0
  6. package/lib/ui-manager.js +612 -0
  7. package/lib/validate-args.js +213 -0
  8. package/lib/validate-names.js +143 -0
  9. package/lib/validate-paths.js +434 -0
  10. package/lib/validate.js +37 -737
  11. package/package.json +3 -1
  12. package/scripts/check-update.js +17 -3
  13. package/scripts/lib/sessionRegistry.js +678 -0
  14. package/scripts/session-manager.js +77 -10
  15. package/scripts/tui/App.js +151 -0
  16. package/scripts/tui/index.js +31 -0
  17. package/scripts/tui/lib/crashRecovery.js +304 -0
  18. package/scripts/tui/lib/eventStream.js +309 -0
  19. package/scripts/tui/lib/keyboard.js +261 -0
  20. package/scripts/tui/lib/loopControl.js +371 -0
  21. package/scripts/tui/panels/OutputPanel.js +242 -0
  22. package/scripts/tui/panels/SessionPanel.js +170 -0
  23. package/scripts/tui/panels/TracePanel.js +298 -0
  24. package/scripts/tui/simple-tui.js +390 -0
  25. package/tools/cli/commands/config.js +7 -31
  26. package/tools/cli/commands/doctor.js +28 -39
  27. package/tools/cli/commands/list.js +47 -35
  28. package/tools/cli/commands/status.js +20 -38
  29. package/tools/cli/commands/tui.js +59 -0
  30. package/tools/cli/commands/uninstall.js +12 -39
  31. package/tools/cli/installers/core/installer.js +13 -0
  32. package/tools/cli/lib/command-context.js +382 -0
  33. package/tools/cli/lib/config-manager.js +394 -0
  34. package/tools/cli/lib/ide-registry.js +186 -0
  35. package/tools/cli/lib/npm-utils.js +17 -3
  36. package/tools/cli/lib/self-update.js +148 -0
  37. package/tools/cli/lib/validation-middleware.js +491 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agileflow",
3
- "version": "2.89.3",
3
+ "version": "2.90.1",
4
4
  "description": "AI-driven agile development system for Claude Code, Cursor, Windsurf, and more",
5
5
  "keywords": [
6
6
  "agile",
@@ -56,9 +56,11 @@
56
56
  "chalk": "^4.1.2",
57
57
  "commander": "^12.1.0",
58
58
  "fs-extra": "^11.2.0",
59
+ "ink": "^3.2.0",
59
60
  "inquirer": "^8.2.6",
60
61
  "js-yaml": "^4.1.0",
61
62
  "ora": "^5.4.1",
63
+ "react": "^17.0.2",
62
64
  "semver": "^7.6.3"
63
65
  },
64
66
  "optionalDependencies": {
@@ -112,6 +112,9 @@ async function fetchLatestVersion() {
112
112
  headers: {
113
113
  'User-Agent': 'agileflow-cli',
114
114
  },
115
+ // Security: Explicitly enable TLS certificate validation
116
+ // Prevents MITM attacks on npm registry requests
117
+ rejectUnauthorized: true,
115
118
  };
116
119
 
117
120
  debugLog('Fetching from npm registry');
@@ -141,12 +144,23 @@ async function fetchLatestVersion() {
141
144
  });
142
145
 
143
146
  req.on('error', err => {
144
- debugLog('Network error', err.message);
147
+ // Enhanced error logging with retry guidance
148
+ const errorInfo = {
149
+ error: err.message,
150
+ code: err.code,
151
+ suggestion: 'Check network connection. If error persists, try: npm cache clean --force',
152
+ };
153
+ if (err.code === 'CERT_HAS_EXPIRED' || err.code === 'UNABLE_TO_VERIFY_LEAF_SIGNATURE') {
154
+ errorInfo.suggestion =
155
+ 'TLS certificate error - check system time or update CA certificates';
156
+ }
157
+ debugLog('Network error', errorInfo);
145
158
  resolve(null);
146
159
  });
147
160
 
148
- req.setTimeout(5000, () => {
149
- debugLog('Request timeout');
161
+ // 10 second timeout for registry requests
162
+ req.setTimeout(10000, () => {
163
+ debugLog('Request timeout (10s)', { suggestion: 'npm registry may be slow. Retry later.' });
150
164
  req.destroy();
151
165
  resolve(null);
152
166
  });