@rayburst/cc 3.2.5 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Always-on product context for Claude Code — features, acceptance criteria, and board cards injected automatically.",
9
- "version": "3.2.5"
9
+ "version": "3.2.6"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "rayburst",
14
14
  "source": "./",
15
15
  "description": "Always-on product context for Claude Code. Automatically injects your Rayburst Product Requirement Registry (features, Gherkin acceptance criteria, board cards) into every coding session.",
16
- "version": "3.2.5",
16
+ "version": "3.2.6",
17
17
  "author": {
18
18
  "name": "Rayburst"
19
19
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rayburst",
3
- "version": "3.2.5",
3
+ "version": "3.3.0",
4
4
  "description": "Always-on product context for Claude Code. Automatically injects feature atlas and acceptance criteria into every coding session — no slash commands needed.",
5
5
  "author": {
6
6
  "name": "Rayburst",
@@ -55,7 +55,7 @@ if (activeFeature) {
55
55
  contextBlock = `<rayburst_post_implementation_reminder>
56
56
  <action_required>You just modified ${escapeXml(filePath)}. Before continuing to the next task or responding to the user, you MUST update the Rayburst feature atlas NOW:
57
57
  1. Search for an existing feature that covers this area via rb_list_features \u2014 add criteria there instead of creating a new feature
58
- 2. Call rb_add_criterion for new behaviors (Gherkin format: Given/When/Then on separate lines)
58
+ 2. Call rb_add_criterion for new behaviors \u2014 include a short user-friendly title AND a Gherkin description (Given/When/Then on separate lines)
59
59
  3. Call rb_update_criterion to mark criteria as passing/failing
60
60
  4. Call rb_update_feature if the feature description needs updating
61
61
  Do NOT proceed without completing this step. This is a mandatory workflow requirement.</action_required>
@@ -66,7 +66,7 @@ if (activeFeature) {
66
66
  <action_required>You just modified ${escapeXml(filePath)} but NO active feature was matched for this task. This likely means you skipped the mandatory feature lookup step. You MUST now:
67
67
  1. Call rb_list_features to find an existing feature that covers this area \u2014 prefer adding criteria to existing features over creating new ones
68
68
  2. Call rb_get_feature on the best match to load its criteria
69
- 3. Call rb_add_criterion to reflect what you built (Gherkin format: Given/When/Then on separate lines)
69
+ 3. Call rb_add_criterion to reflect what you built \u2014 include a short user-friendly title AND a Gherkin description (Given/When/Then on separate lines)
70
70
  4. Call rb_update_feature if the feature description needs updating
71
71
  ALL changes \u2014 including visual, layout, and icon changes \u2014 require feature atlas updates. Do NOT skip this.</action_required>
72
72
  </rayburst_post_implementation_reminder>`;
@@ -167,9 +167,10 @@ function buildProductContextBlock(features, cards) {
167
167
  return `<rayburst_product_context>
168
168
  <rules>
169
169
  <rule>You have access to a Rayburst feature atlas \u2014 a knowledge graph of product features with Gherkin acceptance criteria. Use it to understand what you're building.</rule>
170
- <rule>MANDATORY PRE-IMPLEMENTATION STEP: Before writing ANY code \u2014 regardless of task size, type, or complexity (including visual changes, icon swaps, layout tweaks, styling, refactoring) \u2014 you MUST: (1) call rb_list_features to search for a matching feature, (2) call rb_get_feature to load its criteria, (3) work against those criteria. There are NO exceptions. If no feature exists, create one with rb_create_feature before proceeding.</rule>
170
+ <rule>MANDATORY PRE-IMPLEMENTATION STEP: Before writing ANY code \u2014 regardless of task size, type, or complexity \u2014 you MUST: (1) call rb_list_features to search for a matching feature, (2) call rb_get_feature to load its criteria, (3) work against those criteria. There are NO exceptions. If no feature exists, create one with rb_create_feature before proceeding. Note: visual appearance (colors, spacing, layout) belongs in Designs, not criteria \u2014 use /rb:capture-design instead.</rule>
171
171
  <rule>PREFER EXISTING FEATURES: When adding criteria, ALWAYS search for an existing feature first via rb_list_features. Add criteria to the best-matching existing feature rather than creating a new one. Only create a new feature when no existing feature covers the UI area or capability.</rule>
172
172
  <rule>FEATURE NAMING: Feature titles MUST be short, user-friendly UI area names like "Header", "Poster Slider", "Settings Page", "Login Screen", "Featured Row". NEVER use requirement descriptions as titles (e.g. NOT "Implement dark mode toggle on settings page").</rule>
173
+ <rule>CRITERION TITLES: Every criterion MUST have a short, user-friendly title that summarizes the behavior (e.g. "Persists dark mode on refresh", "Shows error on invalid email", "Filters by favorites on tap"). This applies when creating, updating, and reviewing criteria. Never leave the title empty or use the Gherkin description as the title.</rule>
173
174
  <rule>GHERKIN FORMAT: All criteria descriptions MUST use Gherkin syntax with Given, When, Then each on a NEW LINE. Example:
174
175
  Given the user is on the home screen
175
176
  When they tap the favorites button
@@ -177,7 +178,8 @@ Then the favorites filter is applied</rule>
177
178
  <rule>TAGS: Every feature MUST have at least one tag assigned. Use rb_list_tags to see available tags, or rb_create_tag if needed. Assign tags via the feature's tagIds when creating or updating.</rule>
178
179
  <rule>If your changes may affect behaviors described in OTHER features' criteria, flag this to the user before proceeding.</rule>
179
180
  <rule>NEVER create, update, or delete features or criteria in the atlas without explicitly asking the user for confirmation first. Show them what you want to change and wait for approval.</rule>
180
- <rule>MANDATORY POST-IMPLEMENTATION STEP: After every implementation \u2014 in the same response as the code changes \u2014 you MUST update Rayburst without being asked: (1) update affected feature descriptions if behavior changed via rb_update_feature, (2) add new acceptance criteria for every new behavior introduced via rb_add_criterion (Gherkin format, Given/When/Then on separate lines), (3) update criterion status where applicable via rb_update_criterion. Do NOT wait for the user to ask. A post-write hook will verify compliance.</rule>
181
+ <rule>MANDATORY POST-IMPLEMENTATION STEP: After every implementation \u2014 in the same response as the code changes \u2014 you MUST update Rayburst without being asked: (1) update affected feature descriptions if behavior changed via rb_update_feature, (2) add new acceptance criteria for every new BEHAVIOR introduced via rb_add_criterion (Gherkin format, Given/When/Then on separate lines) \u2014 do NOT add criteria for visual appearance (colors, spacing, typography, borders, shadows, animations, layout), (3) update criterion status where applicable via rb_update_criterion. Do NOT wait for the user to ask. A post-write hook will verify compliance.</rule>
182
+ <rule>DESIGNS vs CRITERIA: Acceptance criteria capture BEHAVIOR (what the feature does). Designs capture APPEARANCE (how it looks). Do NOT write criteria for colors, spacing, typography, borders, shadows, animations, or layout. Instead, use rb_create_design to save a TOON-encoded snapshot of the component. Run /rb:capture-design to create one.</rule>
181
183
  <rule>Use mcp__plugin_rayburst_rayburst__rb_* MCP tools to interact with the atlas. Use rb_get_feature to load full criteria for a specific feature.</rule>
182
184
  </rules>
183
185
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rayburst/cc",
3
- "version": "3.2.5",
3
+ "version": "3.4.0",
4
4
  "type": "module",
5
5
  "description": "Always-on product context for Claude Code. Automatically injects feature atlas and acceptance criteria into every coding session.",
6
6
  "author": {