Skip to content

chore: remove GitHub Pages site and narrative papers, keep code-only #1

chore: remove GitHub Pages site and narrative papers, keep code-only

chore: remove GitHub Pages site and narrative papers, keep code-only #1

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.14"
- name: Install
run: pip install -e ".[dev]"
- name: Lint (ruff, comparison + ecosystem framework)
run: >-
ruff check
src/coinjoin_simulator/diaz.py
src/coinjoin_simulator/protocols.py
src/coinjoin_simulator/improvements.py
src/coinjoin_simulator/comparison.py
src/coinjoin_simulator/comparison_data.py
src/coinjoin_simulator/ecosystem
src/coinjoin_simulator/protocol_ecosystem.py
src/coinjoin_simulator/clusterer_diffusion.py
src/coinjoin_simulator/clusterer_matching.py
src/coinjoin_simulator/taker_anonymity.py
src/coinjoin_simulator/lifecycle_anonymity.py
src/coinjoin_simulator/wasabi_anonymity.py
src/coinjoin_simulator/protocol_anonymity_study.py
src/coinjoin_simulator/mainnet_taker_exposure.py
src/coinjoin_simulator/provenance_study.py
src/coinjoin_simulator/provenance_defense_study.py
src/coinjoin_simulator/maker_clustering_study.py
src/coinjoin_simulator/ln_maker_anonymity.py
src/coinjoin_simulator/maker_swap_provider.py
src/coinjoin_simulator/maker_swap_provider_metrics.py
src/coinjoin_simulator/maker_swap_provider_study.py
src/coinjoin_simulator/secp256k1.py
src/coinjoin_simulator/whirlpool_tagging.py
src/coinjoin_simulator/wabisabi_tagging.py
src/coinjoin_simulator/tor_timing
run_protocol_anonymity_study.py
run_wasabi_anonymity_study.py
run_mainnet_taker_exposure_study.py
run_provenance_study.py
run_provenance_defense_study.py
run_maker_clustering_study.py
run_maker_swap_provider_study.py
run_whirlpool_tagging_poc.py
run_wabisabi_tagging_poc.py
run_tor_timing_study.py
build_mainnet_taker_fate.py
fetch_wasabi_rounds.py
tests/test_diaz.py
tests/test_protocols.py
tests/test_improvements.py
tests/test_comparison.py
tests/test_ecosystem_core.py
tests/test_ecosystem_strategies.py
tests/test_ecosystem_lifecycle.py
tests/test_ecosystem_study.py
tests/test_protocol_ecosystem.py
tests/test_clusterer_diffusion.py
tests/test_clusterer_matching.py
tests/test_taker_anonymity.py
tests/test_lifecycle_anonymity.py
tests/test_wasabi_anonymity.py
tests/test_protocol_anonymity_study.py
tests/test_mainnet_taker_exposure.py
tests/test_provenance_study.py
tests/test_provenance_defense_study.py
tests/test_maker_clustering_study.py
tests/test_ln_maker_anonymity.py
tests/test_maker_swap_provider.py
tests/test_maker_swap_provider_metrics.py
tests/test_maker_swap_provider_study.py
tests/test_secp256k1.py
tests/test_whirlpool_tagging.py
tests/test_wabisabi_tagging.py
tests/test_tor_timing_latency.py
tests/test_tor_timing_partition.py
tests/test_tor_timing_study.py
- name: Type check (mypy)
run: >-
mypy
src/coinjoin_simulator/diaz.py
src/coinjoin_simulator/protocols.py
src/coinjoin_simulator/improvements.py
src/coinjoin_simulator/comparison.py
src/coinjoin_simulator/comparison_data.py
src/coinjoin_simulator/ecosystem
src/coinjoin_simulator/protocol_ecosystem.py
src/coinjoin_simulator/clusterer_diffusion.py
src/coinjoin_simulator/clusterer_matching.py
src/coinjoin_simulator/taker_anonymity.py
src/coinjoin_simulator/lifecycle_anonymity.py
src/coinjoin_simulator/wasabi_anonymity.py
src/coinjoin_simulator/protocol_anonymity_study.py
src/coinjoin_simulator/mainnet_taker_exposure.py
src/coinjoin_simulator/provenance_study.py
src/coinjoin_simulator/provenance_defense_study.py
src/coinjoin_simulator/maker_clustering_study.py
src/coinjoin_simulator/ln_maker_anonymity.py
src/coinjoin_simulator/maker_swap_provider.py
src/coinjoin_simulator/maker_swap_provider_metrics.py
src/coinjoin_simulator/maker_swap_provider_study.py
src/coinjoin_simulator/secp256k1.py
src/coinjoin_simulator/whirlpool_tagging.py
src/coinjoin_simulator/wabisabi_tagging.py
src/coinjoin_simulator/tor_timing
- name: Test (comparison + ecosystem framework)
run: >-
pytest
tests/test_diaz.py
tests/test_protocols.py
tests/test_improvements.py
tests/test_comparison.py
tests/test_ecosystem_core.py
tests/test_ecosystem_strategies.py
tests/test_ecosystem_lifecycle.py
tests/test_ecosystem_study.py
tests/test_protocol_ecosystem.py
tests/test_clusterer_diffusion.py
tests/test_clusterer_matching.py
tests/test_taker_anonymity.py
tests/test_lifecycle_anonymity.py
tests/test_wasabi_anonymity.py
tests/test_protocol_anonymity_study.py
tests/test_mainnet_taker_exposure.py
tests/test_provenance_study.py
tests/test_provenance_defense_study.py
tests/test_maker_clustering_study.py
tests/test_ln_maker_anonymity.py
tests/test_maker_swap_provider.py
tests/test_maker_swap_provider_metrics.py
tests/test_maker_swap_provider_study.py
tests/test_secp256k1.py
tests/test_whirlpool_tagging.py
tests/test_wabisabi_tagging.py
tests/test_tor_timing_latency.py
tests/test_tor_timing_partition.py
tests/test_tor_timing_study.py
-q