P3-6.2: Adversarial, collusion, and Sybil test suite
Mantenedores costumam responder em até 1 dia
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Funcionalidade
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- solidity
- Domínio
- blockchain, security, testing
Direção de pesquisa
The issue specifies a Forge test file, P3Adversarial.t.sol, and names PRs #146 and #149 as prerequisites. Read those contracts after they are merged, then map each listed collusion, Sybil, liveness, and dispute scenario to its relevant contract behavior. Done means every listed scenario has an attack narrative comment and the full test suite passes.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Context
Raised as a blocker in discussion #150. Roadmap ref: P3-6.2.
The adversarial test suite has not been started. It cannot be written meaningfully until PRs #146 (S1/S2/S5/S6 slashing) and #149 (S4 dispute second phase) are reviewed and merged — those contracts are what the tests exercise. Once they land, estimated one week to produce the full scenario suite.
Scope
The test suite should cover at minimum:
Collusion scenarios
- Model owner + aggregator collude to suppress a dispute: owner steers the recomputation subgroup (tests the BL-11 commit-reveal fix from issue #151)
- Auditor colluding with aggregator to pass a bad T2 model: S1 slash path
Sybil scenarios
- Single operator spinning up multiple validators under different keys to capture a subgroup
- Sybil validators all voting the same way in an audit to pass a bad model
Liveness attack scenarios
- Aggregator consistently missing T1/T2 submission deadlines (S2 slash)
- Auditor consistently missing vote deadlines (S1 slash)
- Recidivism escalation to full slash + jail (S5)
- No-participation counter threshold (S6)
Dispute lifecycle edge cases
- Dispute raised, recomputation confirms original result (
settleRecomputation(confirmed=true)) — disputer bond forfeited - Dispute raised, recomputation overturns result (
settleRecomputation(confirmed=false)) — aggregator slashed, disputer bond returned - Resolution window expires before
settleRecomputationis called (expireDispute) — disputer bond partially refunded - Frivolous dispute (disputer forfeits bond)
Acceptance criteria
- Forge test file
P3Adversarial.t.sol(or equivalent) covering all scenarios above - All tests pass with PRs #146 and #149 merged
- Scenarios are documented with attack narrative comments so future readers understand what is being tested
Blocked on
PRs #146 and #149 must be reviewed and merged before this work can begin.
Related
- Discussion #150
- PR #146 (S1/S2/S5/S6 slashing)
- PR #149 (S4 dispute second phase)
- Issue #151 (BL-11 commit-reveal)
- Linguagem predominante
- Python
- Estrelas
- 4
- Forks
- 7
- Merge médio
- 3d 4h
- PRs com merge (30d)
- 34
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de InfiniteZeroFoundation/DevNet
-
ROADMAP.md: refresh "What is still open for P3" (several items were fixed in October)Talvez já em andamento @umermjd11 assumiu há 3 dias. Abertadocumentation good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
InfiniteZeroFoundation/DevNet#285 · 1 comentário · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
Update the 25 translated organisation READMEs to match the English versionTalvez já em andamento @mrCabez assumiu hoje. Abertagood first issue help wanted
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
InfiniteZeroFoundation/DevNet#277 · 2 comentários · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
Update the client-service guide to explain training and uploading separatelyTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
InfiniteZeroFoundation/DevNet#266 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
InfiniteZeroFoundation/DevNet#299 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Long run
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
InfiniteZeroFoundation/DevNet#298 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de InfiniteZeroFoundation/DevNet
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 79/100
aws-samples/sample-per-model-bedrock#639 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 86/100
awslabs/visual-asset-management-system#937 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 79/100
project-codeflare/codeflare-sdk#1195 ·
Mantenedores costumam responder em até 1 dia
-
Bump numpy dependencyAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
pandas-dev/pandas-stubs#2051 ·
Mantenedores costumam responder em até 1 dia