Skip to content

Merge/feat context spine embeddings#34

Merged
mrhpython merged 53 commits intomainfrom
merge/feat-context-spine-embeddings
Sep 24, 2025
Merged

Merge/feat context spine embeddings#34
mrhpython merged 53 commits intomainfrom
merge/feat-context-spine-embeddings

Conversation

@mrhpython
Copy link
Copy Markdown
Owner

Summary

Describe the change in one or two sentences.

Checklist (Truth Kernel)

  • Local: npm ci
  • Local: node backend/scripts/audit-truth.cjs (no violations)
  • Local: npm test (Node’s built-in runner)
  • Docs updated if behavior changes (README / STATUS / Knowledge)

Notes

Link to related specs, runs, or artifacts if relevant.

Michael added 30 commits September 10, 2025 02:07
Includes:
- feat/soulfield-user-services
- feat/e2e-demo
- fix/newelle-launcher

Summary:
- Add systemd user services + docs
- Add E2E demo script + doc (research→spec→dry→apply)
- Add Newelle launcher + troubleshooting; fix Anthropic headers
…dar with all-day + window), provider-agnostic local embeddings (MiniLM) with OpenAI fallback, Pinecone adapter refactor, CLI context tools, health endpoint, retention + pruning + backfill, and docs updates
…brain-dump analysis) + CLI harness; store under .chatgpt; add smoke tests
…en-memory) under NOTES_DIR; add JSON placeholders; route personal tools via NOTES_DIR; docs updated
…y, Q3-2025 quarterly, 2025 annual; refresh indexes
Michael and others added 22 commits September 15, 2025 02:44
…ge, Obsidian buttons, multi-base docs; add .gitignore for local artifacts
- Fixed merge conflict markers in package.json
- Regenerated clean package-lock.json with npm install
- All dependencies properly resolved without conflicts
@mrhpython mrhpython merged commit c2e4700 into main Sep 24, 2025
3 checks passed
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting

Comment on lines +1 to +5
from __future__ import absolute_import

import errno
import logging
import re
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[P1] Stop committing virtualenv packages

The change introduces the entire .venv directory into version control (see pip/_vendor/urllib3/connectionpool.py). Those files are generated artifacts of a local Python environment and already reproducible from requirements.txt. Keeping them checked in will bloat the repository by thousands of files, vary per developer OS, and make future diffs and merges noisy. These should be removed and .venv added to .gitignore so only source code is tracked.

Useful? React with 👍 / 👎.

