Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Add origin authenticated, replayable QIR execution receipts

Abierto
#982 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust

Línea de trabajo

No se nombran archivos de implementación. Empieza localizando el workspace de Rust y el crate aislado propuesto ruvector-qir-receipt; después, ejecuta los comandos de cargo de formato, pruebas, Clippy y benchmark indicados una vez que el entorno esté disponible. Se considera completado cuando estén presentes el comportamiento de receipts firmados, las pruebas de aceptación, los umbrales de rendimiento, el ADR, el ejemplo de RVF, las instrucciones de rollback, la procedencia y el evidence receipt descritos aquí.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Decision

The bounded design candidate is not promotable because Rust compilation and workspace validation could not run in the available environment. This issue records the verified fixture result and the remaining gates. It deliberately avoids duplicating syndrome and decoder ownership already assigned to ruqu by ADR QE 008.

Evidence

Parent SHA: edaffffb3b85768eb1f3ec1f683b7f46f0506af4

Ruqu submodule SHA: d7f572890a766584d9eed188fa8af5d65c96cca4, unchanged

Ruflo task: quantum-weekly-qir-receipt-20260911 with CLI 3.25.6

Controlled 30 trial Node Ed25519 fixture:

  1. SHA only baseline accepted a foreign issuer in 30 of 30 trials.
  2. Signed candidate accepted a foreign issuer in 0 of 30 trials.
  3. Verification p95 was 165.931 microseconds.

Ruflo deep scan reported no findings at any severity. Ruflo secret scan detected no secrets.

The final worktree was returned clean and no unverified candidate code was retained.

Scope

Add an isolated ruvector-qir-receipt crate that canonically binds exact QIR bytes, format, backend, calibration or noise snapshot, configuration, sorted results, shots, seed, queue inclusive latency, total cost, implementation hash, and parent receipt.

Use a domain separated signature statement with an explicit issuer key identity. Label Ed25519 as classical origin authentication, not post quantum security. A receipt proves provenance and integrity, not that a claimed physical or computational result is correct.

Safety limits

  1. QIR maximum: 128 MiB.
  2. Configuration and calibration maximum: 1 MiB each.
  3. Identifier maximum: 256 bytes.
  4. Shot maximum: one billion.
  5. Physical QPU receipts require calibration evidence.
  6. Reject malformed signatures, unknown issuers, field mutation, result mutation, QIR substitution, and replay outside declared policy.

Acceptance criteria

  1. Run at least 30 seeded foreign issuer trials. SHA only baseline must accept 30 of 30 and the signed candidate must accept 0 of 30.
  2. Signature p95 must remain below 2 milliseconds and verification p95 below 1 millisecond on CI class hardware.
  3. Run formatting, focused tests, Clippy with warnings denied, dependency audit, Ruflo scans, and all affected workspace tests.
  4. Add an ADR, RVF embedding example, rollback instructions, provenance, and a signed evidence receipt.
  5. Keep syndrome graphs, Stim fixtures, MWPM, fusion blossom, min cut, and QEC simulation in ruqu.

Runnable acceptance test

cargo fmt --all -- --check &&
cargo test -p ruvector-qir-receipt &&
cargo clippy -p ruvector-qir-receipt --all-targets -- -D warnings &&
cargo run --release -p ruvector-qir-receipt --bin qir-receipt-benchmark

Blocking gate

The runtime had no cargo or rustc. Formatting, compilation, focused tests, Clippy, Rust benchmarks, dependency audit, and affected workspace tests remain unverified. Safety score and holdout regression are therefore unproven. No protected branch was modified and no QPU job was submitted.

Lenguaje dominante
Rust
Estrellas
4.5k
Forks
603
Merge medio
1 d 11 h
PR fusionados (30 d)
56

Preparar el entorno

Aún no hemos revisado los archivos de configuración de este proyecto. Empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de ruvnet/RuVector

Todos los issues de ruvnet/RuVector

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.