Skip to content

Define Portable AI carry pack contract#7

Draft
mdheller wants to merge 12 commits intomainfrom
work/portable-ai-carry-packs
Draft

Define Portable AI carry pack contract#7
mdheller wants to merge 12 commits intomainfrom
work/portable-ai-carry-packs

Conversation

@mdheller
Copy link
Copy Markdown
Contributor

@mdheller mdheller commented May 4, 2026

Summary

Adds the Portable AI Carry Packs contract layer for SourceOS Portable AI Kit.

This PR now includes:

  • docs/portable-ai-carry-packs.md design spec;
  • contracts/model-carry-pack.schema.json for governed model-pack manifests;
  • contracts/portable-ai-root.schema.json for USB/SSD portable-root manifests;
  • examples for tiny-router, laptop-safe, office-local, code-local, field-kit, and byom-gguf model-pack families;
  • examples/portable-ai-root.laptop-safe.json portable-root example;
  • tools/validate_portable_ai_packs.py stdlib semantic validator;
  • make validate-portable-ai and inclusion in make validate.

Product target

Give SourceOS the same simple portable local-AI promise as lightweight USB AI projects, but without unmanaged model URLs, unchecked downloads, ambiguous licensing, host-write leakage, unaudited prompt handling, or decorative JSON with no validation.

Important note

Concrete third-party model catalog entries should be added in a separate signed-catalog PR. These examples intentionally use neutral placeholder model names so the contract layer can stabilize before we bless specific external model sources, licenses, and hashes.

Validation notes

Expected local validation:

make validate-portable-ai
make validate

Connector-visible CI/status has not been confirmed from this path.

Follow-up acceptance criteria

  • Add signed/pinned real model catalog entries after license/hash review.
  • Wire sourceos-devtools portable-ai profiles to consume these examples or generated catalog output.
  • Add BYOM GGUF hash/provenance mutation flow.
  • Promote stable schemas to SourceOS-Linux/sourceos-spec after iteration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant