noCV
SRUNTIME-104 · Control resources and concurrency

Report integer overflow instead of changing arithmetic by build mode

Practice briefChoreIntermediate

Debug builds trap on addition overflow while optimized builds wrap, producing different rule outcomes.

Focused work estimate
2h 30m + prerequisites
Priority in the scenario
Medium
Engineering practice
Integer arithmetic · Compatibility

Estimated field mix

  • Systems programming70%
  • Quality engineering30%

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Your next step

Review it, then add it to your workspace.

The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.

Project context

A fictional rules engine executes a tiny arithmetic bytecode over synthetic integers. Its interpreter trusts jump offsets and can run forever. Build a local Rust runtime; it has no filesystem, network, dynamic loading, host calls, or candidate-source execution.

Setup prerequisites

  • Stacks
  • Instruction decoding
  • Control flow

Preceding work

Complete these dependencies, or supply their agreed outputs before taking this ticket.

Acceptance criteria

  • Arithmetic semantics are identical across build profiles
  • Overflow returns a typed runtime fault with instruction offset
  • Division defines zero and minimum-value edge cases

Implementation constraints

  • Use checked operations; do not expose floating-point values in this bytecode revision.

Verification to include

  • Evaluate boundary-safe addition, subtraction, multiplication, and division.
  • Exercise every overflow boundary and division by zero in both profiles.

Deliverables

  • Arithmetic contract and profile-parity tests

Rollout and recovery

Version any intentional arithmetic semantic change.

Value of the work

For the engineer: Practice runtime invariants, validation, resource accounting and compatibility.

For the team: Review a constrained execution component whose malformed programs fail deterministically without gaining host capabilities.

Evidence boundaries

Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.

Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.