Comment thread backend/council.js
Comment on lines 65 to +71
async function callClaude(system, user){
if (process.env.DEV_NO_API === "1") return "(dev offline)";
const model = process.env.AIDEN_MODEL || "claude-opus-4.1-20250805";

const r = await axios.post(
"https://api.anthropic.com/v1/messages",
{
model,
max_tokens: 800,
temperature: 0.2,
system: String(system || ""), // ✅ Claude-compatible top-level field
messages: [
{ role: "user", content: String(user || "") }
]
},
{
headers: {
"x-api-key": process.env.CLAUDE_API_KEY,
"anthropic-version": "2023-06-01"

const apiKey = process.env.ANTHROPIC_API_KEY || process.env.CLAUDE_API_KEY;
if (!apiKey) {
throw new Error("Missing ANTHROPIC_API_KEY (or CLAUDE_API_KEY) in environment variables");
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[P1] Council no longer loads .env when invoked directly

callClaude now throws when ANTHROPIC_API_KEY/CLAUDE_API_KEY is undefined, but council.js no longer invokes require('dotenv').config(). Any script that imports this module directly (e.g. backend/tests/test-council.js) will now immediately throw “Missing ANTHROPIC_API_KEY” unless the caller pre-loads the environment file, which is a regression from the previous behaviour where council.js loaded .env itself. Restore the dotenv initialisation or guard the missing key before raising so standalone usage still works.

Useful? React with 👍 / 👎.

mrhpython added a commit that referenced this pull request Oct 22, 2025
* merge(main): squash integration of 3 branches

Includes:
- feat/soulfield-user-services
- feat/e2e-demo
- fix/newelle-launcher

Summary:
- Add systemd user services + docs
- Add E2E demo script + doc (research→spec→dry→apply)
- Add Newelle launcher + troubleshooting; fix Anthropic headers

* feat(context,embeddings): add Context Spine (heartbeat + Google Calendar with all-day + window), provider-agnostic local embeddings (MiniLM) with OpenAI fallback, Pinecone adapter refactor, CLI context tools, health endpoint, retention + pruning + backfill, and docs updates

* feat: add ChatGPT command suite (weekly/daily/checkins, daily brief, brain-dump analysis) + CLI harness; store under .chatgpt; add smoke tests

* docs: add usage docs for personal command suite; update command pages with usage; update sf-help

* feat(obsidian): add vault structure (notes, plans, docs, history, aiden-memory) under NOTES_DIR; add JSON placeholders; route personal tools via NOTES_DIR; docs updated

* obsidian: sync vault changes

* chore: add .gitignore for Obsidian vault (ignore workspace state, keep plugins)

* docs: add Obsidian Git quick-setup guide

* obsidian(test): add test note

* chore(obsidian): ignore UI state (.obsidian/*) and untrack workspace/app/appearance/graph

* docs: integrate Project Memory + add Codex-Prompts for vault ops

* docs: populate Project Memory, link templates, add folder indexes

* docs: replace Project Memory placeholder with real content; refresh indexes

* docs(reviews): seed 2025-09-14 daily, 2025-W37 weekly, 2025-09 monthly, Q3-2025 quarterly, 2025 annual; refresh indexes

* docs(reviews): populate from templates, backfill last 7 dailies, wire weekly/monthly links, refresh indexes

* chore(automation): add obsidian note maker + systemd timers (daily/weekly/monthly/quarterly/annual)

* docs(auto): daily note 2025-09-15; ensure cross-links

* docs(auto): weekly note 2025-W38; ensure cross-links

* docs(auto): monthly note 2025-09; ensure cross-links

* chore(automation): serialize git ops with flock to avoid index.lock

* chore(ops): add vault health check + Makefile shortcuts; weekly health timer

* history: log 2025-09-15 vault build session (automation + timers + health)

* docs(memory): add Recent History links to Project Memory

* chore(health): log automated health snapshot 2025-09-15

* docs(release): add v0.1.0 release notes

* docs(recipes): add Aiden/Pinecone query recipes

* docs(tools): move Query Recipes into tools/; link from Project Memory

* docs(tools): add README for tools/ section

* docs(tasks+history): add Tasks Dashboard and History Timeline; link from Project Memory

* chore(history): switch to History-Timeline.md and update link

* docs(seo): add 2025 SEO Blueprint reference and link from funnel

* docs(seo): add operational plan stub (seo-strategy.md)

* docs(learning): add Learning index and wire into Project Memory

* docs(learning): add Learning index with categories and link from Project Memory

* docs(learning): seed Learning hub with index + auto-tagged placeholders

* chore(learning): add brain-dump sorter to auto-file references

* docs(codex): consolidate vault ops prompts (YAML/tags/learning/history/embeddings/watcher)

* docs(auto): daily note 2025-09-16; ensure cross-links

* docs(auto): daily note 2025-09-17; ensure cross-links

* docs(auto): daily note 2025-09-18; ensure cross-links

* docs(auto): daily note 2025-09-19; ensure cross-links

* docs(auto): daily note 2025-09-20; ensure cross-links

* docs(auto): daily note 2025-09-21; ensure cross-links

* feat(usage+ops): log Anthropic API usage, add !usage-daily + live gauge, Obsidian buttons, multi-base docs; add .gitignore for local artifacts

* chore(git): drop Obsidian UI state from repo; ignore nested .obsidian/**

* chore(git): untrack Excalidraw snapshot (ignored)

* docs(auto): daily note 2025-09-22; ensure cross-links

* docs(auto): weekly note 2025-W39; ensure cross-links

* docs(obsidian): restore vault pages without secrets

* fix: resolve merge conflicts in package files and regenerate lockfile

- Fixed merge conflict markers in package.json
- Regenerated clean package-lock.json with npm install
- All dependencies properly resolved without conflicts

* docs(auto): daily note 2025-09-24; ensure cross-links

---------

Co-authored-by: Michael <michael@localhost>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant