fraim-hub 2.0.303 → 2.0.304

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.
@@ -1585,13 +1585,13 @@ function applyReviewHandoffToRun(run, reviewHandoff) {
1585
1585
  run.artifacts = normalizedReviewHandoff.reviewTarget?.type === 'artifact_set'
1586
1586
  ? normalizedReviewHandoff.artifacts
1587
1587
  : [];
1588
+ // Do not set pauseReason here. pauseReason transitions to 'awaiting_review' only
1589
+ // at turn exit via classifyExit → isHumanActionGate. Setting it here would show
1590
+ // "Waiting on You" while the agent's turn is still running, enabling unsafe
1591
+ // approval queueing before the agent has finished its current work.
1588
1592
  if (normalizedReviewHandoff.reviewRequired === true) {
1589
- run.pauseReason = 'awaiting_review';
1590
1593
  run.nextJobRecommendations = null;
1591
1594
  }
1592
- else if (normalizedReviewHandoff.reviewRequired === false && run.pauseReason === 'awaiting_review') {
1593
- run.pauseReason = 'working';
1594
- }
1595
1595
  }
1596
1596
  // Issue #1447: a mismatched `pull_request` target, isolated for readability.
1597
1597
  function pullRequestTargetMismatch(stored, submittedTarget) {
@@ -2617,12 +2617,7 @@ function classifyExit(run, exitCode) {
2617
2617
  // phase IS by design the terminal phase of its job — the job is NOT done, it is
2618
2618
  // parked until its next scheduled invocation.
2619
2619
  if (run.recurringPark === true) {
2620
- // Scheduled/webhook runs park at the recurring sentinel; manager-triggered
2621
- // runs are handled conservatively so the manager sees a response.
2622
- if (run.sourceTrigger === 'scheduled' || run.sourceTrigger === 'webhook') {
2623
- return { action: 'park', pauseReason: 'parked_recurring' };
2624
- }
2625
- return { action: 'park', pauseReason: 'awaiting_user' };
2620
+ return { action: 'park', pauseReason: 'parked_recurring' };
2626
2621
  }
2627
2622
  return { action: 'done', pauseReason: 'done' };
2628
2623
  }
@@ -2649,8 +2644,7 @@ function classifyExit(run, exitCode) {
2649
2644
  }
2650
2645
  // Issues #1491/#1509: also check recurringPark for mid-job phases (not the last
2651
2646
  // declared phase) — covers jobs where the sentinel is reached before the final step.
2652
- if ((run.sourceTrigger === 'scheduled' || run.sourceTrigger === 'webhook')
2653
- && run.recurringPark === true) {
2647
+ if (run.recurringPark === true) {
2654
2648
  return { action: 'park', pauseReason: 'parked_recurring' };
2655
2649
  }
2656
2650
  return { action: 'park', pauseReason: 'awaiting_user' };
@@ -161,8 +161,8 @@ exports.PERSONA_CAPABILITY_BUNDLES = {
161
161
  careena: {
162
162
  personaKey: 'careena',
163
163
  bundleId: 'persona-careena-core',
164
- catalogMetadata: buildCatalogMetadata('careena', ['career-spec', 'resume-creation', 'job-application-execution']),
165
- protectedJobs: ['career-spec', 'job-application-execution', 'resume-creation', 'public-profile-updates', 'career-trajectory-planning', 'pitch-and-interview-prep', 'career-networking', 'offer-negotiation', 'resilience-planning'],
164
+ catalogMetadata: buildCatalogMetadata('careena', ['career-spec', 'resume-creation', 'job-search-strategy-and-application-plan']),
165
+ protectedJobs: ['career-spec', 'job-search-strategy-and-application-plan', 'job-applications-and-networking', 'resume-creation', 'public-profile-updates', 'career-trajectory-planning', 'pitch-and-interview-prep', 'career-networking', 'offer-negotiation', 'resilience-planning'],
166
166
  protectedAliases: ['career', 'career-coach', 'job-search'],
167
167
  defaultHireMode: 'job',
168
168
  lockCopy: 'Hire CAREEna to unlock job-search execution, interview prep, and career coaching for this request.'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fraim-hub",
3
- "version": "2.0.303",
3
+ "version": "2.0.304",
4
4
  "description": "FRAIM Hub local companion package.",
5
5
  "author": "Sid Mathur <sid.mathur@gmail.com>",
6
6
  "homepage": "https://github.com/mathursrus/FRAIM#readme",
@@ -211,7 +211,7 @@
211
211
  "electron-updater": "^6.8.9",
212
212
  "express": "^5.2.1",
213
213
  "extract-zip": "^2.0.1",
214
- "fraim": "2.0.303",
214
+ "fraim": "2.0.304",
215
215
  "mongodb": "^7.0.0",
216
216
  "node-cron": "4.2.1",
217
217
  "node-edge-tts": "^1.2.10",