feat(action-brain): atlas replacement for pre-rebase health/ingest PR #4 (GIT-48)#11
feat(action-brain): atlas replacement for pre-rebase health/ingest PR #4 (GIT-48)#11ab0991-oss wants to merge 12 commits intomasterfrom
Conversation
|
Addressed Staff structural findings from GIT-1046 re-review. Implemented:
Validation:
Embedded 20 chunks across 20 pages 1/5 pages, 1 chunks embedded Embedded 5 chunks across 5 pages 1/2 pages, 0 chunks embedded Embedded 1 chunks across 2 pages |
|
Follow-up after Staff structural review findings. Implemented and pushed fixes on this replacement branch head (
Verification run:
Skills evidence: |
… (v0.10.2) Adds src/action-brain/ingest-runner.ts — cron-ready auto-ingest pipeline that reads new wacli messages, runs LLM extraction, and stores results. Checkpoint-aware: skips already-processed messages. Staleness gate bails if wacli data is older than --stale-after-hours (default 24h). Also: - action_engine: createItemWithResult() returns idempotency signal - extractor: owner context injection for better extraction accuracy - operations: action_brief reads checkpoint automatically; action_ingest_auto operation wires preflight + collect + extract + store in one call - cli: `gbrain action run` command (checkpoint-path, stale-after-hours, wacli-limit flags) Closes GIT-47. Co-Authored-By: Paperclip <noreply@paperclip.ing>
Co-Authored-By: Paperclip <noreply@paperclip.ing>
Co-Authored-By: Paperclip <noreply@paperclip.ing>
…rmalization Adds stabilizeCommitments() pipeline step to extractCommitments() so LLM output gets message-grounded actor/source IDs on every extraction run. Adds 295-line test suite covering actor reassignment, entity normalization, and edge cases for the new stabilization path. Co-Authored-By: Paperclip <noreply@paperclip.ing>
- Add clarifying comment to resolveSourceMessage() explaining the intentional single-message LLM source_message_id fallback behavior - Add comment to parseOptionalDate() explaining the intentional throw-on-bad-date safety gate (prevents checkpoint advancement on bad LLM output) - Add comment to shouldPersistCheckpoint explaining the checkpoint write guard - Add comment marking unreachable return [] in extractor retry loop - Update CLAUDE.md extractor description: "two-tier Haiku→Sonnet" → accurate description (Sonnet default; quality gate uses Haiku→Sonnet escalation) Co-Authored-By: Paperclip <noreply@paperclip.ing>
… quality gate test - Update CHANGELOG v0.10.2 release date to 2026-04-17 - Forward ownerName/ownerAliases/retryCount/throwOnError into quality gate extractor calls - Add quality gate owner context test (65 tests pass) - Expand e2e-live-validation.ts matcher with alias + type handling - Add e2e-live-validation-metrics.test.ts for matchCommitment unit tests - Add P2 TODOs: shared utils refactor + N+1 fix (identified in pre-landing review) Co-Authored-By: Paperclip <noreply@paperclip.ing>
Co-Authored-By: Paperclip <noreply@paperclip.ing>
…terpolation Strips newlines, control chars, and enforces length caps (name: 100, alias: 50, max 10 aliases) to prevent prompt injection via MCP-supplied owner context params. Adds maxLength/maxItems to the MCP schema for early validation. Co-Authored-By: Paperclip <noreply@paperclip.ing>
…, fix alias truncation - Expand sanitizeOwnerString to strip U+0000–U+001F (full control-char set, not just \r\n\0) - Accept maxLen param so alias sanitization uses MAX_ALIAS_LEN directly, eliminating double-truncation - Align owner_name schema maxLength to 100 (was 200, mismatch with runtime constant) - Fix authorise normalizer regex to use callback replacement, avoiding undefined backreference for bare suffix-less form Co-Authored-By: Paperclip <noreply@paperclip.ing>
0631ee6 to
72080c8
Compare
Replacement PR for pre-rebase branch
staff/git-48-wacli-health-checks(#4) per GIT-1046 audit.atlas/git-48-fixThis avoids rewriting the original staff branches and carries forward the atlas remediation branch for review against current master.