Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
173 commits
Select commit Hold shift + click to select a range
6946f49
feat: Complete UI overhaul and feature implementation
ElliotBadinger Aug 18, 2025
5ce8a1a
feat: Implement Recordings Manager and Fix Critical Warnings
ElliotBadinger Aug 18, 2025
5461ccc
refactor: Complete UI Polish and Crash Fixes
ElliotBadinger Aug 18, 2025
07572c2
feat: Implement comprehensive UI/UX overhaul and critical bug fixes
ElliotBadinger Aug 18, 2025
e34b082
feat: Implement time-based auto-save, fix playback, and add How-To guide
ElliotBadinger Aug 19, 2025
0744739
feat(auto-save): use timestamped filenames (Auto-save_YYYY-MM-DD_HH-m…
ElliotBadinger Aug 19, 2025
6043bcb
feat(memory): replace chunked lists with direct ring buffer for low-G…
ElliotBadinger Aug 19, 2025
6046024
feat(recording): switch to AAC-LC (.m4a) and save via MediaStore with…
ElliotBadinger Aug 19, 2025
9649c84
feat(ui): add Save Clip flow, sync listening toggle, and recordings l…
ElliotBadinger Aug 19, 2025
3c3b7cf
test: Add comprehensive unit and instrumentation tests
ElliotBadinger Aug 19, 2025
24b44f8
Refactor: Abstract system clock for testability and update gitignore
ElliotBadinger Aug 19, 2025
49750ef
Fix auto-save crash, improve performance, and add tests
google-labs-jules[bot] Aug 20, 2025
4731adf
Create android-ci.yml
ElliotBadinger Aug 20, 2025
15f01e4
Update android-ci.yml
ElliotBadinger Aug 20, 2025
532bbe3
Upload google services json config
ElliotBadinger Aug 20, 2025
70cf5f3
Update android-ci.yml
ElliotBadinger Aug 20, 2025
9a4074d
Updating android-ci.yml
ElliotBadinger Aug 20, 2025
d66fc3b
Delete .github/workflows/android-ci.yml
ElliotBadinger Aug 20, 2025
a788020
Create android-ci.yml
ElliotBadinger Aug 20, 2025
d2d65bd
feat: Configure project for Firebase Test Lab
google-labs-jules[bot] Aug 20, 2025
1dbc53f
feat: Implement auto-save and performance improvements
ElliotBadinger Aug 20, 2025
eae7f83
Merge remote changes
ElliotBadinger Aug 20, 2025
65617f8
test: stabilize JVM unit tests and build
openhands-agent Aug 29, 2025
34cd69a
build: begin Phase 1 modularization and DI setup (Kotlin DSL, version…
openhands-agent Aug 29, 2025
d93fda9
feat(refactor-phase1): add Hilt app + modules and domain/data DI stub…
openhands-agent Aug 29, 2025
042226f
chore(data): annotate RecordingRepositoryImpl with @Inject constructo…
openhands-agent Aug 29, 2025
9b48e78
build(hilt): add annotationProcessor for Java sources alongside kapt …
openhands-agent Aug 29, 2025
21ade27
build: align toolchain to Kotlin 2.0.21, Coroutines 1.8.1, Hilt 2.51.…
openhands-agent Aug 29, 2025
e87a294
feat(recorder): add features:recorder module, RecordingViewModel, bas…
openhands-agent Aug 29, 2025
81c0ee8
ci: add GitLab CI pipeline to run gradle help, assemble, and tests wi…
openhands-agent Aug 29, 2025
03f0a1d
ci: fix .gitlab-ci.yml YAML quoting and stages; add Android SDK image…
openhands-agent Aug 30, 2025
ae1b605
ci: add workflow rules, lint job, coverage job; enable Jacoco for sub…
openhands-agent Aug 30, 2025
81e8e03
ci: switch to gradle image and install Android SDK via sdkmanager; ad…
openhands-agent Aug 30, 2025
5221e39
ci: avoid Android SDK bootstrap in verify job to prevent early exit; …
openhands-agent Aug 30, 2025
e47f813
ci: assemble debug variants and build domain; keep verify minimal
openhands-agent Aug 30, 2025
1fdbb96
build: remove explicit jacoco plugin declaration; keep jacoco via app…
openhands-agent Aug 30, 2025
7f48d1c
build: avoid duplicate jacocoTestReport by configuring existing tasks…
openhands-agent Aug 30, 2025
e2e83db
ci: harden Android SDK bootstrap (set -euo pipefail, repositories.cfg…
openhands-agent Aug 30, 2025
7fc7d9d
ci: accept licenses before install and use sdkmanager --install with …
openhands-agent Aug 30, 2025
62b77eb
ci: pipe yes into sdkmanager --install to avoid interactive prompts
openhands-agent Aug 30, 2025
6365666
ci: tolerate sdkmanager --licenses non-zero exit; proceed to non-inte…
openhands-agent Aug 30, 2025
4a32341
sync between github and gitlab repo
ElliotBadinger Aug 30, 2025
d085caf
Edit .gitlab-cii.yml
ElliotBadinger Aug 30, 2025
2f6fdd6
Edit .gitlab-ci.yml to include other yaml file
ElliotBadinger Aug 30, 2025
8ae4b35
Edit .gitlab-ci.yml for proper formatting
ElliotBadinger Aug 30, 2025
286ac82
Edit .gitlab-cii.yml
ElliotBadinger Aug 30, 2025
4fe54b3
Edit .gitlab-cii.yml
ElliotBadinger Aug 30, 2025
c6fdb9b
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
b50018f
Edit .gitlab-cii.yml
ElliotBadinger Aug 30, 2025
e515314
Edit .gitlab-cii.yml
ElliotBadinger Aug 30, 2025
ad45bfa
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
37b367f
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
1886ad1
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
c9f5b50
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
29867d3
Update .gitlab-ci.yml file
ElliotBadinger Aug 30, 2025
aed6948
Fix GitLab CI GitHub authentication - improved token validation and r…
ElliotBadinger Aug 30, 2025
a7b6dc4
Add cross-platform CI: GitHub Actions workflow for GitLab parity
ElliotBadinger Aug 30, 2025
c06cf54
Add comprehensive cross-platform CI/CD setup documentation
ElliotBadinger Aug 30, 2025
d143cf8
fix: resolve build errors for :features:recorder module
ElliotBadinger Aug 30, 2025
f2768b1
Fix compilation issues and security
ElliotBadinger Aug 30, 2025
7851f0e
refactor: Complete Android architect refactoring to com.siya.epistemo…
ElliotBadinger Aug 30, 2025
aba73d6
Fix classpath issue in TimeFormat.java by updating package to match m…
ElliotBadinger Aug 30, 2025
6ea37b7
Fix: Correct package names in AndroidManifest.xml
ElliotBadinger Sep 2, 2025
1389e65
Agent Session 2025-01-15: Established documentation system and fixed …
ElliotBadinger Sep 3, 2025
b494310
Agent Session 2025-01-15: MAJOR SUCCESS - Achieved 100% build success…
ElliotBadinger Sep 3, 2025
48fc209
Agent Session 2025-01-15: Add GitHub MCP server documentation and imp…
ElliotBadinger Sep 3, 2025
54ad71a
Agent: Create AGENT_DOCUMENTATION.md with current project state and c…
ElliotBadinger Sep 3, 2025
80d2ef7
Agent: Create AGENT_WORKFLOW_GUIDE.md with complete AI agent workflow…
ElliotBadinger Sep 3, 2025
e7684e8
Agent: Create AGENT_SESSION_CHECKLIST.md with step-by-step workflow c…
ElliotBadinger Sep 3, 2025
ed219dd
Add documentation files
ElliotBadinger Sep 3, 2025
744dd75
Update AGENT_WORKFLOW_GUIDE.md
ElliotBadinger Sep 3, 2025
c1e223b
Update AGENT_DOCUMENTATION.md
ElliotBadinger Sep 3, 2025
7fc92a4
Update AGENT_WORKFLOW_GUIDE.md
ElliotBadinger Sep 3, 2025
4b776f1
Update AGENT_DOCUMENTATION.md
ElliotBadinger Sep 3, 2025
0bef54f
Update AGENT_SESSION_CHECKLIST.md
ElliotBadinger Sep 3, 2025
d535d00
Update AGENT_DOCUMENTATION.md
ElliotBadinger Sep 3, 2025
86bc600
Update AGENT_DOCUMENTATION.md
ElliotBadinger Sep 3, 2025
da9eb53
Update AGENT_WORKFLOW_GUIDE.md
ElliotBadinger Sep 3, 2025
57bd2c2
Update AGENT_WORKFLOW_GUIDE.md
ElliotBadinger Sep 3, 2025
e9c28a3
Update AGENT_DOCUMENTATION.md
ElliotBadinger Sep 3, 2025
25466e8
Update AGENT_SESSION_CHECKLIST.md
ElliotBadinger Sep 3, 2025
634b180
Update README.md
ElliotBadinger Sep 3, 2025
d894789
Agent Session 2025-09-04: Complete TIER 1 assessment - All critical e…
ElliotBadinger Sep 4, 2025
ebc56e5
Update documentation, agent workflow guide, and audio test configurat…
ElliotBadinger Sep 4, 2025
2e8bc3b
Merge remote changes with local updates
ElliotBadinger Sep 4, 2025
36df649
Agent Session 2025-01-15: Fix CI workflow project path syntax
ElliotBadinger Sep 4, 2025
4585c2b
Agent Session 2025-01-15: Fix CI artifact naming issue
ElliotBadinger Sep 4, 2025
7d789d5
Fix CI workflow: replace invalid replace() function with conditional
ElliotBadinger Sep 4, 2025
46b9798
Remove GitLab sync job from CI workflow
ElliotBadinger Sep 4, 2025
c15a368
TIER 2: Convert SaidItService to Kotlin coroutines
ElliotBadinger Sep 4, 2025
59eb43a
Update documentation: TIER 2 threading modernization complete
ElliotBadinger Sep 4, 2025
89c8f68
TIER 2 Complete: SaidItService Kotlin coroutines conversion
ElliotBadinger Sep 4, 2025
b895d13
Agent Session 2025-01-16: TIER 1 COMPLETE - Fixed duplicate class err…
ElliotBadinger Sep 4, 2025
338b9f7
Agent Session 2025-01-16: TIER 1 COMPLETE - Fixed duplicate class err…
ElliotBadinger Sep 4, 2025
42c7143
Agent: Emphasize importance of committing changes and resolving confl…
ElliotBadinger Sep 4, 2025
6830c4a
Agent: Correct dates to 2025-09-04 22:47 UTC and add time MCP instruc…
ElliotBadinger Sep 4, 2025
6035530
feat: modernize AudioMemory with Result<T> error handling pattern
openhands-agent Sep 5, 2025
2e8b8f7
Fix Android test compilation errors and convert StringFormat to Kotlin
openhands-agent Sep 5, 2025
72f2b84
Merge pull request #3 from brainstein-maker/refactor/phase1-modulariz…
ElliotBadinger Sep 5, 2025
28c84de
Agent Session 2025-09-05: Added comprehensive research frameworks and…
ElliotBadinger Sep 5, 2025
01433b5
Agent Session 2025-09-05: Updated existing .md files with research fr…
ElliotBadinger Sep 5, 2025
87a5785
Agent Session 2025-09-05: Add missing research framework files
ElliotBadinger Sep 5, 2025
961669a
Agent Session 2025-09-05: Clock Java→Kotlin conversion 90% complete
ElliotBadinger Sep 5, 2025
a20a16f
Agent Session 2025-09-05: Clock Java→Kotlin conversion 100% COMPLETE
ElliotBadinger Sep 5, 2025
4d66dec
Agent Session [2025-09-06 05:26]: TIER 1 Critical Error - Reinstated …
ElliotBadinger Sep 6, 2025
2a2fe7e
Agent Session [2025-01-27]: TIER 2 Clock Conversion Complete - Java t…
ElliotBadinger Sep 6, 2025
77be90a
Agent Session 2025-09-06: Updated documentation frameworks and workfl…
ElliotBadinger Sep 6, 2025
cb277e5
Agent Session 2025-09-06: Removed Java Clock files and updated docume…
ElliotBadinger Sep 6, 2025
70d44e0
Manual update from agent session: TIER1 Clock fix and docs
ElliotBadinger Sep 6, 2025
390c5a1
Agent Session 2025-09-06: Updated docs for push verification and CI w…
ElliotBadinger Sep 6, 2025
2d6840f
update prompt to agent
ElliotBadinger Sep 6, 2025
61405bc
Agent Session 2025-09-06 07:53 UTC: TIER 2 TimeFormat Java→Kotlin Mig…
ElliotBadinger Sep 6, 2025
06237a8
TIER 1 FIX: Resolve Kapt annotation processing error in CI
ElliotBadinger Sep 6, 2025
29d609a
Update documentation: TIER 1 KAPT error fixed, TimeFormat verified co…
ElliotBadinger Sep 6, 2025
1089ea0
Local: KAPT fix and TimeFormat completion documentation
ElliotBadinger Sep 6, 2025
9f58b8f
Merge branch 'refactor/phase1-modularization-kts-hilt' of github.com:…
ElliotBadinger Sep 6, 2025
77398f8
CRITICAL: Add GitHub MCP synchronization warnings
ElliotBadinger Sep 6, 2025
ade3e48
TIER 2: Convert Views.java to Views.kt with modern Kotlin patterns
ElliotBadinger Sep 6, 2025
f6455bb
Fix git tracking and Python dependencies
ElliotBadinger Sep 6, 2025
820fe04
Agent Session 2025-09-06 21:20 UTC: TIER 2 UserInfo.java→Kotlin Migra…
ElliotBadinger Sep 6, 2025
67c808e
Update documentation: TIER 1 definitively resolved, UserInfo migratio…
ElliotBadinger Sep 6, 2025
e0da718
Add comprehensive UserInfoTest.kt for migration validation
ElliotBadinger Sep 6, 2025
516208f
Agent Session [2025-09-06 22:19 UTC]: TIER2 BroadcastReceiver Java to…
ElliotBadinger Sep 6, 2025
1204ba6
Agent Session [2025-09-07 05:09 UTC]: AacMp4Writer.java → AacMp4Write…
ElliotBadinger Sep 7, 2025
a7e1e1c
Agent Session 2025-01-27: Documentation updates - AacMp4Writer Kotlin…
ElliotBadinger Sep 7, 2025
1f2d652
Remove accidentally committed Python virtual environment files
ElliotBadinger Sep 7, 2025
10511d3
Remove automation directory and update .gitignore
ElliotBadinger Sep 8, 2025
aa4f896
Agent Session 2025-01-27: Fixed AacMp4WriterTest.kt import issues - m…
ElliotBadinger Sep 8, 2025
1e2d0f4
docs: Update Kotlin migration framework with critical testing gaps
ElliotBadinger Sep 8, 2025
f7e73ba
Agent Session [2025-01-27]: TIER 1 Critical Errors RESOLVED
ElliotBadinger Sep 9, 2025
d79fe01
Agent Session [2025-09-09 04:31 UTC]: TECHNICAL DEBT CORRECTED
ElliotBadinger Sep 9, 2025
65b585e
Documentation interlinking improvements - comprehensive cross-referen…
ElliotBadinger Sep 9, 2025
1ce2e62
modified mcp-optimization .md file to remove bloat content
ElliotBadinger Sep 9, 2025
d6b82a3
Standardized default agent prompt - unified across README.md and echo…
ElliotBadinger Sep 9, 2025
ee6705b
fixed failing tests and github workflows
ElliotBadinger Sep 9, 2025
1bf021b
docs: Complete documentation system refactoring and build validation
ElliotBadinger Sep 9, 2025
d2e1009
fix(ci): Remove invalid --exclude-tests Gradle option
ElliotBadinger Sep 9, 2025
10c9982
Agent Session [2025-09-09 07:43 UTC]: SaidItFragment.java → SaidItFra…
ElliotBadinger Sep 9, 2025
58e49b6
Agent Session [2025-09-09]: Docs hardening for MCP workflows\n\n- Add…
ElliotBadinger Sep 9, 2025
5c3b1ac
Agent Session [2025-01-09]: Documentation and codebase cleanup
ElliotBadinger Sep 9, 2025
440b6f0
Agent Session [2025-01-09]: Document TIER 1 CI compilation errors as …
ElliotBadinger Sep 9, 2025
7558930
TIER 1 Fix: Resolve Kotlin type inference compilation error in SaidIt…
ElliotBadinger Sep 9, 2025
88a2bb5
PERFORMANCE: Optimize CI workflow for faster execution
ElliotBadinger Sep 9, 2025
d00e43a
Agent Session [2025-01-09]: Implement comprehensive Agent Onboarding …
ElliotBadinger Sep 9, 2025
bbf7e7b
Add safe agent welcome system without quoting issues
ElliotBadinger Sep 9, 2025
edfefce
Agent Session [2025-09-09]: Fixed all TIER 1 MockK compilation issues…
ElliotBadinger Sep 9, 2025
79ce553
Agent Session [2025-09-09]: Kotlin migration + Quality Standards Fram…
ElliotBadinger Sep 9, 2025
42d898b
Agent Session 2025-09-09: Add Hilt testing deps; upgrade EchoApp/AppM…
ElliotBadinger Sep 9, 2025
fc2b1bb
Agent Session 2025-09-09: Stabilize Robolectric tests (sdk 34), grant…
ElliotBadinger Sep 9, 2025
a109e16
Agent Session 2025-09-09: Documentation updated to reflect completed …
ElliotBadinger Sep 9, 2025
75d7bb4
Merge: stabilize SaidIt tests, Hilt integration tests, and audit docs…
ElliotBadinger Sep 9, 2025
9b5ff0f
Agent Session 2025-09-09: add unit-tests workflow with workflow_dispa…
ElliotBadinger Sep 9, 2025
686b3ec
Agent Session 2025-09-09: add comprehensive Android CI (unit, instrum…
ElliotBadinger Sep 9, 2025
8930fb8
Agent Session 2025-09-09: switch instrumentation job to macos-13 (Int…
ElliotBadinger Sep 9, 2025
bfa5454
Agent Session 2025-09-09: switch instrumentation to ATD (aosp_atd) on…
ElliotBadinger Sep 9, 2025
92a2fe8
Agent Session 2025-09-09: add -skip-adb-auth and explicit -ports to e…
ElliotBadinger Sep 9, 2025
2b54207
Agent Session [2025-09-09]: Kotlin migration - RecordingsActivity wit…
ElliotBadinger Sep 9, 2025
1d4af38
Agent Session [2025-09-09]: Kotlin migration - SaveClipBottomSheet wi…
ElliotBadinger Sep 9, 2025
b3cda33
docs: Update change log with RecordingsActivity and SaveClipBottomShe…
ElliotBadinger Sep 9, 2025
ccdfed3
Agent Session [2025-09-09]: Kotlin migration - PromptFileReceiver wit…
ElliotBadinger Sep 9, 2025
29ade31
Agent Session [2025-09-09]: Kotlin migration - NotifyFileReceiver wit…
ElliotBadinger Sep 9, 2025
2cc7ad0
fix: Remove duplicate NotifyFileReceiver inner class from SaidItService
ElliotBadinger Sep 9, 2025
cc93f5f
fix: Remove duplicate file receiver implementations from SaidItFragment
ElliotBadinger Sep 9, 2025
8665fb2
Rename WARP.md to AGENTS.md
ElliotBadinger Oct 4, 2025
c6ac768
Update AGENTS.md
ElliotBadinger Oct 4, 2025
5de96a3
Agent Session [2025-03-10]: Modular recorder refactor
ElliotBadinger Oct 4, 2025
748d376
Update and rename WARP.md to AGENTS.md
ElliotBadinger Oct 4, 2025
1ea59f0
Automate healthcheck Android SDK bootstrap
ElliotBadinger Oct 4, 2025
42a0473
Ensure CI bootstraps Android SDK
ElliotBadinger Oct 4, 2025
fd83663
Refactor audio tests to avoid Robolectric network dependency
ElliotBadinger Oct 5, 2025
dda70ff
Merge pull request #6 from ElliotBadinger/codex/fix-github-actions-fa…
ElliotBadinger Oct 5, 2025
9cbaddd
Merge pull request #5 from ElliotBadinger/codex/complete-comprehensiv…
ElliotBadinger Oct 5, 2025
7c1e2d9
Merge pull request #4 from ElliotBadinger/codex/complete-comprehensiv…
ElliotBadinger Oct 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions .amazonq/agents/default.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"name": "default-agent",
"version": "1.0.0",
"description": "Default agent configuration",
"mcpServers": {},
"tools": [
"fsRead",
"fsWrite",
"fsReplace",
"listDirectory",
"fileSearch",
"executeBash",
"codeReview",
"displayFindings"
],
"allowedTools": [
"fsRead",
"listDirectory",
"fileSearch",
"codeReview",
"displayFindings"
],
"toolsSettings": {
"execute_bash": {
"alwaysAllow": [
{
"preset": "readOnly"
}
]
},
"use_aws": {
"alwaysAllow": [
{
"preset": "readOnly"
}
]
}
},
"includedFiles": [
"AmazonQ.md",
"README.md",
".amazonq/rules/**/*.md"
],
"resources": [],
"createHooks": [],
"promptHooks": []
}
1 change: 1 addition & 0 deletions .amazonq/cli-todo-lists/1757088802541.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"tasks":[{"task_description":"Read and analyze the compilation_edited.md file to understand its structure","completed":true},{"task_description":"Identify all .md files mentioned and categorize them as existing vs new files","completed":true},{"task_description":"Create a mapping of changes for existing .md files that need updates","completed":true},{"task_description":"Identify completely new .md files that need to be created","completed":true},{"task_description":"Apply updates to existing .md files systematically","completed":true},{"task_description":"Create new .md files from extracted content","completed":true},{"task_description":"Verify all changes were applied correctly","completed":true}],"description":"Process large compilation file to extract and apply .md file changes to Echo project","context":["Read the compilation_edited.md file and identified its structure. The file contains multiple .md files clearly separated with ### headers and markdown code blocks. Found several major files: AGENT_DOCUMENTATION.md, RESEARCH_FRAMEWORK.md, ML_STRATEGY_FRAMEWORK.md, PERFORMANCE_RESEARCH_FRAMEWORK.md, UI_UX_ENHANCEMENT_FRAMEWORK.md, and KOTLIN_MIGRATION_FRAMEWORK.md. The content appears to be well-formatted and organized.","Identified existing vs new files from compilation_edited.md:\n\nEXISTING FILES (need updates):\n- AGENT_DOCUMENTATION.md (exists, needs major update)\n\nNEW FILES (need to be created):\n- RESEARCH_FRAMEWORK.md\n- ML_STRATEGY_FRAMEWORK.md \n- PERFORMANCE_RESEARCH_FRAMEWORK.md\n- UI_UX_ENHANCEMENT_FRAMEWORK.md\n- KOTLIN_MIGRATION_FRAMEWORK.md\n\nThe compilation file contains well-structured content with clear markdown formatting and proper file boundaries.","Extracted AGENT_DOCUMENTATION.md content from compilation file. The new version is significantly more comprehensive than the current version, with detailed change tracking, research framework integration, and updated project status. This represents a major update to the existing file.","Successfully updated AGENT_DOCUMENTATION.md and created RESEARCH_FRAMEWORK.md and ML_STRATEGY_FRAMEWORK.md. Now need to create the remaining new files: PERFORMANCE_RESEARCH_FRAMEWORK.md, UI_UX_ENHANCEMENT_FRAMEWORK.md, and KOTLIN_MIGRATION_FRAMEWORK.md.","Successfully created all new framework files: PERFORMANCE_RESEARCH_FRAMEWORK.md, UI_UX_ENHANCEMENT_FRAMEWORK.md, and KOTLIN_MIGRATION_FRAMEWORK.md. All files from the compilation_edited.md have been processed and applied to the project. Now need to verify all changes were applied correctly."],"modified_files":["AGENT_DOCUMENTATION.md","RESEARCH_FRAMEWORK.md","ML_STRATEGY_FRAMEWORK.md","AGENT_DOCUMENTATION.md","RESEARCH_FRAMEWORK.md","ML_STRATEGY_FRAMEWORK.md","PERFORMANCE_RESEARCH_FRAMEWORK.md","UI_UX_ENHANCEMENT_FRAMEWORK.md","KOTLIN_MIGRATION_FRAMEWORK.md"],"id":"1757088802541"}
229 changes: 229 additions & 0 deletions .github/workflows/agent-health.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,229 @@
name: Agent Health Check

on:
schedule:
# Run every night at 2 AM UTC
- cron: '0 2 * * *'
workflow_dispatch:
# Allow manual triggering for testing
inputs:
tier_level:
description: 'Health check tier level (0-4, or 0-2 for default)'
required: false
default: '0-2'
type: string
include_android:
description: 'Include Android tests (Tier 3)'
required: false
default: false
type: boolean
include_full:
description: 'Include coverage and lint (Tier 4)'
required: false
default: false
type: boolean

jobs:
agent-health:
name: Agent Health Validation
runs-on: ubuntu-latest
timeout-minutes: 15

strategy:
matrix:
tier: [0, 1, 2]
fail-fast: false # Continue testing other tiers even if one fails

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'

- name: Accept Android SDK licenses
run: |
echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses || true

- name: Make health check script executable
run: chmod +x scripts/agent/healthcheck.sh

- name: Run health check tier ${{ matrix.tier }}
run: |
echo "Running health check for Tier ${{ matrix.tier }}"
bash scripts/agent/healthcheck.sh --tier ${{ matrix.tier }}

- name: Upload health check results
if: always()
uses: actions/upload-artifact@v4
with:
name: health-check-tier-${{ matrix.tier }}-results
path: |
build/
*/build/test-results/
*/build/reports/
retention-days: 7
if-no-files-found: ignore

agent-health-full:
name: Full Agent Health (Optional)
runs-on: ubuntu-latest
timeout-minutes: 20
if: github.event_name == 'workflow_dispatch'
needs: agent-health

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'

- name: Accept Android SDK licenses
run: |
echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses || true

- name: Make health check script executable
run: chmod +x scripts/agent/healthcheck.sh

- name: Run full health check with options
run: |
tier_level="${{ inputs.tier_level || '0-2' }}"
android_flag=""
full_flag=""

if [[ "${{ inputs.include_android }}" == "true" ]]; then
android_flag="--with-android"
fi

if [[ "${{ inputs.include_full }}" == "true" ]]; then
full_flag="--with-full"
fi

echo "Running: bash scripts/agent/healthcheck.sh --tier $tier_level $android_flag $full_flag"
bash scripts/agent/healthcheck.sh --tier "$tier_level" $android_flag $full_flag

- name: Upload full health results
if: always()
uses: actions/upload-artifact@v4
with:
name: full-health-check-results
path: |
build/
*/build/test-results/
*/build/reports/
*/build/jacoco/
retention-days: 7
if-no-files-found: ignore

update-dashboard:
name: Update Health Dashboard
runs-on: ubuntu-latest
needs: [agent-health, agent-health-full]
if: always() && github.event_name == 'schedule'

steps:
- name: Checkout code
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}

- name: Determine overall health status
id: health_status
run: |
# Check if core tiers (0,1,2) all passed
core_success="true"

# This is a simplified check - in real implementation,
# we'd analyze the job outcomes from previous steps
if [[ "${{ needs.agent-health.result }}" != "success" ]]; then
core_success="false"
fi

echo "core_success=$core_success" >> $GITHUB_OUTPUT
echo "timestamp=$(date -u '+%Y-%m-%d %H:%M UTC')" >> $GITHUB_OUTPUT

- name: Update health dashboard
if: steps.health_status.outputs.core_success == 'true'
run: |
# Update the health dashboard with current status
timestamp="${{ steps.health_status.outputs.timestamp }}"

# Update health dashboard file
sed -i "s/\*\*Last Updated\*\*: .*/\*\*Last Updated\**: $timestamp/" docs/project-state/health-dashboard.md

# Update component validation timestamps
sed -i "s/| \*\*Build System\*\* | .* | .* |/| **Build System** | 🟢 STABLE | $timestamp |/" docs/project-state/health-dashboard.md
sed -i "s/| \*\*Core Tests\*\* | .* | .* |/| **Core Tests** | 🟢 PASSING | $timestamp |/" docs/project-state/health-dashboard.md
sed -i "s/| \*\*Environment\*\* | .* | .* |/| **Environment** | 🟢 READY | $timestamp |/" docs/project-state/health-dashboard.md

- name: Update health dashboard with issues
if: steps.health_status.outputs.core_success == 'false'
run: |
# Update dashboard to reflect detected issues
timestamp="${{ steps.health_status.outputs.timestamp }}"

sed -i "s/\*\*Last Updated\*\*: .*/\*\*Last Updated\**: $timestamp/" docs/project-state/health-dashboard.md
sed -i "s/\*\*Status\*\*: .*/\*\*Status\**: 🔴 **ISSUES DETECTED** - Check recent nightly health run/" docs/project-state/health-dashboard.md

- name: Commit dashboard updates
run: |
if [[ $(git status --porcelain | wc -l) -gt 0 ]]; then
git config --local user.email "action@github.com"
git config --local user.name "Agent Health Bot"
git add docs/project-state/health-dashboard.md
git commit -m "Agent Health: Update dashboard from nightly run"
git push
else
echo "No changes to commit"
fi

notify-on-failure:
name: Notify on Health Issues
runs-on: ubuntu-latest
needs: [agent-health]
if: failure() && github.event_name == 'schedule'

steps:
- name: Create issue for health failure
uses: actions/github-script@v7
with:
script: |
const title = 'Agent Health Check Failed - ' + new Date().toISOString().split('T')[0];
const body = `## 🚨 Nightly Agent Health Check Failed

The automated agent health check detected issues with the project setup.

**Failed Job**: ${{ github.run_id }}
**Workflow**: Agent Health Check
**Time**: ${{ github.event.repository.updated_at }}

### Next Steps
1. Check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details
2. Run \`bash scripts/agent/healthcheck.sh\` locally to reproduce
3. Fix any TIER 1 issues immediately
4. Update health dashboard once resolved

### Health Check Tiers
- **Tier 0**: Environment and SDK validation
- **Tier 1**: Quick compile check
- **Tier 2**: Core unit tests

This issue will be automatically closed when health checks pass again.
`;

await github.rest.issues.create({
owner: context.repo.owner,
repo: context.repo.repo,
title: title,
body: body,
labels: ['agent-health', 'tier-1', 'automated']
});
Loading
Loading