@resolveio/server-lib 22.3.118 → 22.3.120

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolveio/server-lib",
3
- "version": "22.3.118",
3
+ "version": "22.3.120",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "./build_package.sh",
@@ -839,6 +839,37 @@ function buildResolveIORunnerLocalQaScript() {
839
839
  ' export RESOLVEIO_QA_PRESTART_MONGO_READY=1',
840
840
  ' return 0',
841
841
  '}',
842
+ 'prepare_tmp_server_settings() {',
843
+ ' mkdir -p "$PROJECT_ROOT/server/tmp"',
844
+ ' for f in settings.json settings.local.json .env .env.runtime .env.production .env.dev; do',
845
+ ' if [ -f "$PROJECT_ROOT/server/$f" ]; then cp "$PROJECT_ROOT/server/$f" "$PROJECT_ROOT/server/tmp/$f"; elif [ -f "$PROJECT_ROOT/$f" ]; then cp "$PROJECT_ROOT/$f" "$PROJECT_ROOT/server/tmp/$f"; fi',
846
+ ' done',
847
+ ' if [ ! -f "$PROJECT_ROOT/server/tmp/settings.json" ] && [ -f "$PROJECT_ROOT/server/tmp/settings.local.json" ]; then cp "$PROJECT_ROOT/server/tmp/settings.local.json" "$PROJECT_ROOT/server/tmp/settings.json"; fi',
848
+ ' [ -f "$PROJECT_ROOT/server/tmp/settings.json" ]',
849
+ '}',
850
+ 'preseeded_tmp_server_ready() {',
851
+ ' [ -f "$PROJECT_ROOT/server/tmp/index.js" ] || return 1',
852
+ ' prepare_tmp_server_settings >/dev/null 2>&1 || return 1',
853
+ ' return 0',
854
+ '}',
855
+ 'run_preseeded_tmp_server() {',
856
+ ' cd "$PROJECT_ROOT/server" || exit 4',
857
+ ' source "$TOOLS_DIR/env.sh"',
858
+ ' if [ -f "$HOME/.nvm/nvm.sh" ]; then source "$HOME/.nvm/nvm.sh"; nvm use 22 >/dev/null 2>&1 || true; fi',
859
+ ' if preseeded_tmp_server_ready; then',
860
+ ' echo "ResolveIO AI runner QA using existing compiled server/tmp/index.js for pre-seeded local Mongo."',
861
+ ' echo "ResolveIO AI runner QA starting node tmp/index.js"',
862
+ ' exec node --inspect=127.0.0.1:"$INSPECT_PORT" --max_old_space_size=3000 tmp/index.js',
863
+ ' fi',
864
+ ' echo "ResolveIO AI runner QA compiling server tmp output for pre-seeded local Mongo."',
865
+ ' node_modules/gulp/bin/gulp.js compile dotenv methodAndPublicationListGenerator',
866
+ ' compile_rc="$?"',
867
+ ' if [ "$compile_rc" != "0" ]; then echo "ResolveIO AI runner QA server compile failed before tmp startup (exit $compile_rc)."; exit "$compile_rc"; fi',
868
+ ' if ! prepare_tmp_server_settings; then echo "ResolveIO AI runner QA missing settings.json/settings.local.json for tmp server startup"; exit 4; fi',
869
+ ' if [ ! -f tmp/index.js ]; then echo "ResolveIO AI runner QA missing server/tmp/index.js after compile"; exit 4; fi',
870
+ ' echo "ResolveIO AI runner QA starting node tmp/index.js"',
871
+ ' exec node --inspect=127.0.0.1:"$INSPECT_PORT" --max_old_space_size=3000 tmp/index.js',
872
+ '}',
842
873
  'if reuse_running_app_if_ready; then RUNNER_REUSED_READY=1; exit 0; fi',
843
874
  'if ! mkdir "$LOCK_DIR" 2>/dev/null; then',
844
875
  ' if janitor_lock_is_live; then',
@@ -867,7 +898,7 @@ function buildResolveIORunnerLocalQaScript() {
867
898
  ' SERVER_REQUIRED=1',
868
899
  ' if [ "${RESOLVEIO_QA_PRESTART_MONGO_READY:-}" = "1" ] && [ -x "$PROJECT_ROOT/server/node_modules/gulp/bin/gulp.js" ] && [ -f "$PROJECT_ROOT/server/gulpfile.js" ] && grep -q "mongo-start" "$PROJECT_ROOT/server/gulpfile.js"; then',
869
900
  ' echo "ResolveIO AI runner QA using pre-seeded local Mongo; starting server without mongo-start." | tee -a "$ARTIFACT_DIR/runner.log"',
870
- ' (cd "$PROJECT_ROOT/server" && source "$TOOLS_DIR/env.sh" && if [ -f "$HOME/.nvm/nvm.sh" ]; then source "$HOME/.nvm/nvm.sh"; nvm use 22 >/dev/null 2>&1 || true; fi; { node_modules/gulp/bin/gulp.js compile dotenv methodAndPublicationListGenerator && mkdir -p tmp && for f in settings.json settings.local.json .env .env.runtime .env.production .env.dev; do if [ -f "$f" ]; then cp "$f" "tmp/$f"; elif [ -f "$PROJECT_ROOT/$f" ]; then cp "$PROJECT_ROOT/$f" "tmp/$f"; fi; done && if [ ! -f tmp/settings.json ] && [ -f tmp/settings.local.json ]; then cp tmp/settings.local.json tmp/settings.json; fi && if [ ! -f tmp/settings.json ]; then echo "ResolveIO AI runner QA missing settings.json/settings.local.json for tmp server startup"; exit 4; fi && echo "ResolveIO AI runner QA starting node tmp/index.js" && node --inspect=127.0.0.1:"$INSPECT_PORT" --max_old_space_size=3000 tmp/index.js; } 2>&1 | tee "$ARTIFACT_DIR/server.log") &',
901
+ ' (run_preseeded_tmp_server 2>&1 | tee "$ARTIFACT_DIR/server.log") &',
871
902
  ' elif node -e "const p=require(process.argv[1]); process.exit(p.scripts&&p.scripts.server?0:1)" "$PROJECT_ROOT/server/package.json" >/dev/null 2>&1; then',
872
903
  ' (cd "$PROJECT_ROOT/server" && source "$TOOLS_DIR/env.sh" && npm run server 2>&1 | tee "$ARTIFACT_DIR/server.log") &',
873
904
  ' elif [ -x "$PROJECT_ROOT/server/start_server.sh" ]; then',
@@ -2332,15 +2363,39 @@ function buildResolveIORunnerQaWorkflowProbeScript() {
2332
2363
  'function readJson(filePath) { try { return JSON.parse(fs.readFileSync(filePath, "utf8")); } catch (error) { return null; } }',
2333
2364
  'function readSeedHintText() {',
2334
2365
  ' const repoRoot = path.dirname(projectRoot);',
2335
- ' const chunks = [process.env.RESOLVEIO_QA_SEED_HINTS || "", process.env.RESOLVEIO_SUPPORT_QA_SEED_HINTS || "", process.env.RESOLVEIO_RUNNER_QA_SEED_HINTS || ""];',
2366
+ ' const chunks = [',
2367
+ ' process.env.RESOLVEIO_SUPPORT_QA_ROW_FILTER || "",',
2368
+ ' process.env.RESOLVEIO_SUPPORT_QA_CURRENT_ROW_WORKFLOW || "",',
2369
+ ' process.env.RESOLVEIO_SUPPORT_QA_CURRENT_ROW_ASSERTION || "",',
2370
+ ' process.env.RESOLVEIO_RUNNER_QA_ROW_FILTER || "",',
2371
+ ' process.env.RESOLVEIO_RUNNER_QA_CURRENT_ROW_WORKFLOW || "",',
2372
+ ' process.env.RESOLVEIO_RUNNER_QA_CURRENT_ROW_ASSERTION || "",',
2373
+ ' process.env.RESOLVEIO_QA_SEED_HINTS || "",',
2374
+ ' process.env.RESOLVEIO_SUPPORT_QA_SEED_HINTS || "",',
2375
+ ' process.env.RESOLVEIO_RUNNER_QA_SEED_HINTS || ""',
2376
+ ' ];',
2336
2377
  ' const candidates = [',
2378
+ ' path.join(artifactDir, "qa-coverage-matrix.json"),',
2379
+ ' path.join(artifactDir, "qa-row-lock.json"),',
2337
2380
  ' path.join(repoRoot, ".resolveio-support-context", "manual-ticket.request.txt"),',
2338
2381
  ' path.join(projectRoot, ".resolveio-support-context", "manual-ticket.request.txt"),',
2339
2382
  ' path.join(repoRoot, ".resolveio-context", "manual-ticket.request.txt"),',
2340
2383
  ' path.join(projectRoot, ".resolveio-context", "manual-ticket.request.txt")',
2341
2384
  ' ];',
2342
2385
  ' for (const candidate of candidates) {',
2343
- ' try { chunks.push(fs.readFileSync(candidate, "utf8")); } catch (error) {}',
2386
+ ' try {',
2387
+ ' const raw = fs.readFileSync(candidate, "utf8");',
2388
+ ' chunks.push(raw);',
2389
+ ' if (/qa-coverage-matrix\\.json$/.test(candidate)) {',
2390
+ ' const matrix = JSON.parse(raw);',
2391
+ ' const rows = Array.isArray(matrix && matrix.rows) ? matrix.rows : [];',
2392
+ ' for (const row of rows) chunks.push([row.workflow, row.route, row.assertion, row.required_proof, row.data_id, row.data_name, row.blocker, row.evidence, row.caption].filter(Boolean).join("\\n"));',
2393
+ ' }',
2394
+ ' if (/qa-row-lock\\.json$/.test(candidate)) {',
2395
+ ' const lock = JSON.parse(raw);',
2396
+ ' chunks.push([lock.workflow, lock.route, lock.assertion, lock.required_proof, lock.rowFilter, lock.blocker].filter(Boolean).join("\\n"));',
2397
+ ' }',
2398
+ ' } catch (error) {}',
2344
2399
  ' }',
2345
2400
  ' return chunks.filter(Boolean).join("\\n");',
2346
2401
  '}',
@@ -2567,7 +2622,8 @@ function buildResolveIORunnerQaWorkflowProbeScript() {
2567
2622
  'function activeRowText() {',
2568
2623
  ' const matrix = readJson(matrixPath) || {};',
2569
2624
  ' const row = matrixRows(matrix).find((candidate) => !/^(pass|passed)$/i.test(String(candidate && candidate.status || ""))) || matrixRows(matrix)[0] || {};',
2570
- ' return [row.workflow, row.route, row.assertion, row.required_proof].map((value) => String(value || "")).join("\\n");',
2625
+ ' const rowText = [row.workflow, row.route, row.assertion, row.required_proof].map((value) => String(value || "")).join("\\n");',
2626
+ ' return rowText.trim() ? rowText : readSeedHintText();',
2571
2627
  '}',
2572
2628
  'function readSeedAssetContext() {',
2573
2629
  ' const seed = readJson(path.join(artifactDir, "qa-live-data-seed-result.json"));',