@mantra-ai/core 0.7.1 → 0.7.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/ai/claude/client.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAcD,MAAM,MAAM,eAAe,GACvB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,eAAe,CAAC,CA0E1B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/ai/claude/client.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAcD,MAAM,MAAM,eAAe,GACvB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,eAAe,CAAC,CA2E1B"}
@@ -10,6 +10,7 @@ export async function runClaudeCli(prompt, opts) {
10
10
  const timeout = opts?.timeout ?? 300_000;
11
11
  const args = [
12
12
  "-p",
13
+ "--dangerously-skip-permissions",
13
14
  "--output-format", "json",
14
15
  "--model", model,
15
16
  "--max-turns", String(opts?.maxTurns ?? 1),
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/ai/claude/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/ai/claude/client.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export async function fetchBiorxivSourceXmlViaApi(idOrDoi, opts) {
25
25
  const core = normPreprintCore(idOrDoi, "biorxiv");
26
26
  const landingUrl = `https://www.biorxiv.org/content/10.1101/${core}`;
27
27
  DEBUG && console.log("[biorxiv] trying jats url:", jatsUrl);
28
- const userAgent = opts?.UA || "drylab-reveng-api/1.0";
28
+ const userAgent = opts?.UA || "mantra-reveng-api/1.0";
29
29
  // Try 1: explicit XML accept
30
30
  let res = await fetch(jatsUrl, {
31
31
  headers: {
@@ -148,7 +148,7 @@ export function buildBiorxivFullHtmlUrlFromId(idOrDoi) {
148
148
  return `https://www.biorxiv.org/content/10.1101/${core}${v}.full`;
149
149
  }
150
150
  /** Fetch the full HTML via r.jina.ai proxy to bypass origin 403s */
151
- export async function fetchBiorxivFullHtmlViaProxy(idOrDoiWithVersion, UA = "drylab-reveng-api/1.0") {
151
+ export async function fetchBiorxivFullHtmlViaProxy(idOrDoiWithVersion, UA = "mantra-reveng-api/1.0") {
152
152
  const fullUrl = buildBiorxivFullHtmlUrlFromId(idOrDoiWithVersion);
153
153
  if (!fullUrl)
154
154
  return null;
@@ -1,9 +1,9 @@
1
- const UA = process.env.UA || "drylab-reveng-api/1.0";
1
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
2
2
  export async function fetchEpmcJatsByPmcid(pmcid) {
3
3
  const id = pmcid.startsWith("PMC") ? pmcid : `PMC${pmcid}`;
4
4
  const url = `https://www.ebi.ac.uk/europepmc/webservices/rest/${encodeURIComponent(id)}/fullTextXML`;
5
5
  const res = await fetch(url, {
6
- headers: { Accept: "application/xml", "User-Agent": UA || "drylab/1.0" },
6
+ headers: { Accept: "application/xml", "User-Agent": UA || "mantra/1.0" },
7
7
  });
8
8
  if (!res.ok)
9
9
  throw new Error(`Europe PMC fetch failed: ${res.status}`);
@@ -17,7 +17,7 @@ export async function fetchEpmcPmcidByDoi(doi) {
17
17
  const q = `DOI:${doi}`;
18
18
  const url = `https://www.ebi.ac.uk/europepmc/webservices/rest/search?format=json&pageSize=1&query=${encodeURIComponent(q)}`;
19
19
  const res = await fetch(url, {
20
- headers: { Accept: "application/json", "User-Agent": UA || "drylab/1.0" },
20
+ headers: { Accept: "application/json", "User-Agent": UA || "mantra/1.0" },
21
21
  });
22
22
  if (!res.ok)
23
23
  return null;
@@ -50,7 +50,7 @@ const resolveVersion = (ctx) => {
50
50
  };
51
51
  const directFetchStrategy = async (ctx) => {
52
52
  const attempts = [];
53
- const ua = ctx.opts?.UA || "drylab-reveng-api/1.0";
53
+ const ua = ctx.opts?.UA || "mantra-reveng-api/1.0";
54
54
  const browserUA = ua && /^Mozilla\//.test(ua) ? ua : MEDRXIV_BROWSER_UA;
55
55
  const attempt = async (label, overrides) => {
56
56
  try {
@@ -190,7 +190,7 @@ const browserFetchStrategy = async (ctx) => {
190
190
  };
191
191
  };
192
192
  const proxyFetchStrategy = async (ctx) => {
193
- const ua = ctx.opts?.UA || "drylab-reveng-api/1.0";
193
+ const ua = ctx.opts?.UA || "mantra-reveng-api/1.0";
194
194
  const browserUA = ua && /^Mozilla\//.test(ua) ? ua : MEDRXIV_BROWSER_UA;
195
195
  const proxyUrl = `https://r.jina.ai/http://${ctx.jatsUrl.replace(/^https?:\/\//i, "")}`;
196
196
  try {
@@ -323,7 +323,7 @@ export async function fetchMedrxivSourceXmlViaApi(idOrDoi, opts) {
323
323
  async function fetchMedrxivFromConnect(core, version, opts, cookieHeader) {
324
324
  if (!version || !Number.isFinite(version))
325
325
  return null;
326
- const defaultUA = opts?.UA || "drylab-reveng-api/1.0";
326
+ const defaultUA = opts?.UA || "mantra-reveng-api/1.0";
327
327
  const browserUA = defaultUA && /^Mozilla\//.test(defaultUA) ? defaultUA : MEDRXIV_BROWSER_UA;
328
328
  const suffix = `v${version}`;
329
329
  const baseFile = `${core}${suffix}`;
@@ -1,4 +1,4 @@
1
- const UA = process.env.UA || "drylab-reveng-api/1.0";
1
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
2
2
  function journalSlugFromDoi(doi) {
3
3
  // DOI pattern: 10.1371/journal.pone.XXXX
4
4
  const suffix = doi.split("/")[1] || "";
@@ -69,7 +69,7 @@ export async function fetchPlosJatsXml(doi) {
69
69
  const urls = buildPlosXmlUrlCandidates(doi);
70
70
  const headers = {
71
71
  Accept: "application/xml, text/xml;q=0.9, */*;q=0.8",
72
- "User-Agent": UA || "drylab-reveng-api/1.0",
72
+ "User-Agent": UA || "mantra-reveng-api/1.0",
73
73
  };
74
74
  let lastError = undefined;
75
75
  for (const url of urls) {
@@ -135,7 +135,7 @@ export async function fetchPlosSearchDocByDoi(doi) {
135
135
  const url = `${base}?q=${encodeURIComponent(q)}&rows=1&wt=json`;
136
136
  const headers = {
137
137
  Accept: "application/json",
138
- "User-Agent": UA || "drylab-reveng-api/1.0",
138
+ "User-Agent": UA || "mantra-reveng-api/1.0",
139
139
  };
140
140
  const res = await fetchWithRetry(url, { timeoutMs: 15000, headers });
141
141
  const data = (await res.json());
@@ -31,7 +31,7 @@ export function toAbsolutePreprintUrl(u, server) {
31
31
  /**
32
32
  * Fetch the details JSON for a preprint from the API.
33
33
  */
34
- export async function fetchPreprintDetailsJson(idOrDoi, server, UA = "drylab-reveng-api/1.0", debug = false) {
34
+ export async function fetchPreprintDetailsJson(idOrDoi, server, UA = "mantra-reveng-api/1.0", debug = false) {
35
35
  const url = preprintDetailsApiUrl(idOrDoi, server);
36
36
  debug && console.log(`[${server}] details url:`, url);
37
37
  const res = await fetch(url, {
@@ -4,7 +4,7 @@
4
4
  */
5
5
  /**
6
6
  * Minimal paper shape required by serializers.
7
- * Structurally compatible with Paper from @drylab/store.
7
+ * Structurally compatible with Paper from @mantra/store.
8
8
  */
9
9
  export interface ExportablePaper {
10
10
  id: number | string;
@@ -15,7 +15,7 @@ export async function fetchPdfCandidate(candidate, logger) {
15
15
  redirect: "follow",
16
16
  headers: {
17
17
  Accept: "application/pdf",
18
- "User-Agent": "DryLab-RevEng-API/1.0 (PDF-fallback)",
18
+ "User-Agent": "Mantra-RevEng-API/1.0 (PDF-fallback)",
19
19
  },
20
20
  });
21
21
  clearTimeout(timeout);
@@ -1,10 +1,10 @@
1
1
  import { buildAr5ivHtmlUrl, buildArxivAbsUrl, } from "../../sources/arxiv/client";
2
2
  import { isLikelyErrorHtml, isArxivAbsHtml, } from "./shared";
3
- const UA = process.env.UA || "drylab-reveng-api/1.0";
3
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
4
4
  async function fetchArxivHtmlIfAvailable(id, UA) {
5
5
  const headers = {
6
6
  Accept: "text/html,application/xhtml+xml",
7
- "User-Agent": UA || "drylab-reveng-api/1.0",
7
+ "User-Agent": UA || "mantra-reveng-api/1.0",
8
8
  };
9
9
  const absRes = await fetch(`https://arxiv.org/abs/${id}`, { headers });
10
10
  if (!absRes.ok)
@@ -1,6 +1,6 @@
1
1
  import { fetchBiorxivSourceXmlViaApi, buildBiorxivLatestSourceXmlUrlViaApi, fetchBiorxivFullHtmlViaProxy, } from "../../sources/biorxiv/client";
2
2
  import { parseVersionSuffix, extractVersionSuffix, firstFiniteVersion, labelFromVersion, buildBiorxivVersionedId, } from "./shared";
3
- const UA = process.env.UA || "drylab-reveng-api/1.0";
3
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
4
4
  export const biorxivStrategy = {
5
5
  name: "biorxiv-id",
6
6
  matches: (ids) => Boolean(ids.biorxivId),
@@ -1,6 +1,6 @@
1
1
  import { fetchMedrxivSourceXmlViaApi, buildMedrxivLatestSourceXmlUrlViaApi, } from "../../sources/medrxiv/client";
2
2
  import { parseVersionSuffix, extractVersionSuffix, firstFiniteVersion, labelFromVersion, } from "./shared";
3
- const UA = process.env.UA || "drylab-reveng-api/1.0";
3
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
4
4
  export const medrxivStrategy = {
5
5
  name: "medrxiv-id",
6
6
  matches: (ids) => Boolean(ids.medrxivId),
@@ -1,4 +1,4 @@
1
- const UA = process.env.UA || "drylab-reveng-api/1.0";
1
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
2
2
  export const cloneJson = (value) => value === null || value === undefined
3
3
  ? value
4
4
  : JSON.parse(JSON.stringify(value));
@@ -60,7 +60,7 @@ export const isArxivAbsHtml = (html) => /<link\s+rel=["']canonical["']\s+href=["
60
60
  export const fetchTextWithRetries = async (url, accept = "text/html,application/xhtml+xml", tries = 2) => {
61
61
  const headers = {
62
62
  Accept: accept,
63
- "User-Agent": UA || "drylab-reveng-api/1.0",
63
+ "User-Agent": UA || "mantra-reveng-api/1.0",
64
64
  };
65
65
  let lastStatus;
66
66
  let failureReason;
@@ -1,7 +1,7 @@
1
1
  import { fetchBiorxivSourceXmlViaApi, buildBiorxivLatestSourceXmlUrlViaApi, } from "../../sources/biorxiv/client";
2
2
  import { fetchMedrxivSourceXmlViaApi, buildMedrxivLatestSourceXmlUrlViaApi, } from "../../sources/medrxiv/client";
3
3
  import { parseVersionSuffix, extractVersionSuffix, firstFiniteVersion, labelFromVersion, } from "./shared";
4
- const UA = process.env.UA || "drylab-reveng-api/1.0";
4
+ const UA = process.env.UA || "mantra-reveng-api/1.0";
5
5
  export const ten1101FallbackStrategy = {
6
6
  name: "generic-10.1101",
7
7
  matches: (ids) => Boolean(!ids.biorxivId &&
@@ -1,7 +1,7 @@
1
1
  import type { ActionsExternalType, CompleteIds } from "../types";
2
2
  /**
3
3
  * Metadata fields derived from CompleteIds for paper storage.
4
- * Structurally compatible with PaperInsert from @drylab/store
4
+ * Structurally compatible with PaperInsert from @mantra/store
5
5
  * without creating a dependency on the store package.
6
6
  */
7
7
  export interface PaperMetadataFromIds {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mantra-ai/core",
3
- "version": "0.7.1",
3
+ "version": "0.7.3",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",