@codeyam/codeyam-cli 0.1.0 → 0.1.2

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.
Files changed (29) hide show
  1. package/analyzer-template/.build-info.json +5 -5
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +15 -6
  4. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +96 -0
  5. package/analyzer-template/project/writeScenarioComponents.ts +14 -0
  6. package/background/src/lib/virtualized/project/writeScenarioComponents.js +10 -0
  7. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  8. package/codeyam-cli/src/commands/memory.js +63 -20
  9. package/codeyam-cli/src/commands/memory.js.map +1 -1
  10. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js +20 -20
  11. package/codeyam-cli/src/utils/__tests__/npmVersionCheck.test.js.map +1 -1
  12. package/codeyam-cli/src/utils/npmVersionCheck.js +2 -2
  13. package/codeyam-cli/src/utils/npmVersionCheck.js.map +1 -1
  14. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +2 -1
  15. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -1
  16. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +1 -1
  17. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -1
  18. package/codeyam-cli/src/utils/versionInfo.js +25 -0
  19. package/codeyam-cli/src/utils/versionInfo.js.map +1 -1
  20. package/codeyam-cli/src/webserver/build/server/assets/{index-CxaRxKVt.js → index-CXfuiwt3.js} +1 -1
  21. package/codeyam-cli/src/webserver/build/server/assets/{server-build-D4DT0nM_.js → server-build-BSvme_Ao.js} +46 -46
  22. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  23. package/codeyam-cli/src/webserver/build-info.json +3 -3
  24. package/codeyam-cli/templates/rule-reflection-hook.py +1 -1
  25. package/package.json +1 -1
  26. package/packages/ai/src/lib/dataStructureChunking.js +9 -5
  27. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
  28. package/packages/ai/src/lib/generateExecutionFlows.js +81 -0
  29. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
@@ -1 +1 @@
1
- import{Y as H,Z as I,M as J,N as K,W as L,O as _,R as $,T as rr,V as tr,U as or,X as ir,Q as pr}from"./assets/server-build-D4DT0nM_.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"child_process";import"url";import"util";import"dotenv";import"events";import"uuid";import"openai";import"p-queue";import"p-retry";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"v8";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"minimatch";import"react-markdown";import"remark-gfm";import"react-diff-viewer-continued";export{H as allowedActionOrigins,I as assets,J as assetsBuildDirectory,K as basename,L as entry,_ as future,$ as isSpaMode,rr as prerender,tr as publicPath,or as routeDiscovery,ir as routes,pr as ssr};
1
+ import{Y as H,Z as I,M as J,N as K,W as L,O as _,R as $,T as rr,V as tr,U as or,X as ir,Q as pr}from"./assets/server-build-BSvme_Ao.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"child_process";import"url";import"util";import"dotenv";import"events";import"uuid";import"openai";import"p-queue";import"p-retry";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"v8";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"minimatch";import"react-markdown";import"remark-gfm";import"react-diff-viewer-continued";export{H as allowedActionOrigins,I as assets,J as assetsBuildDirectory,K as basename,L as entry,_ as future,$ as isSpaMode,rr as prerender,tr as publicPath,or as routeDiscovery,ir as routes,pr as ssr};
@@ -1,7 +1,7 @@
1
1
  {
2
- "buildTimestamp": "2026-02-13T21:12:41.448Z",
3
- "buildTime": 1771017161448,
2
+ "buildTimestamp": "2026-02-14T11:50:45.938Z",
3
+ "buildTime": 1771069845938,
4
4
  "buildNumber": 645,
5
5
  "semanticVersion": "0.1.645",
6
- "version": "0.1.645 (2026-02-13T21:12)"
6
+ "version": "0.1.645 (2026-02-14T11:50)"
7
7
  }
@@ -313,7 +313,7 @@ def build_stale_rules_context(stale_rules):
313
313
  parts.append("For each rule, review the rule content and the diff of changes, then:")
314
314
  parts.append("1. Determine if the rule content needs updating based on the code changes")
315
315
  parts.append("2. Update the rule if needed")
316
- parts.append("3. ALWAYS run `codeyam memory touch` to mark rules as audited\n")
316
+ parts.append("3. Run `codeyam memory touch <rule-path1> <rule-path2> ...` with the SPECIFIC rule paths you reviewed to mark them as audited\n")
317
317
 
