Skip to content

[M6-07] Qualify kernel, resources, integrity, time, and maintenance #141

Description

@vicotrbb

Release 1 source: #1. The master specification is referenced, not modified by this ticket.

Execution signal: ready-for-agent means this issue is implementation-ready once every native GitHub blocker below is closed.

Outcome

Execute every exact filesystem/volume/StorageClass, capability, ownership, frame/frontier, catalog publication, crash, full-disk, corruption, recovery, retention, compaction, resource, fairness, pressure, clock, integrity, quarantine, fencing, maintenance-conflict, checkpoint, restart, and eventual-progress cell.

Scope and semantic ownership

  • Milestone: M6
  • Global sequence: 140 / 149
  • Semantic owner: Storage Kernel
  • Highest useful behavior seam: Qualify kernel, resources, integrity, time, and maintenance
  • Affected registered scopes: positron-kernel
  • Expected project size / estimate: XL / 13
  • Completion status rule: An exact cell may become Qualified only when the frozen candidate passes the complete real-target gate and immutable evidence is retained. Any failed, missing, stale, unsupported, inconclusive, or exceptional required cell remains release-blocking.

No weaker document, implementation convenience, partial target, emulator, local diagnostic, or green subset may reinterpret the binding contract.

Native blockers

The native blocked-by graph is authoritative for execution order. Do not start implementation while a blocker is open, while an affected scope remains unlawfully scaffold-only, or while a required decision/review is missing.

Binding product and architecture references

Accepted ADRs

If implementation would change caller knowledge, semantic ownership, a public or durable format, compatibility, a non-waivable invariant, or Release 1 scope, stop and land the required accepted superseding ADR together with its contract, migration, tests, and gates.

Engineering invariants and gates

  • Mandatory engineering invariants: ARC-02, ARC-04, ARC-05, SAFE-03, SAFE-04, CON-01, CON-02, CON-03, CON-04, CON-05, ERR-02, ERR-03, ERR-04, SEC-01, SEC-03, SEC-04, TEST-01, TEST-02, TEST-03, TEST-04, TEST-05, TEST-06, TEST-07, PERF-01
  • Authoritative gates: EG-00, EG-ARCH, EG-BUILD, EG-DEPS, EG-DOCS, EG-ERROR, EG-EVIDENCE, EG-POLICY, EG-RUST, EG-SAFETY, EG-SECRETS, EG-SUPPLY, EG-TEST, EG-CONCURRENCY, EG-CORRECT, EG-COVERAGE, EG-CRYPTO, EG-DYNAMIC, EG-FAULT, EG-INTEGRITY, EG-MATRIX, EG-RESOURCE, EG-SECURITY
  • Canonical runner: cargo xtask quality
  • Policy sources: Engineering standards, Quality gates, Contribution and activation policy, Application scope registry, Artifact scope registry, Allowed dependency graph

Do not weaken, skip, rename, path-filter, delete, reclassify, or silently bypass a gate, target, threshold, owner, test, corpus, fixture, hook, workflow, or evidence field.

Affected Qualification Cells

  • Q-STORAGE-001
  • Q-CATALOG-001
  • Q-CRASH-001
  • Q-INTEGRITY-001
  • Q-TIME-001
  • Q-MAINT-001
  • Q-RESOURCE-001

Each cell remains independently reportable. A passing child cannot hide a failed, unsupported, missing, unresolved, or inconclusive sibling.

