# Canaplia 2.0 Foundations This document tracks the architectural groundwork introduced in `2.0.0`. ## Goals - Prepare variant-specific smoke effects without changing item ids later. - Prepare resin evolution from shared-behavior resin blocks toward future unique resin variants. - Keep current gameplay behavior stable until the next prompts add new content. ## What changed - `RolledJointItem` is now aware of its `HempVariant`. - `CanapliaSmokeEffects` now resolves profiles from `SmokeSource + HempVariant`. - `HempBudCompostingState` now remembers which hemp variant was inserted into each tracked composter. - `HempBudComposterInteraction` now accepts any hemp bud variant and blocks mixed-variant composting in a single composter. - `CanapliaResinCatalog` now maps each bud variant to its matching resin block and burn duration. ## Current shared behavior - All hemp variants still use the same smoke effect set for now. - All resin block variants still use the same smoke behavior for now. - All resin block variants still use the same burn duration for now. ## Next prompt entry points - Add unique smoke profiles in `CanapliaSmokeEffects#createVariantAwareProfile`. - Add unique burn durations in `CanapliaResinCatalog#resolve`. - Add unique resin-side effects if they need to diverge from the hemp source variant.