Redact: multi-doc upload, contextual person naming, aliases
- Extract limit raised from 32K to 128K chars per file (long legal docs now fit) - Redact API body/text limits raised (400KB / 128K chars) to match - Upload zone accepts multiple files (up to 5); extracted text concatenated with doc separator and combined before redaction; shows per-file char counts - LLM redact pass now infers contextual person roles (FATHER, MOTHER, CHILD, ATTORNEY, JUDGE, etc.) instead of generic [PERSON] for all names; same individual gets consistent tag throughout the document - Tag validation widened to allow any [A-Za-z0-9_- ] pattern (not just the five hardcoded tags), supporting contextual and alias tags - Alias UI added to Redact mode: user maps real names to bracketed aliases (e.g. "David Jr" -> [Junior]); aliases injected into LLM system prompt as override instructions; max 20 aliases, 100 chars each - max_tokens raised from 2000 to 4000; timeout from 60s to 90s for larger docs Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -219,18 +219,27 @@ $authenticated = dbnToolsIsAuthenticated();
|
||||
</div>
|
||||
|
||||
<div class="upload-zone is-hidden" id="uploadZone" role="region" aria-label="File upload">
|
||||
<input type="file" id="uploadInput" accept=".pdf,.docx,.txt" aria-label="Choose a file">
|
||||
<input type="file" id="uploadInput" multiple accept=".pdf,.docx,.txt" aria-label="Choose files">
|
||||
<div id="uploadPrompt" class="upload-prompt">
|
||||
<span class="upload-icon" aria-hidden="true">⇧</span>
|
||||
<p>Drop a <strong>.pdf</strong>, <strong>.docx</strong>, or <strong>.txt</strong>, or <label for="uploadInput" class="upload-browse">browse</label></p>
|
||||
<p class="upload-hint">Text is extracted and never stored.</p>
|
||||
<p>Drop up to 5 files (<strong>.pdf</strong>, <strong>.docx</strong>, <strong>.txt</strong>), or <label for="uploadInput" class="upload-browse">browse</label></p>
|
||||
<p class="upload-hint">Text is extracted in memory and never stored.</p>
|
||||
</div>
|
||||
<div id="uploadFileInfo" class="upload-file is-hidden">
|
||||
<span id="uploadFileName" class="upload-filename"></span>
|
||||
<button type="button" id="uploadClear" class="upload-clear" aria-label="Clear uploaded file">×</button>
|
||||
<ul id="uploadFileList" class="upload-file-list"></ul>
|
||||
<button type="button" id="uploadClear" class="upload-clear" aria-label="Clear uploaded files">×</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="alias-section is-hidden" id="aliasSection">
|
||||
<div class="alias-header">
|
||||
<span class="control-label">Name aliases</span>
|
||||
<button type="button" id="addAliasRow" class="alias-add-btn">+ Add</button>
|
||||
</div>
|
||||
<div id="aliasRows"></div>
|
||||
<p class="alias-hint">Replace a name with a bracketed alias, e.g. “David Jr” → [Junior]</p>
|
||||
</div>
|
||||
|
||||
<label class="input-label" for="toolInput" id="inputLabel">Question</label>
|
||||
<textarea id="toolInput" name="toolInput" rows="10" required></textarea>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user