@getripple/core 1.0.5 → 1.0.7

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.
@@ -24,10 +24,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.highestStagedRisk = exports.buildStagedCheckSummary = exports.listGitChangedDiff = exports.listGitChangedFiles = exports.listGitStagedDiff = exports.listGitStagedFiles = exports.isRippleSourceFile = void 0;
27
- const child_process_1 = require("child_process");
28
27
  const fs = __importStar(require("fs"));
29
28
  const path = __importStar(require("path"));
30
29
  const ts_morph_1 = require("ts-morph");
30
+ const git_1 = require("./git");
31
31
  const SOURCE_FILE_RE = /\.(ts|tsx|js|jsx|py)$/i;
32
32
  const DEFAULT_STAGED_CHECK_TASK = "Review staged change before commit";
33
33
  const RISK_RANK = {
@@ -42,11 +42,12 @@ function isRippleSourceFile(filePath) {
42
42
  exports.isRippleSourceFile = isRippleSourceFile;
43
43
  function listGitStagedFiles(workspaceRoot) {
44
44
  try {
45
- const output = (0, child_process_1.execFileSync)("git", ["diff", "--name-only", "--cached", "--diff-filter=ACMR"], {
46
- cwd: workspaceRoot,
47
- encoding: "utf8",
48
- stdio: ["ignore", "pipe", "pipe"],
49
- });
45
+ const output = (0, git_1.execGit)(workspaceRoot, [
46
+ "diff",
47
+ "--name-only",
48
+ "--cached",
49
+ "--diff-filter=ACMR",
50
+ ]);
50
51
  return output
51
52
  .split(/\r?\n/)
52
53
  .map((line) => line.trim())
@@ -60,11 +61,12 @@ function listGitStagedFiles(workspaceRoot) {
60
61
  exports.listGitStagedFiles = listGitStagedFiles;
61
62
  function listGitStagedDiff(workspaceRoot) {
62
63
  try {
63
- return (0, child_process_1.execFileSync)("git", ["diff", "--cached", "--unified=0", "--no-ext-diff"], {
64
- cwd: workspaceRoot,
65
- encoding: "utf8",
66
- stdio: ["ignore", "pipe", "pipe"],
67
- });
64
+ return (0, git_1.execGit)(workspaceRoot, [
65
+ "diff",
66
+ "--cached",
67
+ "--unified=0",
68
+ "--no-ext-diff",
69
+ ]);
68
70
  }
69
71
  catch (err) {
70
72
  const message = err instanceof Error ? err.message : String(err);
@@ -74,11 +76,13 @@ function listGitStagedDiff(workspaceRoot) {
74
76
  exports.listGitStagedDiff = listGitStagedDiff;
75
77
  function listGitChangedFiles(workspaceRoot, baseRef) {
76
78
  try {
77
- const output = (0, child_process_1.execFileSync)("git", ["diff", "--name-only", "--diff-filter=ACMR", baseRef, "--"], {
78
- cwd: workspaceRoot,
79
- encoding: "utf8",
80
- stdio: ["ignore", "pipe", "pipe"],
81
- });
79
+ const output = (0, git_1.execGit)(workspaceRoot, [
80
+ "diff",
81
+ "--name-only",
82
+ "--diff-filter=ACMR",
83
+ baseRef,
84
+ "--",
85
+ ]);
82
86
  return output
83
87
  .split(/\r?\n/)
84
88
  .map((line) => line.trim())
@@ -94,11 +98,11 @@ function listGitChangedFiles(workspaceRoot, baseRef) {
94
98
  exports.listGitChangedFiles = listGitChangedFiles;
95
99
  function listGitUntrackedSourceFiles(workspaceRoot) {
96
100
  try {
97
- const output = (0, child_process_1.execFileSync)("git", ["ls-files", "--others", "--exclude-standard"], {
98
- cwd: workspaceRoot,
99
- encoding: "utf8",
100
- stdio: ["ignore", "pipe", "pipe"],
101
- });
101
+ const output = (0, git_1.execGit)(workspaceRoot, [
102
+ "ls-files",
103
+ "--others",
104
+ "--exclude-standard",
105
+ ]);
102
106
  return output
103
107
  .split(/\r?\n/)
104
108
  .map((line) => line.trim())
@@ -113,11 +117,13 @@ function uniqueString(value, index, values) {
113
117
  }
114
118
  function listGitChangedDiff(workspaceRoot, baseRef) {
115
119
  try {
116
- return (0, child_process_1.execFileSync)("git", ["diff", "--unified=0", "--no-ext-diff", baseRef, "--"], {
117
- cwd: workspaceRoot,
118
- encoding: "utf8",
119
- stdio: ["ignore", "pipe", "pipe"],
120
- });
120
+ return (0, git_1.execGit)(workspaceRoot, [
121
+ "diff",
122
+ "--unified=0",
123
+ "--no-ext-diff",
124
+ baseRef,
125
+ "--",
126
+ ]);
121
127
  }
122
128
  catch (err) {
123
129
  const message = err instanceof Error ? err.message : String(err);
@@ -486,11 +492,7 @@ function readWorkingTreeFileContent(workspaceRoot, projectPath) {
486
492
  }
487
493
  function readStagedFileContent(workspaceRoot, projectPath) {
488
494
  try {
489
- return (0, child_process_1.execFileSync)("git", ["show", `:${projectPath}`], {
490
- cwd: workspaceRoot,
491
- encoding: "utf8",
492
- stdio: ["ignore", "pipe", "pipe"],
493
- });
495
+ return (0, git_1.execGit)(workspaceRoot, ["show", `:${projectPath}`]);
494
496
  }
495
497
  catch {
496
498
  const absolutePath = path.resolve(workspaceRoot, projectPath);
@@ -504,11 +506,7 @@ function readStagedFileContent(workspaceRoot, projectPath) {
504
506
  }
505
507
  function readGitRefFileContent(workspaceRoot, ref, projectPath) {
506
508
  try {
507
- return (0, child_process_1.execFileSync)("git", ["show", `${ref}:${projectPath}`], {
508
- cwd: workspaceRoot,
509
- encoding: "utf8",
510
- stdio: ["ignore", "pipe", "pipe"],
511
- });
509
+ return (0, git_1.execGit)(workspaceRoot, ["show", `${ref}:${projectPath}`]);
512
510
  }
513
511
  catch {
514
512
  return null;
@@ -521,20 +519,7 @@ function parseSymbolRanges(engine, workspaceRoot, projectPath, content) {
521
519
  if (projectPath.toLowerCase().endsWith(".py")) {
522
520
  return parsePythonSymbolRanges(engine, workspaceRoot, projectPath, content);
523
521
  }
524
- const project = new ts_morph_1.Project({
525
- compilerOptions: {
526
- allowJs: true,
527
- jsx: 4,
528
- allowSyntheticDefaultImports: true,
529
- esModuleInterop: true,
530
- moduleResolution: 2,
531
- target: 99,
532
- strict: false,
533
- },
534
- skipAddingFilesFromTsConfig: true,
535
- skipFileDependencyResolution: true,
536
- });
537
- const sourceFile = project.createSourceFile(projectPath, content, { overwrite: true });
522
+ const sourceFile = ts_morph_1.ts.createSourceFile(projectPath, content, ts_morph_1.ts.ScriptTarget.Latest, true, scriptKindForPath(projectPath));
538
523
  const exportedNames = exportedSymbolNames(sourceFile);
539
524
  const graphSymbols = graphSymbolsByName(engine, workspaceRoot, projectPath);
540
525
  const ranges = [];
@@ -543,13 +528,13 @@ function parseSymbolRanges(engine, workspaceRoot, projectPath, content) {
543
528
  if (!name || name.includes("{") || name.includes("[")) {
544
529
  return;
545
530
  }
546
- const key = `${name}:${kind}:${node.getStart()}`;
531
+ const key = `${name}:${kind}:${node.getStart(sourceFile)}`;
547
532
  if (seen.has(key)) {
548
533
  return;
549
534
  }
550
535
  seen.add(key);
551
536
  const graphSymbol = graphSymbols.get(name);
552
- const nodeRange = lineRangeForNode(node);
537
+ const nodeRange = lineRangeForNode(sourceFile, node);
553
538
  ranges.push({
554
539
  symbol: `${projectPath}::${name}`,
555
540
  file: projectPath,
@@ -563,27 +548,33 @@ function parseSymbolRanges(engine, workspaceRoot, projectPath, content) {
563
548
  endLine: nodeRange.end,
564
549
  signatureStartLine: nodeRange.signatureStart,
565
550
  signatureEndLine: nodeRange.signatureEnd,
566
- signatureText: signatureTextForNode(node),
551
+ signatureText: signatureTextForNode(sourceFile, node),
567
552
  });
568
553
  };
569
- sourceFile.getFunctions().forEach((funcDecl) => {
570
- addRange(funcDecl.getName(), "function", funcDecl);
571
- });
572
- sourceFile.getClasses().forEach((classDecl) => {
573
- addRange(classDecl.getName(), "class", classDecl);
574
- classDecl.getMethods().forEach((methodDecl) => {
575
- addRange(methodDecl.getName(), "method", methodDecl);
576
- });
577
- });
578
- sourceFile.getVariableDeclarations().forEach((varDecl) => {
579
- const initializer = varDecl.getInitializer();
580
- const kind = initializer &&
581
- (initializer.getKind() === ts_morph_1.SyntaxKind.ArrowFunction ||
582
- initializer.getKind() === ts_morph_1.SyntaxKind.FunctionExpression)
583
- ? "function"
584
- : "variable";
585
- addRange(varDecl.getName(), kind, varDecl);
586
- });
554
+ const visit = (node) => {
555
+ if (ts_morph_1.ts.isFunctionDeclaration(node)) {
556
+ addRange(node.name?.text, "function", node);
557
+ }
558
+ else if (ts_morph_1.ts.isClassDeclaration(node)) {
559
+ addRange(node.name?.text, "class", node);
560
+ node.members.forEach((member) => {
561
+ if (ts_morph_1.ts.isMethodDeclaration(member)) {
562
+ addRange(propertyNameText(member.name, sourceFile), "method", member);
563
+ }
564
+ });
565
+ return;
566
+ }
567
+ else if (ts_morph_1.ts.isVariableDeclaration(node) && isTopLevelVariableDeclaration(node)) {
568
+ const initializer = node.initializer;
569
+ const kind = initializer &&
570
+ (ts_morph_1.ts.isArrowFunction(initializer) || ts_morph_1.ts.isFunctionExpression(initializer))
571
+ ? "function"
572
+ : "variable";
573
+ addRange(bindingNameText(node.name, sourceFile), kind, node);
574
+ }
575
+ ts_morph_1.ts.forEachChild(node, visit);
576
+ };
577
+ ts_morph_1.ts.forEachChild(sourceFile, visit);
587
578
  return ranges;
588
579
  }
589
580
  function parsePythonSymbolRanges(engine, workspaceRoot, projectPath, content) {
@@ -654,16 +645,86 @@ function symbolsByName(symbols) {
654
645
  });
655
646
  return result;
656
647
  }
648
+ function scriptKindForPath(projectPath) {
649
+ const ext = path.extname(projectPath).toLowerCase();
650
+ if (ext === ".tsx") {
651
+ return ts_morph_1.ts.ScriptKind.TSX;
652
+ }
653
+ if (ext === ".jsx") {
654
+ return ts_morph_1.ts.ScriptKind.JSX;
655
+ }
656
+ if (ext === ".js") {
657
+ return ts_morph_1.ts.ScriptKind.JS;
658
+ }
659
+ if (ext === ".json") {
660
+ return ts_morph_1.ts.ScriptKind.JSON;
661
+ }
662
+ return ts_morph_1.ts.ScriptKind.TS;
663
+ }
657
664
  function exportedSymbolNames(sourceFile) {
658
665
  const exported = new Set();
659
- sourceFile.getExportedDeclarations().forEach((declarations, exportName) => {
660
- declarations.forEach((decl) => {
661
- const declaredName = decl.getName?.();
662
- exported.add(declaredName ?? exportName);
666
+ sourceFile.statements.forEach((statement) => {
667
+ if (ts_morph_1.ts.isFunctionDeclaration(statement)) {
668
+ addExportedName(exported, statement.name?.text, statement);
669
+ return;
670
+ }
671
+ if (ts_morph_1.ts.isClassDeclaration(statement)) {
672
+ addExportedName(exported, statement.name?.text, statement);
673
+ return;
674
+ }
675
+ if (!ts_morph_1.ts.isVariableStatement(statement)) {
676
+ return;
677
+ }
678
+ if (!isExportedNode(statement)) {
679
+ return;
680
+ }
681
+ statement.declarationList.declarations.forEach((declaration) => {
682
+ const name = bindingNameText(declaration.name, sourceFile);
683
+ if (name) {
684
+ exported.add(name);
685
+ }
686
+ });
687
+ });
688
+ sourceFile.statements.forEach((statement) => {
689
+ if (!ts_morph_1.ts.isExportDeclaration(statement)) {
690
+ return;
691
+ }
692
+ const exportClause = statement.exportClause;
693
+ if (!exportClause || !ts_morph_1.ts.isNamedExports(exportClause)) {
694
+ return;
695
+ }
696
+ exportClause.elements.forEach((namedExport) => {
697
+ exported.add(namedExport.propertyName?.text ?? namedExport.name.text);
663
698
  });
664
699
  });
665
700
  return exported;
666
701
  }
702
+ function addExportedName(exported, name, node) {
703
+ if (name && isExportedNode(node)) {
704
+ exported.add(name);
705
+ }
706
+ }
707
+ function isExportedNode(node) {
708
+ return ts_morph_1.ts.canHaveModifiers(node) &&
709
+ (ts_morph_1.ts.getModifiers(node) ?? []).some((modifier) => modifier.kind === ts_morph_1.ts.SyntaxKind.ExportKeyword);
710
+ }
711
+ function bindingNameText(name, sourceFile) {
712
+ if (ts_morph_1.ts.isIdentifier(name)) {
713
+ return name.text;
714
+ }
715
+ return name.getText(sourceFile);
716
+ }
717
+ function propertyNameText(name, sourceFile) {
718
+ if (ts_morph_1.ts.isIdentifier(name) || ts_morph_1.ts.isStringLiteral(name) || ts_morph_1.ts.isNumericLiteral(name)) {
719
+ return name.text;
720
+ }
721
+ return name.getText(sourceFile);
722
+ }
723
+ function isTopLevelVariableDeclaration(node) {
724
+ const declarationList = node.parent;
725
+ const statement = declarationList.parent;
726
+ return ts_morph_1.ts.isVariableStatement(statement) && ts_morph_1.ts.isSourceFile(statement.parent);
727
+ }
667
728
  function graphSymbolsByName(engine, workspaceRoot, projectPath) {
668
729
  const symbols = new Map();
669
730
  engine.graph.symbols.forEach((symbol) => {
@@ -673,13 +734,12 @@ function graphSymbolsByName(engine, workspaceRoot, projectPath) {
673
734
  });
674
735
  return symbols;
675
736
  }
676
- function lineRangeForNode(node) {
677
- const sourceFile = node.getSourceFile();
678
- const start = sourceFile.getLineAndColumnAtPos(node.getStart()).line;
679
- const end = sourceFile.getLineAndColumnAtPos(node.getEnd()).line;
737
+ function lineRangeForNode(sourceFile, node) {
738
+ const start = lineForPosition(sourceFile, node.getStart(sourceFile));
739
+ const end = lineForPosition(sourceFile, node.getEnd());
680
740
  const body = bodyNodeFor(node);
681
741
  const bodyStart = body
682
- ? sourceFile.getLineAndColumnAtPos(body.getStart()).line
742
+ ? lineForPosition(sourceFile, body.getStart(sourceFile))
683
743
  : start;
684
744
  return {
685
745
  start,
@@ -688,38 +748,40 @@ function lineRangeForNode(node) {
688
748
  signatureEnd: Math.max(start, Math.min(bodyStart, end)),
689
749
  };
690
750
  }
751
+ function lineForPosition(sourceFile, position) {
752
+ return sourceFile.getLineAndCharacterOfPosition(position).line + 1;
753
+ }
691
754
  function bodyNodeFor(node) {
692
- if (ts_morph_1.Node.isFunctionDeclaration(node) ||
693
- ts_morph_1.Node.isMethodDeclaration(node) ||
694
- ts_morph_1.Node.isFunctionExpression(node) ||
695
- ts_morph_1.Node.isArrowFunction(node)) {
696
- return node.getBody();
755
+ if (ts_morph_1.ts.isFunctionDeclaration(node) ||
756
+ ts_morph_1.ts.isMethodDeclaration(node) ||
757
+ ts_morph_1.ts.isFunctionExpression(node) ||
758
+ ts_morph_1.ts.isArrowFunction(node)) {
759
+ return node.body;
697
760
  }
698
- if (ts_morph_1.Node.isClassDeclaration(node)) {
761
+ if (ts_morph_1.ts.isClassDeclaration(node)) {
699
762
  return node;
700
763
  }
701
- if (ts_morph_1.Node.isVariableDeclaration(node)) {
702
- const initializer = node.getInitializer();
764
+ if (ts_morph_1.ts.isVariableDeclaration(node)) {
765
+ const initializer = node.initializer;
703
766
  if (initializer &&
704
- (ts_morph_1.Node.isArrowFunction(initializer) || ts_morph_1.Node.isFunctionExpression(initializer))) {
705
- return initializer.getBody();
767
+ (ts_morph_1.ts.isArrowFunction(initializer) || ts_morph_1.ts.isFunctionExpression(initializer))) {
768
+ return initializer.body;
706
769
  }
707
770
  }
708
771
  return undefined;
709
772
  }
710
- function signatureTextForNode(node) {
711
- const sourceFile = node.getSourceFile();
712
- const fullText = sourceFile.getFullText();
773
+ function signatureTextForNode(sourceFile, node) {
774
+ const fullText = sourceFile.text;
713
775
  const body = bodyNodeFor(node);
714
- if (body && !ts_morph_1.Node.isClassDeclaration(node)) {
715
- const start = node.getStart();
716
- const bodyStart = body.getStart();
776
+ if (body && !ts_morph_1.ts.isClassDeclaration(node)) {
777
+ const start = node.getStart(sourceFile);
778
+ const bodyStart = body.getStart(sourceFile);
717
779
  if (bodyStart > start) {
718
780
  return normalizeSignatureText(fullText.slice(start, bodyStart));
719
781
  }
720
782
  }
721
- const text = node.getText();
722
- if (ts_morph_1.Node.isClassDeclaration(node)) {
783
+ const text = node.getText(sourceFile);
784
+ if (ts_morph_1.ts.isClassDeclaration(node)) {
723
785
  const braceIndex = text.indexOf("{");
724
786
  if (braceIndex >= 0) {
725
787
  return normalizeSignatureText(text.slice(0, braceIndex));
@@ -1 +1 @@
1
- {"version":3,"file":"staged-check.js","sourceRoot":"","sources":["../src/staged-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"staged-check.js","sourceRoot":"","sources":["../src/staged-check.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@getripple/core",
3
- "version": "1.0.5",
4
- "description": "Local AI-agent workflow engine core for context planning, drift checks, and trust-boundary gates.",
3
+ "version": "1.0.7",
4
+ "description": "Core engine for Ripple's local drift-control gate: context planning, drift checks, and trust boundaries.",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",
7
7
  "main": "dist/index.js",