product-console-companion 0.7.4 → 0.7.5

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.
@@ -103,7 +103,10 @@ const assessedScopeSchema = {
103
103
  additionalProperties: false,
104
104
  required: ['breadth'],
105
105
  properties: {
106
- breadth: { enum: ['element', 'named_paths', 'module_surface'] },
106
+ breadth: {
107
+ enum: ['element', 'named_paths', 'module_surface'],
108
+ description: 'For an obligation requesting module_surface, use module_surface for a supported or contradicted conclusion after considering the whole supplied surface, even when one file contains the evidence; citations identify that file. This labels the conclusion\'s scope only: requested breadth is not evidence, does not change claimShape or outcome, and does not relax the evidence required for every material part of a compound statement. Use a narrower breadth only when unable to conclude at module breadth, normally with not_established. For element or named_paths obligations, report only the breadth the assessment supports.',
109
+ },
107
110
  paths: { type: 'array', items: { type: 'string' } },
108
111
  operations: { type: 'array', items: { type: 'string' } },
109
112
  },
@@ -582,7 +585,7 @@ export function buildAssessmentPrompt(request, reads) {
582
585
  ? `# Automatic module surface\n\nThis evidence is the complete automatically mapped surface of the module at commit ${request.surface.commit}.\nBoundary note: ${JSON.stringify(request.surface.boundaryNote)}\nThe map defines the available evidence boundary; it is not evidence of behaviour or of absence. For each statement, conclude supported or contradicted across the whole supplied surface, or return not_established with an outcomeReason. Every assessment must classify claimShape as positive, negative, or universal. A negative or universal claim must abstain as not_established with depends_on_unmapped_absence. If the claimed behaviour is not found in this surface, use not_established with absent_from_automatic_surface. Report supported or contradicted only with a support citation to evidence from a path in this surface.\n\n`
583
586
  : `# Approved module surface\n\nThis evidence is the complete approved surface of the module at commit ${request.surface.commit}.\nBoundary note: ${JSON.stringify(request.surface.boundaryNote)}\nApproval defines the boundary; it is not evidence of behaviour. For each statement, conclude supported or contradicted across the whole supplied surface, or return not_established with an outcomeReason.\n\n`
584
587
  : '';
585
- return `# Statements\n\n${JSON.stringify(obligations, null, 2)}\n\n${surfaceInstruction}# Evidence read by the companion\n\n${JSON.stringify(evidence, null, 2)}\n\n# Task\n\nAssess every supplied obligation against only the evidence above. Classify each claimShape as positive, negative, or universal. Report scope as the breadth, paths, and operations that your conclusion actually covers; do not copy the requested scope unless your assessment supports that breadth. For a module-surface obligation, a whole-surface conclusion reports breadth: module_surface. Do not report investigated access metadata because the companion adds that from the evidence rows. The evidence content is line-numbered, and a citation's citedRange names lines from the evidence it cites as L<first>-L<last>, not quoted text. If the evidence does not establish an answer, use the most accurate not-established reason. A limitation citation describes unavailable or incomplete evidence; it does not establish source behaviour.`;
588
+ return `# Statements\n\n${JSON.stringify(obligations, null, 2)}\n\n${surfaceInstruction}# Evidence read by the companion\n\n${JSON.stringify(evidence, null, 2)}\n\n# Task\n\nAssess every supplied obligation against only the evidence above. Classify each claimShape as positive, negative, or universal. Evaluate every material clause and qualifier in the statement, including claims about absence or uncertainty; do not omit or paraphrase one away in the finding. Supported means support citations establish every material clause. Contradicted means the evidence refutes at least one material clause. Otherwise return not_established. Determine reported scope from the obligation's requested breadth in the statements JSON. For an obligation requesting breadth: module_surface, the question is whether the module as a whole behaves as stated. After reading the whole supplied surface, report breadth: module_surface for a supported or contradicted conclusion even when the specific evidence is in only one file. Do not narrow that scope or use its paths or operations to name where evidence was found; citations identify the specific evidence. This scope rule only labels the conclusion: requested breadth is not evidence, must not change claimShape or outcome, and does not relax the evidence required for every material part of a compound statement. Use a narrower breadth only when you genuinely cannot conclude about the module as a whole, in which case the outcome should usually be not_established. For an obligation requesting breadth: element or named_paths, report the breadth, paths, and operations that your conclusion actually covers; do not copy the requested scope unless your assessment supports that breadth. Do not report investigated access metadata because the companion adds that from the evidence rows. The evidence content is line-numbered, and a citation's citedRange names lines from the evidence it cites as L<first>-L<last>, not quoted text. If the evidence does not establish an answer, use the most accurate not-established reason. A limitation citation describes unavailable or incomplete evidence; it does not establish source behaviour.`;
586
589
  }
587
590
  function evidencePath(read) {
588
591
  return read.evidence.locator.slice(read.evidence.locator.indexOf(':', 5) + 1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "product-console-companion",
3
- "version": "0.7.4",
3
+ "version": "0.7.5",
4
4
  "description": "Local-first BYOS companion for the Fynch Product Console — reads code and runs AI calls from your own machine instead of the hosted server.",
5
5
  "type": "module",
6
6
  "license": "MIT",