← The board

C4 Support bundle

Area
C — Trust & correctness
Audience
operator
Kind
feature
Status
accepted
Maturity
built
Labels
verification, security
Relates to
A7B4C1G8

The feature in the specification · Read at

Requirements

  1. C4-R1acceptedMUST

    A support bundle MUST be produced by a single command into a single local file.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@0d1ac4ec57lemonfiber@e203245c61
  2. C4-R2acceptedMUST

    Redaction MUST use an allow-list; any field not explicitly allowed MUST be redacted.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@0d1ac4ec57lemonfiber@71f8bd3109lemonfiber@86c24459c4
  3. C4-R3acceptedMUST

    Redacted values MUST be replaced by a stable placeholder derived from the value, so identical secrets are identifiable as identical.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/lib.rs
    cited by
    lemonfiber@71f8bd3109
  4. C4-R4acceptedMUST

    The bundle MUST be scanned for residual credentials before writing.

    locked by
    0.7.0 met
    recorded done
    lemonfiber.github/workflows/sonar.ymlcrates/lemonfiber-core/src/app.rscrates/lemonfiber-core/src/app/fixtures.rscrates/lemonfiber/src/archive.rs
    cited by
    lemonfiber@e203245c61lemonfiber@71f8bd3109
  5. C4-R5acceptedMUST

    If verification finds a residual credential, the bundle MUST NOT be written, and the source MUST be named.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-adapters/src/filesystem.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/bundle/allowed.rscrates/lemonfiber-core/src/bundle/prose.rs
    cited by
    lemonfiber@8027d73edblemonfiber@0d1ac4ec57lemonfiber@e203245c61lemonfiber@71f8bd3109
  6. C4-R6acceptedMUST

    The bundle MUST NOT be transmitted anywhere automatically.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@0d1ac4ec57
  7. C4-R7acceptedMUST

    Bundle contents MUST be listable and readable by the operator before sharing.

    locked by
    0.7.0 met
    recorded done
    lemonfiber.github/workflows/sonar.ymlcrates/lemonfiber-core/src/app.rscrates/lemonfiber-core/src/app/fixtures.rscrates/lemonfiber/src/archive.rs
    cited by
    lemonfiber@e203245c61
  8. C4-R8acceptedMUST

    Revealing a redacted field MUST require explicit per-field consent and MUST be marked in the bundle.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-api/src/actions/asked.rs
    cited by
    lemonfiber@b00845f85dlemonfiber@0d1ac4ec57
  9. C4-R9acceptedMUST

    Log inclusion MUST be bounded to a stated recent window.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@0d1ac4ec57
  10. C4-R10acceptedMUST

    Bundle size MUST be reported before writing.

    locked by
    0.7.0 met
    recorded done
    lemonfiber.github/workflows/sonar.ymlcrates/lemonfiber-core/src/app.rscrates/lemonfiber-core/src/app/fixtures.rscrates/lemonfiber/src/archive.rs
    cited by
    lemonfiber@e203245c61
  11. C4-R11acceptedMUST

    The bundle MUST be producible when diagnostics cannot fully run, noting what is missing.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@0d1ac4ec57lemonfiber@f2c1d6cb36
  12. C4-R12acceptedMUST

    The bundle MUST record lemonfiber version, stack version and creation time.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/app.rscrates/lemonfiber-core/src/bundle.rs
    cited by
    lemonfiber@f2c1d6cb36
  13. C4-R13acceptedMUST

    Media filename redaction MUST be offered.

    locked by
    0.7.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle.rscrates/lemonfiber-core/src/bytes.rscrates/lemonfiber-core/src/lib.rscrates/lemonfiber/src/cli.rs
    cited by
    lemonfiber@52a7cb5ff4lemonfiber@0d1ac4ec57
  14. C4-R14acceptedMUST

    Insufficient disk space MUST be detected before collection begins.

    locked by
    0.7.0 met
    recorded done
    lemonfiber.github/workflows/sonar.ymlcrates/lemonfiber-core/src/app.rscrates/lemonfiber-core/src/app/fixtures.rscrates/lemonfiber/src/archive.rs
    cited by
    lemonfiber@e203245c61
  15. C4-R15acceptedMUST

    A bundle MUST record which plugins are installed, with origin, version and whether each was reviewed. It MUST NOT collect a plugin's own configuration, and MUST say that it was withheld and why, naming the plugin.

    locked by
    0.18.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/bundle/plugins.rscrates/lemonfiber-core/src/bundle/run.rscrates/lemonfiber-core/src/bundle/plugins/tests.rs::each_plugin_is_named_with_its_version_origin_and_review_and_its_configuration_withheldcrates/lemonfiber-core/src/bundle/plugins/tests.rs::a_plugins_settings_are_left_out_of_the_configuration_and_the_stacks_keptcrates/lemonfiber-core/tests/integration/bundle.rs::a_bundle_names_each_installed_plugin_and_withholds_its_own_configurationcrates/lemonfiber-core/tests/integration/bundle.rs::a_bundle_whose_plugin_record_will_not_read_says_so
    cited by
    lemonfiber@e2005b9828
  16. C4-R16acceptedMUST

    The diagnosis a bundle holds MUST give each finding's code beside the finding, wherever the finding carries one.

    locked by
    0.18.0 met
    recorded done
    lemonfibercrates/lemonfiber-core/src/doctor/examining.rscrates/lemonfiber-core/src/doctor/vpn/pair.rscrates/lemonfiber-core/src/bundle/run.rs
    cited by
    lemonfiber@c1ccda0afc