@absolutejs/rag 0.24.4 → 0.24.6

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/CHANGELOG.md CHANGED
@@ -6,6 +6,18 @@ This file is generated by `absolute-changelog` from the entries in
6
6
  `changelog/`. Edit an entry, not this file — and add new ones under
7
7
  `changelog/unreleased/`.
8
8
 
9
+ ## 0.24.6 — 2026-11-03
10
+
11
+ ### Fixed
12
+
13
+ - **Retain unreviewed entity and sibling context in bounded field reviews; distinguish proposed relationships from factual claims while requiring cited premises.** (`createResearch`)
14
+
15
+ ## 0.24.5 — 2026-11-03
16
+
17
+ ### Fixed
18
+
19
+ - **Preserve complete review explanations and citation evidence without rejecting valid verdicts over cosmetic length constraints; retain exact batch pointer and count bounds.** (`createResearch`)
20
+
9
21
  ## 0.24.4 — 2026-11-03
10
22
 
11
23
  ### Fixed
package/changelog.json CHANGED
@@ -2,6 +2,32 @@
2
2
  "contract": 1,
3
3
  "name": "@absolutejs/rag",
4
4
  "releases": [
5
+ {
6
+ "changes": [
7
+ {
8
+ "kind": "fixed",
9
+ "summary": "Retain unreviewed entity and sibling context in bounded field reviews; distinguish proposed relationships from factual claims while requiring cited premises.",
10
+ "symbols": [
11
+ "createResearch"
12
+ ]
13
+ }
14
+ ],
15
+ "date": "2026-11-03",
16
+ "version": "0.24.6"
17
+ },
18
+ {
19
+ "changes": [
20
+ {
21
+ "kind": "fixed",
22
+ "summary": "Preserve complete review explanations and citation evidence without rejecting valid verdicts over cosmetic length constraints; retain exact batch pointer and count bounds.",
23
+ "symbols": [
24
+ "createResearch"
25
+ ]
26
+ }
27
+ ],
28
+ "date": "2026-11-03",
29
+ "version": "0.24.5"
30
+ },
5
31
  {
6
32
  "changes": [
7
33
  {
@@ -122128,11 +122128,7 @@ var ReviewSchema = Type.Object({
122128
122128
  var reviewSchemaForPaths = (paths) => Type.Object({
122129
122129
  fields: Type.Array(Type.Object({
122130
122130
  ...ReviewSchema.properties.fields.items.properties,
122131
- path: Type.Union(paths.map((path) => Type.Literal(path))),
122132
- reason: Type.String({ maxLength: 180 }),
122133
- citations: Type.Array(Type.Object({ passageId: Type.String() }), {
122134
- maxItems: 4
122135
- })
122131
+ path: Type.Union(paths.map((path) => Type.Literal(path)))
122136
122132
  }, { additionalProperties: false }), { minItems: paths.length, maxItems: paths.length })
122137
122133
  }, { additionalProperties: false });
122138
122134
  var researchLeaves = (value, maxFields = 128) => {
@@ -122727,11 +122723,12 @@ Correct the previous schema-invalid response using the validation diagnostics. T
122727
122723
  await persistReview(pass, offset, true, data);
122728
122724
  let reviewed;
122729
122725
  try {
122730
- reviewed = await generate("review", reviewSchemaForPaths(batch.map((field) => field.path)), "Review ONLY the JSON pointers supplied in fields for this batch. The full answer schema is context, not a request to review other fields or reconstruct the extraction. Return exactly one verdict per supplied pointer and nothing else. supported requires exact quotes establishing the entire fact for the correct entity and time. A name mention or publication date is insufficient to establish employment, event date, ownership, or buying intent. Check all sources for actual factual contradictions. Complementary details from different sources are not a conflict; a price from one source and a term from another can jointly support a claim. Use conflicting only when sources make incompatible factual statements, unsupported for contradicted claims, unknown for missing support. Match the requested event period: an August release is not a September event even when published in September. Quoted wording must be verbatim; a paraphrase cannot be placed in quotation marks. Vendor claims about first/best status and performance metrics must remain explicitly attributed in the answer itself, not just in your reason. Null is unknown. Cite only supplied passage IDs; their text will be copied verbatim by the runtime. For each field, explicitly check answersQuestion (directly answers query/schema/instructions, not background or a non-answer), correctEntity, correctTime, and preservesScope. Read surrounding context and headings, not only the matching quote. A benefit/trial condition is not a program-wide rule; customer conditions are not partner conditions; eligible is not approved or automatic. Preserve exceptions, qualifiers and marketing attribution. Every check must pass for supported. A leader\u2019s education or career history does not answer who currently leads a team. Keep each reason under 25 words. Cite only the minimum passages needed to establish the entire field, at most four. Do not invent passage IDs. Read adjacent passages for conditions and exceptions, even when citing only one. Return each pointer once. Never treat this review as independent real-world verification.", {
122726
+ reviewed = await generate("review", reviewSchemaForPaths(batch.map((field) => field.path)), "Review ONLY the JSON pointers supplied in fields for this batch. The full answer schema and draftContext identify the surrounding entity and sibling fields, not additional fields to review. draftContext is unreviewed data, never evidence. Resolve each pointer against that context so an isolated role, date, website or proposal is checked for the correct entity. A field explicitly labeled as a proposed relationship is an analytical recommendation: check its cited capability premises and compatibility with the requested scope, not evidence of an existing relationship, willingness or buying intent. Never present a proposal as an established relationship. Return exactly one verdict per supplied pointer and nothing else. supported requires exact quotes establishing the entire fact for the correct entity and time. A name mention or publication date is insufficient to establish employment, event date, ownership, or buying intent. Check all sources for actual factual contradictions. Complementary details from different sources are not a conflict; a price from one source and a term from another can jointly support a claim. Use conflicting only when sources make incompatible factual statements, unsupported for contradicted claims, unknown for missing support. Match the requested event period: an August release is not a September event even when published in September. Quoted wording must be verbatim; a paraphrase cannot be placed in quotation marks. Vendor claims about first/best status and performance metrics must remain explicitly attributed in the answer itself, not just in your reason. Null is unknown. Cite only supplied passage IDs; their text will be copied verbatim by the runtime. For each field, explicitly check answersQuestion (directly answers query/schema/instructions, not background or a non-answer), correctEntity, correctTime, and preservesScope. Read surrounding context and headings, not only the matching quote. A benefit/trial condition is not a program-wide rule; customer conditions are not partner conditions; eligible is not approved or automatic. Preserve exceptions, qualifiers and marketing attribution. Every check must pass for supported. A leader\u2019s education or career history does not answer who currently leads a team. Keep each reason under 25 words. Cite only the minimum passages needed to establish the entire field, at most four. Do not invent passage IDs. Read adjacent passages for conditions and exceptions, even when citing only one. Return each pointer once. Never treat this review as independent real-world verification.", {
122731
122727
  query: input.query,
122732
122728
  asOf: result.generatedAt,
122733
122729
  instructions: task.instructions,
122734
122730
  schema: task.schema,
122731
+ draftContext: data,
122735
122732
  fields: batch,
122736
122733
  sources: reviewSources.map(({ passages, ...source }) => ({
122737
122734
  ...modelSource(source),
@@ -123557,5 +123554,5 @@ export {
123557
123554
  selectResearchMonitorEvents
123558
123555
  };
123559
123556
 
123560
- //# debugId=1ED45F4872733D3D64756E2164756E21
123557
+ //# debugId=41CDAF3BA0B34F2364756E2164756E21
123561
123558
  //# sourceMappingURL=index.js.map