CHANGELOG.md
CONTRIBUTING.md
LICENSE
MANIFEST.in
NOTICE
README.en.md
README.md
SECURITY.md
pyproject.toml
docs/api.md
docs/architecture.md
docs/benchmark-baseline-v1.4.md
docs/benchmarks.md
docs/candidates.md
docs/cli.md
docs/desktop-research.zh.md
docs/editor-protocol.md
docs/export.zh.md
docs/font-strategy.zh.md
docs/history.md
docs/index.md
docs/input-format.en.md
docs/input-format.zh.md
docs/native-core.md
docs/pair-history.md
docs/presets.md
docs/privacy.md
docs/project.zh.md
docs/publishing.md
docs/quickstart.en.md
docs/quickstart.zh.md
docs/release-checklist.md
docs/roadmap.md
docs/rule-capability-audit.md
docs/rules.en.md
docs/rules.zh.md
docs/scoring.md
docs/testing.md
docs/troubleshooting.md
docs/versioning.md
docs/web.en.md
docs/web.zh.md
docs/adr/0001-rust-native-core.md
docs/adr/0002-keep-ortools-in-python.md
docs/adr/0003-command-log-editing.md
docs/assets/demo-seating.html
docs/assets/demo-seating.png
examples/classroom.json
examples/project.seattrellis.json
examples/rules.json
examples/rules_multi_candidate.json
examples/rules_neighbor_avoidance.json
examples/students.csv
examples/students.xlsx
examples/candidates/README.md
examples/history/README.md
examples/history/week1.snapshot.json
examples/history/week2.snapshot.json
examples/history/week3.snapshot.json
examples/invalid/conflicting_fixed_seats.json
examples/invalid/duplicate_seat_id.json
examples/invalid/duplicate_student_id.csv
examples/invalid/not_enough_seats.json
examples/invalid/unknown_student_rule.json
scripts/benchmark_solver.py
scripts/check_release_version.py
scripts/check_repository_hygiene.py
scripts/mkdocs_hooks.py
scripts/smoke_cli.py
src/seattrellis/__init__.py
src/seattrellis/benchmark_report.py
src/seattrellis/benchmark_runner.py
src/seattrellis/benchmarks.py
src/seattrellis/candidates.py
src/seattrellis/cli.py
src/seattrellis/demo.py
src/seattrellis/editing.py
src/seattrellis/editing_protocol.py
src/seattrellis/history.py
src/seattrellis/optional.py
src/seattrellis/presets.py
src/seattrellis/repair.py
src/seattrellis/schema.py
src/seattrellis/schema_migration.py
src/seattrellis/scoring.py
src/seattrellis/service.py
src/seattrellis/service_types.py
src/seattrellis.egg-info/PKG-INFO
src/seattrellis.egg-info/SOURCES.txt
src/seattrellis.egg-info/dependency_links.txt
src/seattrellis.egg-info/entry_points.txt
src/seattrellis.egg-info/requires.txt
src/seattrellis.egg-info/top_level.txt
src/seattrellis/exporters/__init__.py
src/seattrellis/exporters/candidate_report.py
src/seattrellis/exporters/docx_export.py
src/seattrellis/exporters/excel.py
src/seattrellis/exporters/html.py
src/seattrellis/exporters/pdf.py
src/seattrellis/exporters/png.py
src/seattrellis/exporters/print_html.py
src/seattrellis/io/__init__.py
src/seattrellis/io/json_files.py
src/seattrellis/io/project.py
src/seattrellis/io/students.py
src/seattrellis/io/validation.py
src/seattrellis/models/__init__.py
src/seattrellis/models/candidate.py
src/seattrellis/models/history.py
src/seattrellis/models/layout.py
src/seattrellis/models/project.py
src/seattrellis/models/rules.py
src/seattrellis/models/snapshot.py
src/seattrellis/models/student.py
src/seattrellis/solver/__init__.py
src/seattrellis/solver/adjacency.py
src/seattrellis/solver/assignment_validator.py
src/seattrellis/solver/backend.py
src/seattrellis/solver/backend_common.py
src/seattrellis/solver/cp_sat.py
src/seattrellis/solver/errors.py
src/seattrellis/solver/fallback_backend.py
src/seattrellis/solver/native.py
src/seattrellis/solver/native_backend.py
src/seattrellis/solver/ortools_backend.py
src/seattrellis/solver/precompute.py
src/seattrellis/solver/problem.py
src/seattrellis/solver/protocol.py
src/seattrellis/solver/registry.py
src/seattrellis/solver/result.py
src/seattrellis/solver/rule_compiler.py
src/seattrellis/web/__init__.py
src/seattrellis/web/app.py
src/seattrellis/web/components.py
src/seattrellis/web/config.py
src/seattrellis/web/editor_protocol.py
src/seattrellis/web/i18n.py
src/seattrellis/web/interactive_panels.py
src/seattrellis/web/keys.py
src/seattrellis/web/workflow.py
tests/test_adjacency.py
tests/test_benchmarks.py
tests/test_candidates.py
tests/test_cli.py
tests/test_doctor.py
tests/test_editing.py
tests/test_editing_protocol.py
tests/test_exporters.py
tests/test_hard_rule_contract.py
tests/test_history.py
tests/test_importers.py
tests/test_minimal_install.py
tests/test_models.py
tests/test_optional_dependencies.py
tests/test_package_metadata.py
tests/test_presets.py
tests/test_project.py
tests/test_property_based.py
tests/test_release_version.py
tests/test_repository_hygiene.py
tests/test_schema_versions.py
tests/test_scoring.py
tests/test_service_editing.py
tests/test_solver_backend.py
tests/test_solver_backend_contract.py
tests/test_solver_backend_registry.py
tests/test_solver_basic.py
tests/test_solver_problem.py
tests/test_solver_rules.py
tests/test_validation.py
tests/test_web_components.py
tests/test_web_config.py
tests/test_web_workflow.py