centient 3.2.0 → 3.2.3

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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,46 @@ All notable changes to the MCP Server for Context Engineering.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.2.3] - 2026-01-13
9
+
10
+ ### Fixed
11
+
12
+ - **Memory Bank** - Remove debug markers from `push_to_memory_bank` that were polluting output
13
+
14
+ ### Security
15
+
16
+ - **VM Sandbox** - Fix `this.constructor` escape vector (CVE-2026-22812 audit)
17
+ - **Python Sandbox** - Extended safe builtins for better security hardening
18
+
19
+ ## [3.2.2] - 2026-01-13
20
+
21
+ ### Security
22
+
23
+ - **Python Sandbox Hardening** - Critical security fixes for RLVR execution
24
+ - Block `getattr` in Python sandbox to prevent escape via attribute access
25
+ - Require RestrictedPython as mandatory dependency, remove unsafe fallback mode
26
+ - Prevents potential sandbox escape vectors in skill execution
27
+
28
+ ### Documentation
29
+
30
+ - Added Discovery Module documentation (2 tools) to MCP_TOOLS_REFERENCE.md
31
+ - Added Channels Module documentation (5 tools) to MCP_TOOLS_REFERENCE.md
32
+ - Updated tool counts: 98 tools across 18 modules
33
+ - Synced DOCUMENTATION_INDEX.md and CLAUDE.md with current state
34
+
35
+ ## [3.2.1] - 2026-01-13
36
+
37
+ ### Documentation
38
+
39
+ - Added Discovery Module section to MCP_TOOLS_REFERENCE.md
40
+ - `discover_tools` - Search tools by keyword or category
41
+ - `get_tool_help` - Get detailed documentation for specific tools
42
+ - Added Channels Module section to MCP_TOOLS_REFERENCE.md
43
+ - Full API reference for all 5 channel tools
44
+ - Multi-agent coordination workflow diagram
45
+ - Updated DOCUMENTATION_INDEX.md with corrected counts and ADR-019
46
+ - Updated CLAUDE.md Code Organization section
47
+
8
48
  ## [3.2.0] - 2026-01-13
9
49
 
10
50
  ### Added
@@ -161,6 +161,7 @@ async function pushToMemoryBank(input) {
161
161
  let result;
162
162
  try {
163
163
  result = await runPythonScriptJSON(scriptPath, scriptArgs, { timeout: 120000 });
164
+ console.error("[push_to_memory_bank] Python result:", JSON.stringify(result, null, 2));
164
165
  }
165
166
  finally {
166
167
  prepared.cleanup();
@@ -1 +1 @@
1
- {"version":3,"file":"pushToMemoryBank.js","sourceRoot":"","sources":["../../../src/tools/memory-bank/pushToMemoryBank.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pushToMemoryBank.js","sourceRoot":"","sources":["../../../src/tools/memory-bank/pushToMemoryBank.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PythonSandbox.d.ts","sourceRoot":"","sources":["../../../src/utils/rlvr/PythonSandbox.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EAEf,MAAM,YAAY,CAAC;AAMpB,qBAAa,aAAc,YAAW,gBAAgB;IACpD,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;IACtC,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,YAAY,CAAS;;IAOvB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAsJ/D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B,OAAO,CAAC,QAAQ;YA4CF,oBAAoB;CAyBnC"}
1
+ {"version":3,"file":"PythonSandbox.d.ts","sourceRoot":"","sources":["../../../src/utils/rlvr/PythonSandbox.ts"],"names":[],"mappings":"AAuBA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EAEf,MAAM,YAAY,CAAC;AAMpB,qBAAa,aAAc,YAAW,gBAAgB;IACpD,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;IACtC,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;;IAUvB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAsJ/D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B,OAAO,CAAC,QAAQ;YA4CF,oBAAoB;CAyBnC"}
@@ -8,10 +8,11 @@ export class PythonSandbox {
8
8
  language = "python";
9
9
  limits = { ...DEFAULT_LIMITS };
10
10
  initialized = false;
11
- pythonPath = "python3";
11
+ pythonPath;
12
12
  executorPath;
13
13
  constructor() {
14
14
  this.executorPath = path.join(__dirname, "python_executor.py");
15
+ this.pythonPath = process.env.RLVR_PYTHON_PATH || "python3";
15
16
  }
16
17
  async initialize() {
17
18
  try {
@@ -154,26 +155,26 @@ export class PythonSandbox {
154
155
  const match = trimmed.match(/^def\s+(\w+)/);
155
156
  if (match) {
156
157
  const funcName = match[1];
157
- return `${trimmed}\n__RESULT__ = ${funcName}(__INPUT__)`;
158
+ return `${trimmed}\nRLVR_RESULT = ${funcName}(RLVR_INPUT)`;
158
159
  }
159
160
  }
160
161
  return `
161
- __fn__ = ${trimmed}
162
- if callable(__fn__):
163
- __RESULT__ = __fn__(__INPUT__)
162
+ rlvr_fn = ${trimmed}
163
+ if callable(rlvr_fn):
164
+ RLVR_RESULT = rlvr_fn(RLVR_INPUT)
164
165
  else:
165
- __RESULT__ = __fn__
166
+ RLVR_RESULT = rlvr_fn
166
167
  `.trim();
167
168
  }
168
169
  if (trimmed.startsWith("def ")) {
169
170
  const match = trimmed.match(/^def\s+(\w+)/);
170
171
  if (match) {
171
172
  const funcName = match[1];
172
- return `${trimmed}\n__RESULT__ = ${funcName}(__INPUT__)`;
173
+ return `${trimmed}\nRLVR_RESULT = ${funcName}(RLVR_INPUT)`;
173
174
  }
174
175
  }
175
176
  return `
176
- input = __INPUT__
177
+ input = RLVR_INPUT
177
178
  ${code}
178
179
  `.trim();
179
180
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PythonSandbox.js","sourceRoot":"","sources":["../../../src/utils/rlvr/PythonSandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PythonSandbox.js","sourceRoot":"","sources":["../../../src/utils/rlvr/PythonSandbox.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TypeScriptSandbox.d.ts","sourceRoot":"","sources":["../../../src/utils/rlvr/TypeScriptSandbox.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB,qBAAa,iBAAkB,YAAW,gBAAgB;IACxD,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,WAAW,CAAS;IAEtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAiI/D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,OAAO,CAAC,oBAAoB;IAyF5B,OAAO,CAAC,QAAQ;IA6BhB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,mBAAmB;CAQ5B"}
1
+ {"version":3,"file":"TypeScriptSandbox.d.ts","sourceRoot":"","sources":["../../../src/utils/rlvr/TypeScriptSandbox.ts"],"names":[],"mappings":"AAuBA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB,qBAAa,iBAAkB,YAAW,gBAAgB;IACxD,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,WAAW,CAAS;IAEtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAI1C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAiI/D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B,OAAO,CAAC,oBAAoB;IA8F5B,OAAO,CAAC,QAAQ;IA6BhB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,mBAAmB;CAQ5B"}
@@ -117,73 +117,73 @@ export class TypeScriptSandbox {
117
117
  }
118
118
  createSandboxContext(logs, stdoutHandler) {
119
119
  const now = Date.now();
120
- return {
121
- JSON,
122
- Math,
123
- Date,
124
- Array,
125
- Object,
126
- String,
127
- Number,
128
- Boolean,
129
- RegExp,
130
- Map,
131
- Set,
132
- WeakMap,
133
- WeakSet,
134
- Promise,
135
- Symbol,
136
- Error,
137
- TypeError,
138
- RangeError,
139
- SyntaxError,
140
- ReferenceError,
141
- encodeURIComponent,
142
- decodeURIComponent,
143
- encodeURI,
144
- decodeURI,
145
- setTimeout: undefined,
146
- setInterval: undefined,
147
- setImmediate: undefined,
148
- clearTimeout: undefined,
149
- clearInterval: undefined,
150
- clearImmediate: undefined,
151
- console: {
152
- log: (...args) => {
153
- const message = args.map((a) => this.stringify(a)).join(" ");
154
- logs.push({ level: "log", message, timestamp: Date.now() - now });
155
- stdoutHandler(message);
156
- },
157
- warn: (...args) => {
158
- const message = args.map((a) => this.stringify(a)).join(" ");
159
- logs.push({ level: "warn", message, timestamp: Date.now() - now });
160
- },
161
- error: (...args) => {
162
- const message = args.map((a) => this.stringify(a)).join(" ");
163
- logs.push({ level: "error", message, timestamp: Date.now() - now });
164
- },
165
- debug: (...args) => {
166
- const message = args.map((a) => this.stringify(a)).join(" ");
167
- logs.push({ level: "debug", message, timestamp: Date.now() - now });
168
- },
120
+ const sandbox = Object.create(null);
121
+ sandbox.JSON = JSON;
122
+ sandbox.Math = Math;
123
+ sandbox.Date = Date;
124
+ sandbox.Array = Array;
125
+ sandbox.Object = Object;
126
+ sandbox.String = String;
127
+ sandbox.Number = Number;
128
+ sandbox.Boolean = Boolean;
129
+ sandbox.RegExp = RegExp;
130
+ sandbox.Map = Map;
131
+ sandbox.Set = Set;
132
+ sandbox.WeakMap = WeakMap;
133
+ sandbox.WeakSet = WeakSet;
134
+ sandbox.Promise = Promise;
135
+ sandbox.Symbol = Symbol;
136
+ sandbox.Error = Error;
137
+ sandbox.TypeError = TypeError;
138
+ sandbox.RangeError = RangeError;
139
+ sandbox.SyntaxError = SyntaxError;
140
+ sandbox.ReferenceError = ReferenceError;
141
+ sandbox.encodeURIComponent = encodeURIComponent;
142
+ sandbox.decodeURIComponent = decodeURIComponent;
143
+ sandbox.encodeURI = encodeURI;
144
+ sandbox.decodeURI = decodeURI;
145
+ sandbox.setTimeout = undefined;
146
+ sandbox.setInterval = undefined;
147
+ sandbox.setImmediate = undefined;
148
+ sandbox.clearTimeout = undefined;
149
+ sandbox.clearInterval = undefined;
150
+ sandbox.clearImmediate = undefined;
151
+ sandbox.console = {
152
+ log: (...args) => {
153
+ const message = args.map((a) => this.stringify(a)).join(" ");
154
+ logs.push({ level: "log", message, timestamp: Date.now() - now });
155
+ stdoutHandler(message);
156
+ },
157
+ warn: (...args) => {
158
+ const message = args.map((a) => this.stringify(a)).join(" ");
159
+ logs.push({ level: "warn", message, timestamp: Date.now() - now });
160
+ },
161
+ error: (...args) => {
162
+ const message = args.map((a) => this.stringify(a)).join(" ");
163
+ logs.push({ level: "error", message, timestamp: Date.now() - now });
164
+ },
165
+ debug: (...args) => {
166
+ const message = args.map((a) => this.stringify(a)).join(" ");
167
+ logs.push({ level: "debug", message, timestamp: Date.now() - now });
169
168
  },
170
- require: undefined,
171
- import: undefined,
172
- module: undefined,
173
- exports: undefined,
174
- __dirname: undefined,
175
- __filename: undefined,
176
- process: undefined,
177
- global: undefined,
178
- globalThis: undefined,
179
- Buffer: undefined,
180
- Uint8Array: undefined,
181
- fetch: undefined,
182
- XMLHttpRequest: undefined,
183
- WebSocket: undefined,
184
- __INPUT__: undefined,
185
- __RESULT__: undefined,
186
169
  };
170
+ sandbox.require = undefined;
171
+ sandbox.import = undefined;
172
+ sandbox.module = undefined;
173
+ sandbox.exports = undefined;
174
+ sandbox.__dirname = undefined;
175
+ sandbox.__filename = undefined;
176
+ sandbox.process = undefined;
177
+ sandbox.global = undefined;
178
+ sandbox.globalThis = undefined;
179
+ sandbox.Buffer = undefined;
180
+ sandbox.Uint8Array = undefined;
181
+ sandbox.fetch = undefined;
182
+ sandbox.XMLHttpRequest = undefined;
183
+ sandbox.WebSocket = undefined;
184
+ sandbox.__INPUT__ = undefined;
185
+ sandbox.__RESULT__ = undefined;
186
+ return sandbox;
187
187
  }
188
188
  wrapCode(code) {
189
189
  const trimmed = code.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"TypeScriptSandbox.js","sourceRoot":"","sources":["../../../src/utils/rlvr/TypeScriptSandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypeScriptSandbox.js","sourceRoot":"","sources":["../../../src/utils/rlvr/TypeScriptSandbox.ts"],"names":[],"mappings":"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"}
@@ -2,152 +2,161 @@
2
2
  """
3
3
  RLVR Python Sandbox Executor
4
4
 
5
- Executes Python code in a restricted environment.
6
- Uses RestrictedPython when available, falls back to restricted builtins.
5
+ Executes Python code in a restricted environment using RestrictedPython.
6
+ RestrictedPython is REQUIRED - no fallback mode for security reasons.
7
7
 
8
8
  Communication protocol:
9
9
  - Reads JSON from stdin: {"code": "...", "input": ...}
10
10
  - Writes JSON to stdout: {"status": "success|error|timeout", "returnValue": ..., "stdout": "...", "stderr": "..."}
11
11
 
12
12
  Security measures:
13
+ - RestrictedPython compiler (required, no fallback)
13
14
  - No file system access
14
15
  - No network access
15
16
  - No subprocess spawning
16
- - No module imports (except safe builtins)
17
- - Restricted builtins
17
+ - No dangerous module imports
18
+ - Guarded attribute access (blocks __class__.__bases__ escape)
19
+
20
+ Install: pip install RestrictedPython
18
21
  """
19
22
 
20
23
  import sys
21
24
  import json
22
25
  import io
26
+ import re
23
27
  import traceback
24
28
  from contextlib import redirect_stdout, redirect_stderr
25
29
  from typing import Any, Dict
26
30
 
27
- # Try to import RestrictedPython for enhanced security
31
+ # RestrictedPython is REQUIRED - no fallback mode
28
32
  try:
29
33
  from RestrictedPython import compile_restricted, safe_globals
30
34
  from RestrictedPython.Guards import safe_builtins, guarded_iter_unpack_sequence
31
35
  from RestrictedPython.Eval import default_guarded_getiter, default_guarded_getitem
32
- RESTRICTED_PYTHON_AVAILABLE = True
33
- except ImportError:
34
- RESTRICTED_PYTHON_AVAILABLE = False
35
-
36
-
37
- # Safe builtins for fallback mode
38
- SAFE_BUILTINS = {
39
- # Type constructors
40
- 'bool': bool,
41
- 'int': int,
42
- 'float': float,
43
- 'str': str,
44
- 'list': list,
45
- 'dict': dict,
46
- 'tuple': tuple,
47
- 'set': set,
48
- 'frozenset': frozenset,
49
- 'bytes': bytes,
50
- 'bytearray': bytearray,
51
-
52
- # Type checking
53
- 'type': type,
54
- 'isinstance': isinstance,
55
- 'issubclass': issubclass,
56
-
57
- # Math and numeric
58
- 'abs': abs,
59
- 'round': round,
60
- 'min': min,
61
- 'max': max,
62
- 'sum': sum,
63
- 'pow': pow,
64
- 'divmod': divmod,
65
-
66
- # Iterables
67
- 'len': len,
68
- 'range': range,
69
- 'enumerate': enumerate,
70
- 'zip': zip,
71
- 'map': map,
72
- 'filter': filter,
73
- 'reversed': reversed,
74
- 'sorted': sorted,
75
- 'all': all,
76
- 'any': any,
77
-
78
- # String/repr
79
- 'repr': repr,
80
- 'ascii': ascii,
81
- 'chr': chr,
82
- 'ord': ord,
83
- 'bin': bin,
84
- 'hex': hex,
85
- 'oct': oct,
86
- 'format': format,
87
-
88
- # Object inspection (safe subset)
89
- 'hasattr': hasattr,
90
- 'getattr': getattr,
91
- 'callable': callable,
92
- 'id': id,
93
- 'hash': hash,
94
-
95
- # Exceptions
96
- 'Exception': Exception,
97
- 'ValueError': ValueError,
98
- 'TypeError': TypeError,
99
- 'KeyError': KeyError,
100
- 'IndexError': IndexError,
101
- 'AttributeError': AttributeError,
102
- 'RuntimeError': RuntimeError,
103
- 'StopIteration': StopIteration,
104
- 'ZeroDivisionError': ZeroDivisionError,
105
-
106
- # Constants
107
- 'True': True,
108
- 'False': False,
109
- 'None': None,
110
-
111
- # Print (captured)
112
- 'print': print,
113
- }
114
-
115
- # Explicitly blocked - should NOT be available
116
- BLOCKED = {
117
- 'open', 'file', 'input', 'raw_input',
118
- 'exec', 'eval', 'compile',
119
- '__import__', 'import',
120
- 'globals', 'locals', 'vars', 'dir',
121
- 'setattr', 'delattr',
122
- 'exit', 'quit',
123
- 'help', 'license', 'credits', 'copyright',
124
- }
36
+ except ImportError as e:
37
+ # Fatal error - RestrictedPython is required for security
38
+ print(json.dumps({
39
+ 'status': 'error',
40
+ 'returnValue': None,
41
+ 'stdout': '',
42
+ 'stderr': '',
43
+ 'error': {
44
+ 'type': 'SecurityError',
45
+ 'message': 'RestrictedPython is required but not installed. '
46
+ 'Install with: pip install RestrictedPython',
47
+ },
48
+ }))
49
+ sys.exit(1)
125
50
 
126
51
 
127
52
  def create_safe_globals(input_value: Any) -> Dict[str, Any]:
128
- """Create a restricted global namespace for code execution."""
129
- if RESTRICTED_PYTHON_AVAILABLE:
130
- # Use RestrictedPython's safe globals
131
- restricted_globals = dict(safe_globals)
132
- restricted_globals['__builtins__'] = safe_builtins
133
- restricted_globals['_getiter_'] = default_guarded_getiter
134
- restricted_globals['_getitem_'] = default_guarded_getitem
135
- restricted_globals['_iter_unpack_sequence_'] = guarded_iter_unpack_sequence
136
- restricted_globals['__INPUT__'] = input_value
137
- restricted_globals['print'] = print # Allow print for output capture
138
- return restricted_globals
139
- else:
140
- # Use our restricted builtins
141
- return {
142
- '__builtins__': SAFE_BUILTINS,
143
- '__name__': '__restricted__',
144
- '__doc__': None,
145
- '__INPUT__': input_value,
146
- }
53
+ """Create a restricted global namespace for code execution using RestrictedPython.
54
+
55
+ Includes additional safe builtins beyond RestrictedPython defaults:
56
+ - Collection functions: list, dict, set, tuple, frozenset
57
+ - Iteration: range, enumerate, zip, map, filter, reversed, sorted
58
+ - Aggregation: sum, min, max, all, any, len
59
+ - Math: abs, round, pow, divmod
60
+ - Type conversion: int, float, str, bool, bytes
61
+ - Other safe functions: repr, hash, slice, iter, next
62
+ """
63
+ restricted_globals = dict(safe_globals)
64
+
65
+ # Start with safe_builtins as base
66
+ extended_builtins = dict(safe_builtins)
67
+
68
+ # Add safe collection constructors
69
+ extended_builtins['list'] = list
70
+ extended_builtins['dict'] = dict
71
+ extended_builtins['set'] = set
72
+ extended_builtins['tuple'] = tuple
73
+ extended_builtins['frozenset'] = frozenset
74
+
75
+ # Add safe iteration functions
76
+ extended_builtins['range'] = range
77
+ extended_builtins['enumerate'] = enumerate
78
+ extended_builtins['zip'] = zip
79
+ extended_builtins['map'] = map
80
+ extended_builtins['filter'] = filter
81
+ extended_builtins['reversed'] = reversed
82
+ extended_builtins['sorted'] = sorted
83
+
84
+ # Add safe aggregation functions
85
+ extended_builtins['sum'] = sum
86
+ extended_builtins['min'] = min
87
+ extended_builtins['max'] = max
88
+ extended_builtins['all'] = all
89
+ extended_builtins['any'] = any
90
+ extended_builtins['len'] = len
91
+
92
+ # Add safe math functions
93
+ extended_builtins['abs'] = abs
94
+ extended_builtins['round'] = round
95
+ extended_builtins['pow'] = pow
96
+ extended_builtins['divmod'] = divmod
97
+
98
+ # Add safe type conversion
99
+ extended_builtins['int'] = int
100
+ extended_builtins['float'] = float
101
+ extended_builtins['str'] = str
102
+ extended_builtins['bool'] = bool
103
+ extended_builtins['bytes'] = bytes
104
+
105
+ # Add other safe functions
106
+ extended_builtins['repr'] = repr
107
+ extended_builtins['hash'] = hash
108
+ extended_builtins['slice'] = slice
109
+ extended_builtins['iter'] = iter
110
+ extended_builtins['next'] = next
111
+
112
+ restricted_globals['__builtins__'] = extended_builtins
113
+ restricted_globals['_getiter_'] = default_guarded_getiter
114
+ restricted_globals['_getitem_'] = default_guarded_getitem
115
+ restricted_globals['_iter_unpack_sequence_'] = guarded_iter_unpack_sequence
116
+ restricted_globals['RLVR_INPUT'] = input_value
117
+ restricted_globals['print'] = print # Allow print for output capture
118
+ return restricted_globals
119
+
120
+
121
+ def wrap_code(code: str) -> str:
122
+ """Wrap code to capture return value, similar to TypeScript sandbox.
123
+
124
+ Handles:
125
+ - Lambda expressions: wrap to call with RLVR_INPUT
126
+ - Function definitions: wrap to call with RLVR_INPUT
127
+ - Multi-line code: wrap in function to capture result
128
+ - Simple expressions: assign to result
129
+ """
130
+ trimmed = code.strip()
131
+
132
+ # Lambda expression - call it with input
133
+ if trimmed.startswith('lambda '):
134
+ return f"RLVR_RESULT = ({trimmed})(RLVR_INPUT)"
135
+
136
+ # Function definition - define and call with input
137
+ if trimmed.startswith('def '):
138
+ # Extract function name
139
+ match = re.match(r'def\s+(\w+)\s*\(', trimmed)
140
+ if match:
141
+ func_name = match.group(1)
142
+ return f"{trimmed}\nRLVR_RESULT = {func_name}(RLVR_INPUT)"
143
+
144
+ # Multi-line code or statements - look for result variable
145
+ if '\n' in trimmed or trimmed.endswith(':'):
146
+ return code
147
+
148
+ # Simple expression - if it doesn't have result assignment, wrap it
149
+ if not any(trimmed.startswith(prefix) for prefix in ['result =', 'RLVR_RESULT =', '_result_ =']):
150
+ # Check if it's an expression (no assignment, no statement keywords)
151
+ statement_keywords = ['if ', 'for ', 'while ', 'with ', 'try:', 'class ', 'import ', 'from ', 'raise ', 'assert ']
152
+ if not any(trimmed.startswith(kw) for kw in statement_keywords) and '=' not in trimmed.split('(')[0]:
153
+ return f"RLVR_RESULT = {trimmed}"
154
+
155
+ return code
147
156
 
148
157
 
149
158
  def execute_code(code: str, input_value: Any) -> Dict[str, Any]:
150
- """Execute code in restricted environment and return results."""
159
+ """Execute code in restricted environment using RestrictedPython."""
151
160
  stdout_capture = io.StringIO()
152
161
  stderr_capture = io.StringIO()
153
162
 
@@ -157,34 +166,24 @@ def execute_code(code: str, input_value: Any) -> Dict[str, Any]:
157
166
  'stdout': '',
158
167
  'stderr': '',
159
168
  'error': None,
160
- 'restrictedMode': 'RestrictedPython' if RESTRICTED_PYTHON_AVAILABLE else 'fallback',
169
+ 'restrictedMode': 'RestrictedPython',
161
170
  }
162
171
 
163
172
  try:
164
173
  # Create safe globals
165
174
  safe_globals_dict = create_safe_globals(input_value)
166
- safe_locals = {}
167
-
168
- # Compile code
169
- if RESTRICTED_PYTHON_AVAILABLE:
170
- # Use RestrictedPython compiler
171
- byte_code = compile_restricted(
172
- code,
173
- filename='<pattern>',
174
- mode='exec'
175
- )
176
- if byte_code.errors:
177
- result['status'] = 'error'
178
- result['error'] = {
179
- 'type': 'CompilationError',
180
- 'message': '\n'.join(byte_code.errors),
181
- }
182
- return result
183
- compiled_code = byte_code.code
184
- else:
185
- # Standard compile with AST validation would go here
186
- # For now, just compile normally (relies on restricted builtins)
187
- compiled_code = compile(code, '<pattern>', 'exec')
175
+
176
+ # Wrap code to capture return value
177
+ wrapped_code = wrap_code(code)
178
+
179
+ # Compile code with RestrictedPython
180
+ # Note: compile_restricted returns code object directly in RestrictedPython 8.x
181
+ # Compilation errors are raised as exceptions (SyntaxError, etc.)
182
+ compiled_code = compile_restricted(
183
+ wrapped_code,
184
+ filename='<pattern>',
185
+ mode='exec'
186
+ )
188
187
 
189
188
  # Execute with output capture
190
189
  # Use same dict for globals and locals to enable recursive functions
@@ -192,9 +191,9 @@ def execute_code(code: str, input_value: Any) -> Dict[str, Any]:
192
191
  with redirect_stdout(stdout_capture), redirect_stderr(stderr_capture):
193
192
  exec(compiled_code, execution_namespace, execution_namespace)
194
193
 
195
- # Get return value (check for __RESULT__ or last expression)
196
- if '__RESULT__' in execution_namespace:
197
- result['returnValue'] = execution_namespace['__RESULT__']
194
+ # Get return value (check for RLVR_RESULT or last expression)
195
+ if 'RLVR_RESULT' in execution_namespace:
196
+ result['returnValue'] = execution_namespace['RLVR_RESULT']
198
197
  elif '_result_' in execution_namespace:
199
198
  result['returnValue'] = execution_namespace['_result_']
200
199
  elif 'result' in execution_namespace:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "centient",
3
- "version": "3.2.0",
3
+ "version": "3.2.3",
4
4
  "description": "MCP server for context engineering operations with handoff protocol, health monitoring, session branching with visualization, and query-based artifact loading",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",