318
318
  for rule in stale_rules:
319
319
  parts.append(f"### {rule['name']}")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codeyam/codeyam-cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Local development CLI for CodeYam analysis",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,4 +1,5 @@
1
1
  const DEFAULT_MAX_CHUNK_SIZE = 10000; // ~10K chars per chunk
2
+ const DEFAULT_MAX_KEYS_PER_CHUNK = 20;
2
3
  /**
3
4
  * Chunk a large data structure into smaller pieces for focused LLM processing.
4
5
  *
@@ -17,21 +18,24 @@ export function chunkDataStructure(dataForMocks, options = {}) {
17
18
  if (!dataForMocks || typeof dataForMocks !== 'object') {
18
19
  return [dataForMocks];
19
20
  }
20
- const { maxChunkSize = DEFAULT_MAX_CHUNK_SIZE } = options;
21
+ const { maxChunkSize = DEFAULT_MAX_CHUNK_SIZE, maxKeysPerChunk = DEFAULT_MAX_KEYS_PER_CHUNK, } = options;
21
22
  const keys = Object.keys(dataForMocks);
22
23
  // Calculate total size to see if chunking is needed
23
24
  const totalSize = JSON.stringify(dataForMocks).length;
24
- if (totalSize <= maxChunkSize) {
25
+ if (totalSize <= maxChunkSize && keys.length <= maxKeysPerChunk) {
25
26
  return [dataForMocks];
26
27
  }
27
- // Greedily pack keys into chunks by cumulative size
28
+ // Greedily pack keys into chunks by cumulative size and key count
28
29
  const chunks = [];
29
30
  let currentChunk = {};
30
31
  let currentSize = 0;
31
32
  for (const key of keys) {
32
33
  const keySize = JSON.stringify(dataForMocks[key]).length;
33
- // If adding this key would exceed the limit AND chunk isn't empty, start a new chunk
34
- if (currentSize > 0 && currentSize + keySize > maxChunkSize) {
34
+ const currentKeyCount = Object.keys(currentChunk).length;
35
+ // If adding this key would exceed size or key count limit AND chunk isn't empty, start a new chunk
36
+ if (currentSize > 0 &&
37
+ (currentSize + keySize > maxChunkSize ||
38
+ currentKeyCount >= maxKeysPerChunk)) {
35
39
  chunks.push(currentChunk);
36
40
  currentChunk = {};
37
41
  currentSize = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"dataStructureChunking.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/dataStructureChunking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataStructureChunking.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/dataStructureChunking.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,28 @@ import generateExecutionFlowsFromConditionalEffects from "./generateExecutionFlo
18
18
  import generateExecutionFlowsFromConditionals from "./generateExecutionFlowsFromConditionals.js";
19
19
  import generateExecutionFlowsFromJsxUsages from "./generateExecutionFlowsFromJsxUsages.js";
20
20
  import resolvePathToControllable from "./resolvePathToControllable.js";
21
+ /**
22
+ * Patterns that indicate a child component is a modal/overlay/blocking element.
23
+ * Same patterns used in generateExecutionFlowsFromConditionalEffects.ts for
24
+ * state variable names — here applied to child component names.
25
+ */
26
+ const BLOCKING_CHILD_PATTERNS = [
27
+ /modal/i,
28
+ /overlay/i,
29
+ /dialog/i,
30
+ /popup/i,
31
+ /drawer/i,
32
+ /sheet/i,
33
+ /lightbox/i,
34
+ /backdrop/i,
35
+ ];
36
+ /**
37
+ * Check if a child component name suggests it's a blocking/modal element.
38
+ * Exported for testing.
39
+ */
40
+ export function isBlockingChildComponent(componentName) {
41
+ return BLOCKING_CHILD_PATTERNS.some((pattern) => pattern.test(componentName));
42
+ }
21
43
  export default function generateExecutionFlows({ entity, mergedDataStructure, childEntityMetadata, }) {
22
44
  awsLog(`CodeYam: Generating execution flows (static analysis)`, {
23
45
  filePath: entity.filePath,
@@ -161,6 +183,10 @@ export default function generateExecutionFlows({ entity, mergedDataStructure, ch
161
183
  for (const flow of allFlows) {
162
184
  calculateFlowPriority(flow, gatingPathToChildren);
163
185
  }
186
+ // Assign exclusiveGroup for truthy/falsy flow pairs that control child components.
187
+ // When the same gating path produces both a truthy flow (show component) and a
188
+ // falsy flow (hide component), they are mutually exclusive and should be grouped.
189
+ assignExclusiveGroupsForGatingPairs(allFlows);
164
190
  // Sort flows by priority (highest first)
165
191
  allFlows.sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0));
166
192
  return {
@@ -217,6 +243,53 @@ function buildGatingPathToChildrenMap(childBoundaryGatingConditions, equivalentS
217
243
  }
218
244
  return gatingPathToChildren;
219
245
  }
246
+ /**
247
+ * Assign exclusiveGroup for truthy/falsy flow pairs that control child components.
248
+ *
249
+ * When the same attribute path produces both a truthy and falsy flow (e.g.,
250
+ * {diffView && <DiffModal/>}), they are mutually exclusive — only one can be
251
+ * active at a time. Grouping them ensures the scenario generator treats them
252
+ * as alternative states rather than combining them.
253
+ */
254
+ function assignExclusiveGroupsForGatingPairs(flows) {
255
+ // Build a map: attributePath -> flows with truthy or falsy comparison for that path
256
+ const pathToFlows = new Map();
257
+ for (const flow of flows) {
258
+ // Only consider flows that control child components
259
+ if (!flow.childComponentsControlled?.length)
260
+ continue;
261
+ for (const rv of flow.requiredValues) {
262
+ if (rv.comparison === 'truthy' || rv.comparison === 'falsy') {
263
+ if (!pathToFlows.has(rv.attributePath)) {
264
+ pathToFlows.set(rv.attributePath, { truthy: [], falsy: [] });
265
+ }
266
+ pathToFlows.get(rv.attributePath)[rv.comparison].push(flow);
267
+ }
268
+ }
269
+ }
270
+ // Also check falsy flows that DON'T have childComponentsControlled —
271
+ // they still pair with truthy flows that do
272
+ for (const flow of flows) {
273
+ if (flow.childComponentsControlled?.length)
274
+ continue; // Already processed
275
+ for (const rv of flow.requiredValues) {
276
+ if (rv.comparison === 'falsy' && pathToFlows.has(rv.attributePath)) {
277
+ pathToFlows.get(rv.attributePath).falsy.push(flow);
278
+ }
279
+ }
280
+ }
281
+ // Assign exclusiveGroup where both truthy and falsy flows exist
282
+ for (const [attributePath, { truthy, falsy }] of pathToFlows) {
283
+ if (truthy.length > 0 && falsy.length > 0) {
284
+ const groupName = `gating:${attributePath}`;
285
+ for (const flow of [...truthy, ...falsy]) {
286
+ if (!flow.exclusiveGroup) {
287
+ flow.exclusiveGroup = groupName;
288
+ }
289
+ }
290
+ }
291
+ }
292
+ }
220
293
  /**
221
294
  * Calculate priority and childComponentsControlled for a flow.
222
295
  *
@@ -264,6 +337,14 @@ function calculateFlowPriority(flow, gatingPathToChildren) {
264
337
  if (flow.impact !== 'high') {
265
338
  flow.impact = 'high';
266
339
  }
340
+ // Check if any controlled child component is a modal/dialog/overlay.
341
+ // Only truthy flows (which SHOW the component) should be marked as blocking.
342
+ // Falsy flows (which HIDE the component) should not be blocking.
343
+ const isTruthyFlow = flow.requiredValues.some((rv) => rv.comparison === 'truthy' || rv.comparison === 'equals');
344
+ if (isTruthyFlow &&
345
+ Array.from(childComponentsControlled).some(isBlockingChildComponent)) {
346
+ flow.blocksOtherFlows = true;
347
+ }
267
348
  }
268
349
  // Calculate priority score
269
350
  let priority = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"generateExecutionFlows.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateExecutionFlows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateExecutionFlows.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateExecutionFlows.ts"],"names":[],"mappings":"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"}