@gafj/gafj 0.1.7 → 0.1.8

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.
@@ -22,7 +22,8 @@ function checkUrl(url) {
22
22
  return u.toString();
23
23
  }
24
24
 
25
- async function post(fetchImpl, url, headers, body, timeoutMs = 120000) {
25
+ // a long resume with a span for every quoted phrase can take a model several minutes; the key test passes its own short limit
26
+ async function post(fetchImpl, url, headers, body, timeoutMs = 600000) {
26
27
  const f = fetchImpl || globalThis.fetch;
27
28
  const ac = new AbortController();
28
29
  const t = setTimeout(() => ac.abort(), timeoutMs);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gafj/gafj",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "GAF-J: a local campaign engine for job search. One SQLite file, one ingest door, your own AI subscription.",
5
5
  "homepage": "https://gaf-j.com",
6
6
  "repository": {
package/ui/screens/kb.js CHANGED
@@ -52,7 +52,7 @@ export function Onboarding({ d, reload, setErr, route, compact }) {
52
52
  const groups = b ? b.groups.map((g) => ({ id: g, rows: b.pending.filter((p) => p.dedup_group_id === g) })) : [];
53
53
  return html`<div class="card">
54
54
  <div class="row"><input type="file" multiple accept=".docx,.pdf,.md,.txt" disabled=${busy} onChange=${upload} /><span class="small muted">docx, pdf, md, txt; text is extracted locally, no OCR</span></div>
55
- ${direct && notYet > 1 ? html`<div class="row"><button class="primary" disabled=${!!all} onClick=${extractAll}>${all ? "Extracting " + all : `Extract all ${notYet} files`}</button><span class="small muted">one after another through your AI; a few seconds each</span></div>` : ""}
55
+ ${direct && notYet > 1 ? html`<div class="row"><button class="primary" disabled=${!!all} onClick=${extractAll}>${all ? "Extracting " + all : `Extract all ${notYet} files`}</button><span class="small muted">one after another through your AI; one to three minutes each for a full resume</span></div>` : ""}
56
56
  ${!direct && notYet > 1 ? html`<p class="small muted">On the paste route each file is one packet you carry to your chat and back; with a provider key in Settings the whole pile runs in one click.</p>` : ""}
57
57
  ${b ? html`<ul class="list">${b.sources.map((s) => html`<li key=${s.source_document_id}><b>${s.filename}</b> <span class="tag">${s.kind}</span>
58
58
  ${s.empty ? html`<span class="tag blocked">no text</span>` : html`<span class="muted small">${s.chars} chars</span>`}