Skip to content

Claude config#153

Closed
SoyGema wants to merge 23 commits intogoogle-deepmind:mainfrom
SoyGema:claude_config
Closed

Claude config#153
SoyGema wants to merge 23 commits intogoogle-deepmind:mainfrom
SoyGema:claude_config

Conversation

@SoyGema
Copy link

@SoyGema SoyGema commented Jul 26, 2025

Add claude config

SoyGema and others added 23 commits July 15, 2025 19:18
…ting

- Add .github/workflows/upstream-sync.yml for daily upstream synchronization
- Add concordia/testing/test_evolutionary_simulation.py for CI testing
- Add UPSTREAM_SYNC.md documentation
- Remove old concordia/contrib/evolutionary_simulation.py (moved to examples/)

Features:
- Daily automatic sync with google-deepmind/concordia at 2 AM UTC
- Automatic PR creation when upstream changes detected
- Evolutionary simulation testing to ensure compatibility
- Core concordia utility testing
- Comprehensive documentation and troubleshooting guide

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add comprehensive section describing the evolutionary simulation framework
- Include key features: evolutionary algorithms, public goods games, measurements, checkpointing
- Provide clear usage examples for basic execution, custom configuration, and checkpointing
- Document research applications and automated testing capabilities
- Reference UPSTREAM_SYNC.md for automation details

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Set default permissions to 'read-all' for security
- Grant specific write permissions only to the sync job that needs them
- Follow GitHub security best practices for token permissions
- Resolves Scorecard security alert about overly broad permissions

🔒 Security improvement addressing GitHub Scorecard analysis

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Pin actions/checkout to commit hash 692973e3d937129bcbf40652eb9f2f61becf3332 (v4.1.7)
- Pin actions/github-script to commit hash 60a0d83039c74a4aee543508d2ffcb1c3799cdea (v7.0.1)
- Prevents supply chain attacks and tag manipulation
- Resolves GitHub Scorecard Pinned-Dependencies warning
- Follows security best practices for dependency management

🔒 Enhanced supply chain security

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Update actions/checkout to commit 11bd71901bbe5b1630ceea73d27597364c9af683 (v4.2.2)
- Update actions/github-script to commit e69ef5462fd455e02edcaf4dd7708eda96b9eda0 (v7.0.1)
- Ensures all GitHub Actions are pinned to current stable versions
- Resolves final Scorecard Pinned-Dependencies warning

🔒 Complete GitHub Actions security hardening

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Replace 'callable' with proper Callable type annotations for pytype compatibility
- Add Callable import from typing module
- Use ValueError instead of json.JSONDecodeError for broader Python compatibility
- Ensure proper type hints for function parameters:
  - export_measurements_fn: Callable[[measurements_lib.Measurements], Dict[str, list]]
  - setup_measurements_fn: Callable[[], measurements_lib.Measurements]
  - make_agent_config_fn: Callable[[str, Dict[str, Any]], Any]

Resolves pytype errors:
- Invalid type annotation '<instance of Callable>' for function parameters
- Missing json.JSONDecodeError attribute in some Python environments

🔧 Type safety improvements for CI/CD compatibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Update test-concordia.yml to use Python 3.11
- Update test-examples.yml to use Python 3.11
- Update upstream-sync.yml to use Python 3.11
- Resolves pytype errors caused by Python 3.9 incompatibility with Python 3.10+ features
- Ensures consistency with local development environment

Fixes issues with:
- @dataclasses.dataclass(kw_only=True) parameter (Python 3.10+)
- str | None union syntax (Python 3.10+)
- Other modern Python type annotations

🐍 Python version alignment for CI/CD compatibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Added dual copyright attribution to all original contributions:
- examples/evolutionary_simulation.py: Full evolutionary framework implementation
- concordia/typing/evolutionary.py: Type definitions for evolutionary simulations
- concordia/utils/checkpointing.py: Checkpoint utilities for evolutionary runs
- concordia/testing/test_evolutionary_simulation.py: CI testing framework
- .github/workflows/upstream-sync.yml: Automated upstream synchronization
- UPSTREAM_SYNC.md: Documentation for automation workflow

Format:
# Copyright 2023 DeepMind Technologies Limited.
# Copyright 2025 [SoyGema] - Modifications and additions with Claude Code

Maintains proper attribution while respecting DeepMind's original work and
clearly identifying new contributions and modifications made with Claude Code.

📝 Proper open source attribution and licensing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add module exports to concordia/contrib/components/__init__.py
- Add module exports to concordia/contrib/data/__init__.py
- Add module exports to concordia/contrib/data/questionnaires/__init__.py
- Resolves pytype import errors for contrib.data.questionnaires and contrib.components

