Define strict JSON animation-pack schema #75

Open
opened 2026-05-23 00:42:55 -04:00 by JackFrostbyte · 0 comments

Objective

Define the first strict JSON schema for RGB Aura animation packs.

This schema is the contract between an LLM-generated animation pack and RGB Aura’s runtime. It must be strict enough to validate safety and compatibility before any animation pack can be loaded.

Scope

Create a JSON schema for animation packs.

The schema should support the first practical vertical slice, not every future feature.

Required schema concepts

The schema should describe:

  • Pack metadata.
  • Pack name.
  • Pack version.
  • Target RGB Aura schema version.
  • Author/source field.
  • Description.
  • Compatible device profile identifier.
  • Required logical zones.
  • Effects per logical zone.
  • Timeline or sequence structure.
  • Colors.
  • LED index ranges.
  • Durations.
  • Transition behavior.
  • Repeat/loop behavior.
  • Safety limits.

Required safety constraints

The schema should prevent or reject:

  • Unknown logical zones.
  • Use of the reserved ARGB zone.
  • LED indexes outside the usable range.
  • Unsupported effect types.
  • Missing required metadata.
  • Invalid colors.
  • Invalid durations.
  • Invalid timeline structure.
  • Arbitrary code.
  • File paths or shell commands.
  • Any data field intended to execute code.

Initial effect types

Keep the first version simple. Possible first supported effect types:

  • solid
  • fade
  • sweep
  • shimmer
  • pulse
  • sparkle, if safe and bounded

Only include effect types that can realistically be validated and implemented in the v1.1.0 runtime loader.

Out of scope

  • Full advanced animation language.
  • Python plugin support.
  • Dynamic scripts.
  • User marketplace metadata.
  • Network fetching.
  • Runtime auto-download of packs.

Acceptance criteria

  • A strict JSON schema exists in the repository.
  • The schema can validate the first built-in JSON animation pack.
  • The schema rejects unknown zones and reserved zones.
  • The schema rejects out-of-range LED indexes.
  • The schema does not allow arbitrary code execution.
  • The architecture document is updated if needed to reference the schema.
# Objective Define the first strict JSON schema for RGB Aura animation packs. This schema is the contract between an LLM-generated animation pack and RGB Aura’s runtime. It must be strict enough to validate safety and compatibility before any animation pack can be loaded. # Scope Create a JSON schema for animation packs. The schema should support the first practical vertical slice, not every future feature. # Required schema concepts The schema should describe: - Pack metadata. - Pack name. - Pack version. - Target RGB Aura schema version. - Author/source field. - Description. - Compatible device profile identifier. - Required logical zones. - Effects per logical zone. - Timeline or sequence structure. - Colors. - LED index ranges. - Durations. - Transition behavior. - Repeat/loop behavior. - Safety limits. # Required safety constraints The schema should prevent or reject: - Unknown logical zones. - Use of the reserved ARGB zone. - LED indexes outside the usable range. - Unsupported effect types. - Missing required metadata. - Invalid colors. - Invalid durations. - Invalid timeline structure. - Arbitrary code. - File paths or shell commands. - Any data field intended to execute code. # Initial effect types Keep the first version simple. Possible first supported effect types: - solid - fade - sweep - shimmer - pulse - sparkle, if safe and bounded Only include effect types that can realistically be validated and implemented in the v1.1.0 runtime loader. # Out of scope - Full advanced animation language. - Python plugin support. - Dynamic scripts. - User marketplace metadata. - Network fetching. - Runtime auto-download of packs. # Acceptance criteria - A strict JSON schema exists in the repository. - The schema can validate the first built-in JSON animation pack. - The schema rejects unknown zones and reserved zones. - The schema rejects out-of-range LED indexes. - The schema does not allow arbitrary code execution. - The architecture document is updated if needed to reference the schema.
JackFrostbyte added reference develop 2026-05-23 00:42:57 -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#75
No description provided.