s9n-devops-agent 2.0.11-dev.0 → 2.0.11-dev.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.
@@ -1,3 +1,10 @@
1
+ # Release Notes - s9n-devops-agent v2.0.11-dev.0
2
+
3
+ ## 🐛 Fixed
4
+ - **Bin Path**: Fixed incorrect `bin` path in `package.json` to ensure the executable works correctly.
5
+
6
+ ---
7
+
1
8
  # Release Notes - CS_DevOpsAgent v2.0.0
2
9
 
3
10
  ## 🚀 Major Release: Multi-Agent Worktree Support & Infrastructure Tracking
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "s9n-devops-agent",
3
- "version": "2.0.11-dev.0",
3
+ "version": "2.0.11-dev.1",
4
4
  "description": "CS_DevOpsAgent - Intelligent Git Automation System with multi-agent support and session management",
5
5
  "type": "module",
6
6
  "main": "src/cs-devops-agent-worker.js",
@@ -34,6 +34,7 @@
34
34
  "test:coverage": "jest --coverage",
35
35
  "test:worktree": "jest test_cases/worktree/",
36
36
  "test:e2e": "./test_scripts/test-multi-agent-e2e.sh",
37
+ "test:contracts": "jest tests/integration/contract-workflow.test.js",
37
38
  "test:push-behind": "jest test_scripts/push_behind_spec.js",
38
39
  "test:debug": "./debug-failing-tests.sh"
39
40
  },
@@ -51,9 +52,12 @@
51
52
  "dependencies": {
52
53
  "chokidar": "^3.5.3",
53
54
  "execa": "^7.1.1",
54
- "groq-sdk": "^0.37.0"
55
+ "groq-sdk": "^0.37.0",
56
+ "openai": "^4.20.0"
55
57
  },
56
58
  "devDependencies": {
59
+ "@jest/globals": "^29.7.0",
60
+ "eslint": "^8.56.0",
57
61
  "jest": "^29.7.0"
58
62
  },
59
63
  "engines": {
@@ -973,6 +973,47 @@ function printInstructions(initials) {
973
973
  log.header();
974
974
  }
975
975
 
976
+ async function setupEnvFile(projectRoot) {
977
+ log.header();
978
+ log.title('🔑 Setting up Environment Variables');
979
+
980
+ const envPath = path.join(projectRoot, '.env');
981
+ let envContent = '';
982
+
983
+ if (fs.existsSync(envPath)) {
984
+ envContent = fs.readFileSync(envPath, 'utf8');
985
+ log.info('.env file already exists');
986
+ } else {
987
+ log.info('Creating .env file');
988
+ }
989
+
990
+ // Check for OPENAI_API_KEY
991
+ if (!envContent.includes('OPENAI_API_KEY=')) {
992
+ console.log();
993
+ explain(`
994
+ ${colors.bright}Groq API Key Setup${colors.reset}
995
+ The contract automation features use Groq LLM (via OpenAI compatibility).
996
+ You can enter your API key now, or set it later in the .env file.
997
+ `);
998
+
999
+ const apiKey = await prompt('Enter Groq API Key (leave empty to skip)');
1000
+
1001
+ if (apiKey) {
1002
+ const newLine = envContent.endsWith('\n') || envContent === '' ? '' : '\n';
1003
+ envContent += `${newLine}# Groq API Key for Contract Automation\nOPENAI_API_KEY=${apiKey}\n`;
1004
+ fs.writeFileSync(envPath, envContent);
1005
+ log.success('Added OPENAI_API_KEY to .env');
1006
+ } else {
1007
+ log.warn('Skipped Groq API Key. Contract automation features may not work.');
1008
+ if (!fs.existsSync(envPath)) {
1009
+ fs.writeFileSync(envPath, '# Environment Variables\n');
1010
+ }
1011
+ }
1012
+ } else {
1013
+ log.info('OPENAI_API_KEY is already configured in .env');
1014
+ }
1015
+ }
1016
+
976
1017
  // ============================================================================
977
1018
  // CLEANUP FUNCTIONS
978
1019
  // ============================================================================
@@ -1178,6 +1219,9 @@ We can scan your codebase and generate them now.
1178
1219
  setupCommitFiles(projectRoot, initials);
1179
1220
  createRunScripts(projectRoot, initials, packageJson);
1180
1221
 
1222
+ // Setup .env with API keys
1223
+ await setupEnvFile(projectRoot);
1224
+
1181
1225
  // Clean up DevOpsAgent files to avoid duplicates
1182
1226
  cleanupDevOpsAgentFiles(projectRoot);
1183
1227