feat: add durable ASR-to-patient extraction and guarded review
This commit is contained in:
@@ -7,6 +7,7 @@ namespace app\command;
|
||||
use app\common\service\followupaudio\FollowupAudioDify;
|
||||
use app\common\service\followupaudio\FollowupAudioException;
|
||||
use app\common\service\followupaudio\FollowupAudioProviderConfig;
|
||||
use app\common\service\followupaudio\FollowupAudioStore;
|
||||
use think\console\Command;
|
||||
use think\console\Input;
|
||||
use think\console\input\Option;
|
||||
@@ -101,6 +102,11 @@ final class FollowupAudioProbe extends Command
|
||||
foreach (['stage', 'upstream_started_at', 'upstream_file_id', 'upstream_run_id', 'upstream_ids_json'] as $field) {
|
||||
if (array_key_exists($field, $fields)) { $report['cases'][$case][$field] = $fields[$field]; }
|
||||
}
|
||||
if (isset($fields['pipeline_checkpoint'])) {
|
||||
// Even synthetic two-stage probes must durably retain their stage outcomes before more I/O.
|
||||
// Keep plaintext transcript/answers out of the JSON report and console.
|
||||
$report['cases'][$case]['pipeline_cipher'] = FollowupAudioStore::seal(0, 'probe-' . $case, $fields['pipeline_checkpoint']['state']);
|
||||
}
|
||||
self::save($reportPath, $report);
|
||||
return true;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user