These __init__.py files were empty, preventing proper module discovery.
Now pytype can correctly resolve imports like:
- from concordia.contrib.data.questionnaires import base_questionnaire
- from concordia.contrib.components.game_master import spaceship_system

🔧 Import resolution fixes for contrib modules

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Implement comprehensive LLM integration allowing users to run evolutionary
simulations with real language models instead of dummy models.

Key features:
- Configurable LLM types: pytorch_gemma, openai, mistral, etc.
- Smart fallback to dummy models if LLM setup fails
- Pre-configured examples (GEMMA_CONFIG, OPENAI_CONFIG)
- Sentence transformer integration for embeddings
- Comprehensive documentation in README.md

Technical improvements:
- Extended EvolutionConfig with LLM parameters
- Added setup_language_model() and setup_embedder() functions
- Robust error handling with graceful degradation
- Backwards compatibility maintained (dummy model by default)

Documentation updates:
- Complete setup guide for different model types
- Performance considerations and recommendations
- Environment setup instructions
- API key management guidance

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Add missing imports for spaceship_system, marketplace, and
situation_representation_via_narrative to resolve pytype errors.

This ensures all contrib components are properly exported and
accessible for import resolution.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Create missing concordia/contrib/__init__.py root module
- Add __all__ exports to all contrib component __init__.py files
- Include explicit comments for pytype static analysis
- Maintain all existing import functionality

This should resolve pytype import-error false positives while keeping
all runtime imports working correctly.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Evolutionary exp first iteration
This PR establishes the foundation for Claude-specific features and automates
the resolution of upstream synchronization issues.

## Overview
The primary goal is to add comprehensive Claude configuration to enable
AI-assisted development while eliminating the manual overhead of fixing
recurring upstream import issues.

## Key Components

### 1. CLAUDE.md - AI Context Configuration
- Complete project overview and architecture documentation
- Development workflows and testing procedures
- Language model integration guides (Gemma, OpenAI, future Claude)
- Troubleshooting guide for common issues
- Performance recommendations and configuration examples
- Virtual environment requirements (evolutionary_env mandatory)

### 2. Upstream Automation System
**Problem Solved**: Original Concordia repo frequently has import issues that
break CI when syncing. This automation lets us focus on creating features
instead of constantly fixing upstream mistakes.

**New Utilities**:
- `concordia/utils/upstream_fixes.py` - Auto-fixes contrib module imports
- `concordia/utils/ci_validation.py` - Pre-push validation pipeline

### 3. Automated Import Resolution
- Creates missing `__init__.py` files with proper 2025 licensing
- Adds `__all__` exports for pytype static analysis compatibility
- Fixes specific known issues (spaceship_system, marketplace imports)
- Updates legacy 2023 license headers to 2025

### 4. CI Validation Pipeline
- Environment validation (evolutionary_env requirement)
- Automated upstream fix application
- Full test suite execution
- Evolutionary simulation testing
- Pytype static analysis (warnings allowed)

## Benefits

### For Development
- 🤖 **AI-Assisted Development**: Claude context enables better assistance
- ⚡ **Automated Fix Application**: No more manual upstream issue resolution
- 🔄 **Pre-Push Validation**: Catch issues before CI fails
- 📋 **Standardized Workflows**: Consistent development procedures

### For Maintenance
- 🎯 **Focus on Creation**: Eliminate repetitive upstream fixes
- 📖 **Complete Documentation**: Comprehensive development guide
- 🛡️ **Error Prevention**: Automated detection of common issues
- 🔧 **Self-Healing**: Auto-application of known fixes

## Usage Examples

### Pre-Push Validation
```bash
source evolutionary_env/bin/activate
PYTHONPATH=. python -c "from concordia.utils.ci_validation import full_validation; full_validation()"
```

### After Upstream Sync
```bash
PYTHONPATH=. python -c "from concordia.utils.upstream_fixes import main; main()"
```

### Quick Development Validation
```bash
PYTHONPATH=. python -c "from concordia.utils.ci_validation import quick_validation; quick_validation()"
```

## Testing
- ✅ All utilities tested with evolutionary_env
- ✅ Validates existing evolutionary simulation functionality
- ✅ Maintains backward compatibility
- ✅ Comprehensive error handling and reporting

This establishes the infrastructure for Claude-enhanced development while
solving persistent upstream maintenance issues.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@google-cla
Copy link

google-cla bot commented Jul 26, 2025

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@SoyGema SoyGema closed this Jul 26, 2025
@SoyGema SoyGema deleted the claude_config branch July 26, 2025 11:05
@SoyGema
Copy link
Author

SoyGema commented Jul 26, 2025

my apologies , this PR was not intended for this repo.
Fixed in a30ebf3 for avoiding this happening again

@SoyGema SoyGema restored the claude_config branch July 26, 2025 11:08
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.

1 participant