snipara-companion 3.0.13 → 3.1.0

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/README.md CHANGED
@@ -46,7 +46,10 @@ These commands are useful without hosted Snipara:
46
46
  | `reality-check` | Intent Ledger, Unknown Registry, and verification checks |
47
47
  | `code callers` / `imports` / `neighbors` / `shortest-path` | Structural repo questions from local files |
48
48
  | `workflow start` / `phase-start` / `phase-commit` / `resume` | Agent continuity that survives compaction |
49
+ | `workflow decisions` / `workflow decide` | Local human decision requests and response receipts |
50
+ | `workflow producer-triage` | Ask for human review of unreviewed Producer Loop samples |
49
51
  | `workflow producer-report` | Local Producer Loop adoption and calibration report |
52
+ | `workflow producer-review` | Mark local Producer Loop samples reviewed or rejected |
50
53
  | `context-pack` | Reversible local packs for long logs, diffs, and tool output |
51
54
  | `judgment-card`, `verify`, `lead-plan`, `agent-readiness` | Local review artifacts and delegation contracts |
52
55
  | `intelligence ledger-export` | Structured redacted ledger JSON for replay and review |
@@ -63,7 +66,11 @@ npx -y snipara-companion lead-plan --task "ship auth hardening" --changed-files
63
66
  npx -y snipara-companion lead-plan --from-plan ./project-health-lead-plan.json --reconcile --changed-files src/auth/session.ts
64
67
  npx -y snipara-companion lead-plan --from-plan ./project-health-lead-plan.json --json | jq '.engineeringLeadPlan.executionReceipts'
65
68
  npx -y snipara-companion workflow phase-commit audit --summary "mapped auth impact"
69
+ npx -y snipara-companion workflow producer-triage
70
+ npx -y snipara-companion workflow decisions
71
+ npx -y snipara-companion workflow decide decision-abc123 --choose accept_all --reviewer alice
66
72
  npx -y snipara-companion workflow producer-report
73
+ npx -y snipara-companion workflow producer-review --latest --outcome useful --reviewer alice
67
74
  npx -y snipara-companion handoff --summary "auth impact mapped" --next "run auth tests"
68
75
  ```
69
76
 
@@ -76,10 +83,23 @@ under `.snipara/producer-loop/`. These are local review evidence backed by the
76
83
  redacted Coding Intelligence Ledger, not automatic durable memory, worker
77
84
  execution, calibrated confidence, or server-side attestation. Use
78
85
  `workflow producer-report` to inspect local adoption, reason-code counts, sample
79
- size, invalid artifacts, and calibration caveats before any future hard gate.
86
+ size, reviewed/rejected/unreviewed counts, invalid artifacts, and calibration
87
+ caveats before any future hard gate.
80
88
  The report also recognizes exported PR Answer Pack decision-capture artifacts
81
89
  with producer kind `pr_answer_pack_decision_capture`, so calibration can track
82
90
  more than the workflow producer once those artifacts are present locally.
91
+ Use `workflow producer-review --artifact <path|file|artifactId>` or
92
+ `workflow producer-review --latest` after auditing embedded evidence to move a
93
+ sample from `sample_unreviewed` to `sample_reviewed` or `sample_rejected`.
94
+ For conversational human review, run `workflow producer-triage` to create a
95
+ batched Decision Request V0 artifact, `workflow decisions --json` to give the
96
+ LLM client the exact question/evidence/options to ask, and `workflow decide`
97
+ only after the human answers. Decision requests never resolve by timeout or
98
+ default, and only `workflow decide` applies the existing `producer-review` path.
99
+ Other producers such as `outcome-capture preview --emit-decisions`,
100
+ `workflow decision-producer memory`, and `workflow decision-producer context-risk`
101
+ emit requests with their existing apply paths declared; they do not write
102
+ canonical memory directly.
83
103
 
84
104
  ## Local First, Hosted When Useful
85
105
 
package/dist/index.d.ts CHANGED
@@ -2462,6 +2462,7 @@ interface OutcomeCapturePreviewCommandOptions {
2462
2462
  reason?: string[];
2463
2463
  feedback?: string;
2464
2464
  maxCandidates?: string;
2465
+ emitDecisions?: boolean;
2465
2466
  json?: boolean;
2466
2467
  }
2467
2468
  declare function buildWhyOutcomeCaptureReport(options: WhyOutcomeCaptureOptions): WhyOutcomeCaptureReport;
@@ -2795,6 +2796,7 @@ declare const PRODUCER_LOOP_ARTIFACT_VERSION: "snipara.producer_loop_artifact.v0
2795
2796
  declare const PRODUCER_LOOP_REPORT_VERSION: "snipara.producer_loop_report.v0";
2796
2797
  declare const PRODUCER_LOOP_RELATIVE_DIR: string;
2797
2798
  type ProducerLoopProducerKind = "workflow_phase_commit" | "workflow_final_commit" | "pr_answer_pack_decision_capture";
2799
+ type ProducerLoopSampleReviewStatus = "sample_unreviewed" | "sample_reviewed" | "sample_rejected";
2798
2800
  interface ProducerLoopArtifactWriteResult {
2799
2801
  status: "written" | "error";
2800
2802
  schemaVersion: typeof PRODUCER_LOOP_ARTIFACT_VERSION;
@@ -2820,6 +2822,10 @@ interface ProducerLoopArtifactReportSummary {
2820
2822
  reasonCodes: string[];
2821
2823
  files: string[];
2822
2824
  calibrationStatus?: string;
2825
+ reviewStatus: ProducerLoopSampleReviewStatus;
2826
+ reviewOutcome?: string;
2827
+ reviewedAt?: string;
2828
+ reviewer?: string;
2823
2829
  }
2824
2830
  interface ProducerLoopReport {
2825
2831
  version: typeof PRODUCER_LOOP_REPORT_VERSION;
@@ -2847,7 +2853,11 @@ interface ProducerLoopReport {
2847
2853
  calibration: {
2848
2854
  status: "no_samples" | "insufficient_samples" | "reviewable_sample_set";
2849
2855
  sampleSize: number;
2856
+ reviewedSampleSize: number;
2857
+ rejectedSampleSize: number;
2858
+ unreviewedSampleSize: number;
2850
2859
  minReviewSampleSize: number;
2860
+ reviewOutcomes: Record<string, number>;
2851
2861
  hardGateReady: false;
2852
2862
  notes: string[];
2853
2863
  };