Required implementation contract

  • Deliver the outcome exactly as stated above, through the named semantic owner and highest useful behavior seam.
  • Keep one shared Storage Kernel while Signal Stores own signal-specific Store Block layouts.
  • Append canonical Store Blocks directly to encrypted active segments; do not introduce a separate WAL or journal representation.
  • Acknowledge only after the owning durable synchronization and authenticated Durability Frontier commit.
  • Verify version, bounds, authenticity, and integrity before decoding or observation; corruption and uncertainty fail closed.
  • Use real temporary filesystems plus the owned deterministic operation-fault seam, not a generic mock storage backend.
  • If any affected code or artifact scope is still scaffold, activate it atomically with its owner, exact edges, risk gates, test commands, measured coverage/mutation baselines, and required threat model or format/API decision before adding behavior.
  • Preserve the registered acyclic dependency graph and keep provider/protocol/distribution types behind their adapters.
  • Return closed typed outcomes with safe details, retry class, completion state, and source context. Never use strings for control flow.
  • Declare every externally reachable input, work, memory, allocation, copy, I/O, task, queue, cache, lease, retry, and latency bound plus overload behavior.
  • Add no dependency without the complete review required by CONTRIBUTING.md.
  • Keep generated output generated and prove clean deterministic regeneration.
  • Update user/operator compatibility, migration, failure, recovery, and release-note documentation where behavior is visible.

Required tests

  • Crash and fault injection at every open, write, partial-write, sync, frontier, seal, rename, directory-sync, reopen, full-disk, corruption, and cancellation boundary.
  • Real-filesystem capability, ownership-lock, remount, reattach, retention, compaction, and recovery tests.
  • Property/model tests for predecessor-or-successor publication, acknowledged recovery, nonce safety, bounded cleanup, and snapshot equivalence.
  • Include positive, boundary, negative, and adversarial cases at the lowest interface that proves the contract.
  • Assert returned outcomes, durable externally readable state, published artifacts, or public behavior—not private fields, helper calls, queue layout, or incidental ordering.
  • Keep tests hermetic, deterministic, parallel-safe, bounded, and retain seeds, clocks, entropy, schedules, fault plans, fixtures, and minimized failures.
  • A reproducible defect fix begins with a failing regression test and retains the reproducer.
  • Run all scope-selected unit, compile-fail, contract, property, integration, end-to-end, compatibility, platform, real-target, fuzz, model, fault, sanitizer, and soak suites that apply.

Evidence and completion

  • Run the authoritative cargo xtask quality profile required by the change and retain its exact revision-bound evidence.
  • Record exact source revision, artifact digests, target/environment, configuration, fixtures, dataset/workload, fault schedule, toolchain, command, duration, raw measurements, safe logs/metrics, result, owner, and verifier as applicable.
  • Retain passing, failing, inconclusive, exceptional, timeout, cancellation, and missing-tool attempts. A later pass must not erase a failure.
  • Verify no panic/unwrap/expect, unchecked indexing, ignored result, detached task, unbounded resource, ambient authority, prohibited unsafe code, secret leak, or hidden best-effort path was introduced.
  • Verify the working tree and generated artifacts are clean after the authoritative runner.
  • Do not close this issue from an ad hoc command, mock-only proof, emulator-only proof, local dirty evidence, or partial Qualification Cell.

Explicit non-goals

  • No second durability authority, WAL, raw-block primary storage, object-store primary storage, or multi-writer primary volume.
  • No Signal Store layout logic or protocol/provider concern inside the kernel.
  • No Release 1 Metrics or Profiles implementation.
  • No replication, consensus, HA, automatic failover, follower reads, clustering, or live shard split/merge.
  • No hidden feature flags, placeholder APIs, empty adapters, speculative modules, or disabled deferred behavior.

Agent handoff checklist

  • Re-read the referenced contracts and ADRs before changing code.
  • Identify the exact semantic owner, caller-visible seam, durable publication owner, and affected Qualification Cells in the implementation PR.
  • Explain the lifecycle and failure boundaries before editing.
  • Keep implementation, qualification, publication, deployment, and release as separate states and authorizations.
  • Leave an evidence-backed status if blocked; never fabricate Implemented, Qualified, or merge eligibility.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:storage-kernelStorage Kernel, durability, and persistent formatskind:qualificationExact-artifact target qualification workphase:M6M6 Release Qualificationready-for-agentReady for implementation by an agentrelease:1Required for Positron Release 1

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions