mirror of
https://github.com/PR0M3TH3AN/bitgate.git
synced 2026-10-27 08:31:00 +00:00
The evaluator was a skeleton with invented thresholds (5/3/10/5) and two unimplemented branches. Rebuild it against the migration plan's spec and the behavior characterized from the pinned reference commit. Core: - four independent decision dimensions (ranking, visibility, interaction, transaction) with severity ladders and max-merge composition - stable reason identifiers replacing free-text strings - structured evidence, redacted unless a profile opts in - administrative-state reduction with capability filtering at merge time, so revoking a role drops that actor's entries immediately - protected actors stripped from every denial set - snapshot fingerprints for cache invalidation - generic policy engine: applications supply profiles and category thresholds; the core carries none of its own Characterization: - 34 generated fixtures covering every behavior the plan's Phase 0 requires - conformance suite that actually evaluates them, replacing a placeholder that asserted a list's length - reference thresholds (3/3/20/5, 60-day mute window) live in bitvid-compat as an application profile, not as engine defaults Fixes found while building: - reduceAdminState accepted malformed target identifiers, because getTargetKey formats anything it is given - community-user-deny fired for any contributor rather than only for community-curated sources 273 tests pass; typecheck and the reference-import guard are clean.
115 lines
4.4 KiB
JSON
115 lines
4.4 KiB
JSON
{
|
|
"name": "non-spam-reports-never-hide",
|
|
"description": "Eight trusted reports in a non-spam category restrict but never hide.",
|
|
"behavior": "Only spam has a report-driven hide threshold.",
|
|
"profile": "feed",
|
|
"now": 1750000000,
|
|
"authority": {
|
|
"root": "a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1",
|
|
"actors": {
|
|
"a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1": [
|
|
"super_admin"
|
|
],
|
|
"b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2": [
|
|
"moderator"
|
|
],
|
|
"c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3": [
|
|
"curator"
|
|
]
|
|
},
|
|
"protectedActors": [
|
|
"a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1"
|
|
]
|
|
},
|
|
"trust": {
|
|
"contacts": [
|
|
"0101010101010101010101010101010101010101010101010101010101010101",
|
|
"0202020202020202020202020202020202020202020202020202020202020202",
|
|
"0303030303030303030303030303030303030303030303030303030303030303",
|
|
"0404040404040404040404040404040404040404040404040404040404040404",
|
|
"0505050505050505050505050505050505050505050505050505050505050505",
|
|
"0606060606060606060606060606060606060606060606060606060606060606",
|
|
"0707070707070707070707070707070707070707070707070707070707070707",
|
|
"0808080808080808080808080808080808080808080808080808080808080808",
|
|
"0909090909090909090909090909090909090909090909090909090909090909",
|
|
"0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a",
|
|
"0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b",
|
|
"0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c",
|
|
"0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d",
|
|
"0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e",
|
|
"0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f",
|
|
"1010101010101010101010101010101010101010101010101010101010101010",
|
|
"1111111111111111111111111111111111111111111111111111111111111111",
|
|
"1212121212121212121212121212121212121212121212121212121212121212",
|
|
"1313131313131313131313131313131313131313131313131313131313131313",
|
|
"1414141414141414141414141414141414141414141414141414141414141414",
|
|
"1515151515151515151515151515151515151515151515151515151515151515",
|
|
"1616161616161616161616161616161616161616161616161616161616161616",
|
|
"1717171717171717171717171717171717171717171717171717171717171717",
|
|
"1818181818181818181818181818181818181818181818181818181818181818"
|
|
]
|
|
},
|
|
"reports": {
|
|
"event:1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b": [
|
|
{
|
|
"reporter": "0101010101010101010101010101010101010101010101010101010101010101",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0202020202020202020202020202020202020202020202020202020202020202",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0303030303030303030303030303030303030303030303030303030303030303",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0404040404040404040404040404040404040404040404040404040404040404",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0505050505050505050505050505050505050505050505050505050505050505",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0606060606060606060606060606060606060606060606060606060606060606",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0707070707070707070707070707070707070707070707070707070707070707",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
},
|
|
{
|
|
"reporter": "0808080808080808080808080808080808080808080808080808080808080808",
|
|
"category": "misleading",
|
|
"createdAt": 1749913600
|
|
}
|
|
]
|
|
},
|
|
"target": {
|
|
"type": "event",
|
|
"id": "1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b",
|
|
"author": "d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4"
|
|
},
|
|
"expect": {
|
|
"ranking": {
|
|
"effect": "normal",
|
|
"weight": 0
|
|
},
|
|
"visibility": {
|
|
"effect": "restrict",
|
|
"overridable": true
|
|
},
|
|
"interaction": {
|
|
"effect": "require-explicit-action"
|
|
}
|
|
}
|
|
}
|