Skip to content

feat(primaite): add the example environment pack and researcher workflow #43

Open

Description

@Brad-Edwards

Objective

Provide one validated PrimAITE environment pack and a no-code researcher workflow for the selected case.

Scope

  • Add environments/primaite-reference/ from the published raes-env-packs template.
  • Include pack identity, the canonical SDL, provenance/licensing/safety review, compatibility claims, associated-artifact identity where applicable, source-ledger references, and clear participant/operator/evaluator boundaries.
  • Integrate the adapter into the repository's installed researcher command so a clean environment can inspect identities, validate the pack, run one episode or seeded batch, and retain a portable artifact inventory.
  • Provide a reference build, automated rehearsal, and matching researcher walkthrough.
  • Keep runtime implementation selection and simulator-native configuration outside pack semantics.
  • Mark draft, built, or golden only according to evidence actually produced.
  • Keep the pack out of the Python wheel; publish it as versioned repository/release content.

Acceptance criteria

  • raes-pack-validate and raes-pack-release check pass.
  • A clean installed environment can acquire the immutable pack, run the documented short path, and validate its outputs.
  • Build, tests, and walkthrough use the same scenario, controls, agent, objective, and evaluator.
  • Participant, operator, evaluator/restricted, native-source, and public artifact boundaries pass leak checks.
  • Provenance covers all upstream sources, exclusions, generated content, and redistribution decisions.
  • The command rejects mismatched pins/digests, unsafe output reuse, unsupported controls, and invalid participant bindings before execution.
  • The pack defines no RAES semantics and RAESystem/env-packs receives no scenario content.

Shared command reference

Activity

  1. Brad-Edwards commented on Jul 29, 2026

    @Brad-Edwards
    CollaboratorAuthor

    RAESystem/hub#10 has now established the federated catalog boundary for reusable example packs. Pack source belongs in an appropriate catalog repository (with RAESystem/reference-packs as the first-party curated catalog) under environments/<pack-id>/, using a history- and provenance-preserving one-way transfer. This adapter repository retains simulator realization and backend-native evidence, then consumes the released pack identity; it should not retain a competing editable pack copy. The upstream format, validation, release, provenance, trust, and compatibility contracts remain owned by RAESystem/env-packs.

  2. Brad-Edwards commented on Aug 8, 2026

    @Brad-Edwards
    CollaboratorAuthor

    Reference template: NASim #36 / PR #76 (in-repo examples/<pack>/ beside the adapter + --backend researcher command + researcher.py/runtime_plans.py via shared _researcher_support.py + clean-install nox rehearsal + docs), conforming to the raes-env-packs format and passing both pack CLIs.

    PrimAITE is the least-integrated adapter today, so scope accordingly:

    1. Pack must pass raes-pack-validate + raes-pack-release check (include pack.compatibility.yaml + docs/golden-readiness-checklist.md).
    2. There is currently zero noxfile.py coverage for primaite (not even a conformance probe) — the researcher rehearsal will be the first nox integration. (The conformance-probe + guardrails ADR are tracked separately in test(primaite): compose RAES conformance with simulator-specific probes #42.)
    3. Blocker: the primaite extra is empty and its native pins (gymnasium 0.28.1 / numpy ~1.23 / pydantic 2.7.0) are declared mutually incompatible with the base/CBS graph — so no clean-install rehearsal without source-install. Follow the CyBORG pattern or scope the rehearsal to a source-installed lane.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions