Skip to content

Move PO-receive tier policy (lot/serial enforcement) into TierConfig #29

Description

@CST-100

Found during the devel integration review (PR #12).

receive hardcodes tier in (1, 2) (lot required for bulk) and tier == 1 (auto-serial for serialized). That matches issue #8's spec for the default Flight/Ground/Loose preset and was kept as-is, but tier semantics are project-defined (opal.project.yaml / TierConfig in src/opal/project.py) — the same reasoning that removed the tier-2 ⇒ is_tooling rule in PR #7. Error messages also say "Tier {n}" instead of the configured tier name.

Proposal: per-tier policy flags on TierConfig (e.g. lot_required: bool, auto_serial: bool) with the current behavior as the preset defaults, and tier names in messages.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions