Skip to content

fix: auto-activate venv in start_ui.sh#1

Closed
shivanathd wants to merge 1 commit intoAutoForgeAI:masterfrom
shivanathd:fix/start-ui-venv-activation
Closed

fix: auto-activate venv in start_ui.sh#1
shivanathd wants to merge 1 commit intoAutoForgeAI:masterfrom
shivanathd:fix/start-ui-venv-activation

Conversation

@shivanathd
Copy link

Summary

  • Fixed start_ui.sh to auto-activate the virtual environment when it exists
  • Aligns behavior with start.sh which already handles venv activation

Problem

When running ./start_ui.sh after setting up a venv, users get:

ModuleNotFoundError: No module named 'dotenv'

The script was using the system Python (which may not have dependencies installed) instead of the venv Python.

Solution

Added venv detection and activation logic before running start_ui.py:

if [ -f "$SCRIPT_DIR/venv/bin/activate" ]; then
    source "$SCRIPT_DIR/venv/bin/activate"
    PYTHON_CMD="python"

Test plan

  • Tested on macOS with Python 3.12 venv
  • Verified ./start_ui.sh now works without manually activating venv

The start_ui.sh script was not activating the virtual environment,
causing ModuleNotFoundError for dependencies like python-dotenv.

This fix adds venv detection and activation logic (matching start.sh)
so users can run ./start_ui.sh directly after setting up the venv.
@leonvanzyl
Copy link
Collaborator

Pushed a fix for this. Thank you for pointing out.
Decided to push a fix separately due to some conflicts.

@leonvanzyl leonvanzyl closed this Jan 7, 2026
pRizz added a commit to pRizz/autocoder that referenced this pull request Jan 21, 2026
- Feature AutoForgeAI#1 (Test Feature 1) was already marked as passing
- No implementation work needed for this session
- Current progress: 22/230 features (9.6%)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
pRizz added a commit to pRizz/autocoder that referenced this pull request Jan 21, 2026
- Add inline styles to SVG icons to ensure proper sizing
- Add inline styles to layout components for correct positioning
- Install @tailwindcss/vite plugin for proper Tailwind v4 support
- Add spin and ping keyframe animations to index.css
- Feature AutoForgeAI#1: App loads without errors - VERIFIED

Changes made:
- Sidebar.tsx: Add explicit dimensions to sidebar and nav items
- App.tsx: Add layout styles to main container and home page
- ConnectionStatusIndicator.tsx: Fix status dot and icon sizing
- AssistantChatPanel.tsx: Fix floating button and icon sizing
- vite.config.ts: Add @tailwindcss/vite plugin
- index.css: Add keyframe animations

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
rudiheydra added a commit to rudiheydra/AutoBuildr that referenced this pull request Jan 27, 2026
- Add `from __future__ import annotations` to api/database.py for Python 3.8 support
- Verify Feature AutoForgeAI#1 (AgentSpec SQLite Table Schema) passes all requirements:
  - All 16 columns with correct types
  - CHECK constraints for max_turns (1-500) and timeout_seconds (60-7200)
  - Required indexes (ix_agentspec_source_feature, ix_agentspec_task_type, ix_agentspec_created)
- Update claude-progress.txt with verification notes
- Mark feature AutoForgeAI#1 as passing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
getworken pushed a commit to getworken/autocoder that referenced this pull request Jan 28, 2026
cabana8471-arch added a commit to cabana8471-arch/autoforge that referenced this pull request Jan 31, 2026
Bug AutoForgeAI#1: Fixed silent failure when backup manifest exists but Autocoder
files are also present (inconsistent state after partial reattach).
- Add get_project_detach_state() to detect "detached", "attached",
  "inconsistent", or "clean" states
- detach_project() now shows clear error message for inconsistent state
  with --force option to clean up and proceed
- restore_backup() now removes manifest on partial restore to allow
  subsequent re-detach
- get_detach_status() now reports state, is_inconsistent, files_at_root

Bug AutoForgeAI#2: Fixed agent-generated test files at project root not being
detected during detach.
- Add AUTOCODER_ROOT_PATTERNS with specific patterns (test-feature*.py,
  generate-*.py, mark_feature*.py, rollback-*.json, create-*-test*.php)
- Update get_autocoder_files() to check root level with safe patterns
- Generic patterns (test-*.py) at root still not matched to avoid
  false positives with user files

Adds 12 new tests covering:
- State detection (clean, attached, detached, inconsistent)
- --force cleanup of inconsistent state
- Partial restore manifest cleanup
- Root-level pattern detection for feature test files
- Verification that generic patterns at root are NOT matched

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
cabana8471-arch added a commit to cabana8471-arch/autoforge that referenced this pull request Jan 31, 2026
Bug AutoForgeAI#1: Fixed silent failure when backup manifest exists but Autocoder
files are also present (inconsistent state after partial reattach).
- Add get_project_detach_state() to detect "detached", "attached",
  "inconsistent", or "clean" states
