Document JSON animation-pack architecture for LLM-assisted creation #72

Open
opened 2026-05-23 00:40:50 -04:00 by JackFrostbyte · 0 comments

Objective

Create the architecture document for the LLM-assisted animation-pack system.

This issue establishes the direction agreed for RGB Aura:

  • LLMs generate JSON/data animation packs.
  • RGB Aura owns execution.
  • The runtime does not execute arbitrary Python plugins from LLM output.
  • The JSON schema is the contract between the LLM and RGB Aura.

Scope

Add a new architecture document explaining:

  • Why animation packs are data-only.
  • Why arbitrary Python plugin execution is out of scope.
  • How device profiles describe available hardware.
  • How aura profiles describe the user’s layout and aesthetic intent.
  • How JSON animation packs describe effects.
  • How validation happens before runtime execution.
  • How the runtime safely interprets validated packs.
  • How this prepares the project for v1.2.0 portability.

Required content

The document should clearly explain the core workflow:

  1. RGB Aura produces or maintains machine/device profile data.
  2. The user gives their aesthetic intent.
  3. An LLM receives the prompt package, device profile, aura profile, and schema.
  4. The LLM returns a JSON animation pack.
  5. RGB Aura validates the JSON pack.
  6. RGB Aura loads and executes the validated pack using internal runtime logic.

Out of scope

  • Implementing the schema.
  • Implementing the validator.
  • Implementing the runtime loader.
  • Creating the external LLM prompt package.

Acceptance criteria

  • A new architecture document exists in the docs directory.
  • The document clearly states that LLM output is data-only.
  • The document clearly states that RGB Aura does not execute arbitrary LLM-generated Python code.
  • The document defines the roles of device profile, aura profile, schema, validator, prompt package, and runtime loader.
  • Existing project documentation links to the new architecture document where appropriate.
# Objective Create the architecture document for the LLM-assisted animation-pack system. This issue establishes the direction agreed for RGB Aura: - LLMs generate JSON/data animation packs. - RGB Aura owns execution. - The runtime does not execute arbitrary Python plugins from LLM output. - The JSON schema is the contract between the LLM and RGB Aura. # Scope Add a new architecture document explaining: - Why animation packs are data-only. - Why arbitrary Python plugin execution is out of scope. - How device profiles describe available hardware. - How aura profiles describe the user’s layout and aesthetic intent. - How JSON animation packs describe effects. - How validation happens before runtime execution. - How the runtime safely interprets validated packs. - How this prepares the project for v1.2.0 portability. # Required content The document should clearly explain the core workflow: 1. RGB Aura produces or maintains machine/device profile data. 2. The user gives their aesthetic intent. 3. An LLM receives the prompt package, device profile, aura profile, and schema. 4. The LLM returns a JSON animation pack. 5. RGB Aura validates the JSON pack. 6. RGB Aura loads and executes the validated pack using internal runtime logic. # Out of scope - Implementing the schema. - Implementing the validator. - Implementing the runtime loader. - Creating the external LLM prompt package. # Acceptance criteria - A new architecture document exists in the docs directory. - The document clearly states that LLM output is data-only. - The document clearly states that RGB Aura does not execute arbitrary LLM-generated Python code. - The document defines the roles of device profile, aura profile, schema, validator, prompt package, and runtime loader. - Existing project documentation links to the new architecture document where appropriate.
JackFrostbyte added reference develop 2026-05-23 00:40:54 -04:00
Sign in to join this conversation.
No labels
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
JackFrostbyte/rgb-aura#72
No description provided.