FINGERPRINT=v22_1f3db391_1757345166574
EXPECTED_TOLERANCE=0.001
DOCKER_COMPOSE=docker-compose -f docker/docker-compose.yml
.PHONY: repro setup build run validate clean help
repro: setup build run validate
@echo "๐ Reproduction complete! Check results/hero_span_v22.csv"
setup:
@echo "๐ฆ Setting up reproduction environment..."
chmod +x scripts/download-corpus.sh
./scripts/download-corpus.sh
@echo "โ
Corpus download complete"
build:
@echo "๐จ Building Docker images..."
$(DOCKER_COMPOSE) build
@echo "โ
Docker build complete"
run:
@echo "๐ Running benchmark reproduction..."
@echo "โฑ๏ธ Expected duration: 45-60 minutes"
@echo "๐ฏ Target: ยฑ0.1 pp tolerance vs published results"
mkdir -p results logs
$(DOCKER_COMPOSE) up -d postgres redis
@echo "โณ Waiting for services to start..."
sleep 30
$(DOCKER_COMPOSE) run --rm lens-benchmark
@echo "โ
Benchmark execution complete"
validate:
@echo "๐ Validating reproduction results..."
node scripts/validate-reproduction.js
@echo "๐ Validation complete - check validation report"
clean:
@echo "๐งน Cleaning up..."
$(DOCKER_COMPOSE) down -v
docker system prune -f
rm -rf results/*.json logs/*.log
@echo "โ
Cleanup complete"
dev-setup:
@echo "๐ ๏ธ Setting up development environment..."
npm install
pip3 install -r requirements.txt
logs:
$(DOCKER_COMPOSE) logs -f lens-benchmark
shell:
$(DOCKER_COMPOSE) exec lens-benchmark /bin/bash
health:
@echo "๐ฅ Checking service health..."
curl -f http://localhost:3000/health || echo "โ Service not healthy"
$(DOCKER_COMPOSE) ps
help:
@echo "Lens v2.2 Reproduction Makefile"
@echo ""
@echo "Main targets:"
@echo " repro - Complete reproduction (setup + build + run + validate)"
@echo " setup - Download corpus and setup environment"
@echo " build - Build Docker images"
@echo " run - Execute benchmark reproduction"
@echo " validate - Validate results against expected values"
@echo " clean - Clean up environment and temporary files"
@echo ""
@echo "Development targets:"
@echo " dev-setup - Setup development dependencies"
@echo " logs - Follow application logs"
@echo " shell - Access container shell"
@echo " health - Check service health"
@echo " help - Show this help message"
@echo ""
@echo "Expected results file: results/hero_span_v22.csv"
@echo "Tolerance: ยฑ0.1 pp nDCG@10"
@echo "Duration: ~60 minutes end-to-end"