- detach_project() now shows clear error message for inconsistent state
  with --force option to clean up and proceed
- restore_backup() now removes manifest on partial restore to allow
  subsequent re-detach
- get_detach_status() now reports state, is_inconsistent, files_at_root

Bug AutoForgeAI#2: Fixed agent-generated test files at project root not being
detected during detach.
- Add AUTOCODER_ROOT_PATTERNS with specific patterns (test-feature*.py,
  generate-*.py, mark_feature*.py, rollback-*.json, create-*-test*.php)
- Update get_autocoder_files() to check root level with safe patterns
- Generic patterns (test-*.py) at root still not matched to avoid
  false positives with user files

Adds 12 new tests covering:
- State detection (clean, attached, detached, inconsistent)
- --force cleanup of inconsistent state
- Partial restore manifest cleanup
- Root-level pattern detection for feature test files
- Verification that generic patterns at root are NOT matched

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
CoreAspectStu added a commit to CoreAspectStu/autocoder-custom that referenced this pull request Feb 9, 2026
- Added UATModeToggle component with Dev/UAT mode switching
- Integrated toggle button into Pipeline Dashboard header
- Conditional rendering: only shows when project selected + features exist
- Visual indication: badge + colored button (purple for UAT, gray for Dev)
- Mode state persists to localStorage
- Positioned between DevServerControl and Settings button

Component features:
- Toggle between Dev Mode (Code icon) and UAT Mode (FlaskConical icon)
- Smooth 300ms transitions
- Matches AutoCoder neobrutalist design
- Props: projectName, hasFeatures
- Validates: ✅ Button visible, ✅ Conditional display, ✅ Mode indicator

Part of UAT Gateway Plugin integration with AutoCoder.
Related to Feature AutoForgeAI#1 in UAT project.
CoreAspectStu added a commit to CoreAspectStu/autocoder-custom that referenced this pull request Feb 9, 2026
- Fixed TypeScript error: use progress.total instead of features?.total
- Removed unused 'mode' variable from UATModeToggle component
- Rebuilt frontend to include UATModeToggle in production build
- Frontend now builds successfully with all components included

Root cause: Frontend dist/ folder was outdated and hadn't been
rebuilt since Feature AutoForgeAI#1 was implemented.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
CoreAspectStu added a commit to CoreAspectStu/autocoder-custom that referenced this pull request Feb 9, 2026
- Removed unused 'FeatureListResponse' import from useUATTests.ts
- This import was causing TypeScript compilation to fail
- Failed compilation meant UATModeProvider wasn't included in built JS files
- When app tried to use useUATMode(), it threw 'must be used within UATModeProvider'
- Feature AutoForgeAI#1 (UAT Mode toggle) was broken due to this build error

Next step: Rebuild frontend with npm run build to deploy fix
CoreAspectStu added a commit to CoreAspectStu/autocoder-custom that referenced this pull request Feb 9, 2026
## Bug Fixes (server/routers/uat_gateway.py)

### Bug AutoForgeAI#1: Execution Mode Logic Error (Line 394)
- BEFORE: use_direct_execution = request.force or True
  → ALWAYS evaluated to True due to Python's 'or' operator
- AFTER: Proper ternary logic that checks if request.force is explicitly set
- Impact: Now correctly defaults to orchestrator mode when available

### Bug AutoForgeAI#2: Wrong Orchestrator Import (Line 47)
- BEFORE: from custom.uat_plugin.orchestrator import Orchestrator
  → BROKEN - missing dev_task_creator.py dependency
- AFTER: from custom.uat_gateway.orchestrator.orchestrator import
  → WORKING - complete implementation with all dependencies
- Impact: UAT_ORCHESTRATOR_AVAILABLE = True, enables orchestrator mode

## Documentation (docs/projects/autocoder/)

### uat-mode-trigger-fixes.md
Complete documentation of both bugs including:
- Root cause analysis with code examples
- Fix implementation details
- Flow diagram of UAT trigger process
- Database locations (uat_tests.db vs features.db)
- Two orchestrators explanation (why two exist, which to use)
- Testing procedures and verification steps
- Common issues and solutions
- Future maintenance guidelines

### INDEX.md
Master index for AutoCoder project documentation with:
- Quick reference table of all docs
- Recent changes section
- Links to related documentation

## Protective Comments (server/routers/uat_gateway.py)

Added warning comments at critical locations:
- Lines 45-61: Orchestrator import section warns about two locations
- Lines 406-418: Execution mode section warns about Python 'or' operator bug
- Both reference the documentation for detailed explanations

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants