safepropel 1.4.6 → 1.4.8

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.
Binary file
@@ -167,6 +167,14 @@ class WorkflowExecutor {
167
167
  */
168
168
  execute(commandStr, workspaceRoot = process.cwd()) {
169
169
  try {
170
+ // SECURITY CHECK: Validate license key for encrypted bundles
171
+ if (this.runtime._isEncrypted && !this.runtime._licenseKey) {
172
+ return {
173
+ success: false,
174
+ message: 'License key required. Set SAFEPROPEL_LICENSE_KEY environment variable or use --license-key=KEY'
175
+ };
176
+ }
177
+
170
178
  // Parse command
171
179
  const { workflowName, inputFile, options } = this.parseCommand(commandStr);
172
180
 
@@ -217,7 +225,8 @@ class WorkflowExecutor {
217
225
  const outputSection = outputSectionMatch ? outputSectionMatch[0] : workflow.content;
218
226
 
219
227
  // Extract template reference from output section - flexible pattern
220
- const templateMatch = outputSection.match(/using\s+`(\.propel\/templates\/[a-z-]+\.md)`\s+template/i);
228
+ // Matches any markdown file in .propel/templates/ directory
229
+ const templateMatch = outputSection.match(/`(\.propel\/templates\/[\w-]+\.md)`/i);
221
230
  const templates = [];
222
231
 
223
232
  if (templateMatch) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "safepropel",
3
- "version": "1.4.6",
3
+ "version": "1.4.8",
4
4
  "description": "SafePropel Framework - Hybrid Security Model: Encrypted Workflows + Transparent Rules & Templates with Dynamic Loading",
5
5
  "main": "engine/workflow-executor.js",
6
6
  "scripts": {