Skip to main content

packset_core/
lib.rs

1//! Store-agnostic packset algorithms.
2//!
3//! Host merge is a named fuse then diversify then decay panel.
4//! Default fuse is Borda (`k - position`). Reciprocal Rank Fusion,
5//! CombSUM / CombMNZ, Dowdall, Kemeny-Young, Schulze, Copeland,
6//! and Tideman are named fuse voters. Default diversify is MMR.
7//! A Determinantal Point Process is a named diversify voter.
8//! Default decay is off. The host reads `PACKSET_FUSE`,
9//! `PACKSET_DIVERSIFY`, and `PACKSET_DECAY`. Clients do not
10//! choose this.
11
12pub mod atom;
13pub mod bm25;
14pub mod borda;
15pub mod cheap;
16pub mod clock;
17pub mod comb;
18pub mod copeland;
19pub mod decay;
20pub mod dowdall;
21pub mod dpp;
22pub mod extract;
23pub mod identity;
24pub mod island;
25pub mod kemeny;
26pub mod mab;
27pub mod mmr;
28pub mod panel;
29pub mod paper_a;
30pub mod prose;
31pub mod recall;
32pub mod record;
33pub mod rrf;
34pub mod schulze;
35pub mod search;
36pub mod set_name;
37pub mod tideman;
38
39pub use atom::{entity_jaccard, is_due, is_live, is_live_at, SCHEMA as ATOM_SCHEMA};
40pub use borda::{borda_merge, Ballot};
41pub use cheap::{allowed as cheap_allowed, CheapJob, CheapWhen};
42pub use clock::utcnow;
43pub use comb::{combmnz_merge, combsum_merge, ScoredBallot};
44pub use copeland::copeland_merge;
45pub use decay::temporal_decay;
46pub use dowdall::dowdall_merge;
47pub use dpp::dpp_rerank;
48pub use extract::{admit_seat_write, claim_from_user, is_tool_dump, SeatWrite};
49pub use identity::{normalize_remote, workspace_slug};
50pub use kemeny::kemeny_merge;
51pub use mab::{ProtocolReport, COMPETENCIES as MAB_COMPETENCIES};
52pub use mmr::mmr_rerank;
53pub use panel::{Decay, Diversify, Fuse, Panel, UnknownVoter};
54pub use paper_a::{PaperATable, BENCHES as PAPER_A_BENCHES};
55pub use prose::{refuse as prose_refuse, ProseError, Role as ProseRole};
56pub use record::{validate, AtomError};
57pub use rrf::rrf_merge;
58pub use schulze::schulze_merge;
59pub use tideman::ranked_pairs_merge;