Recall currently injects full entity bodies into prompt context. That does not scale.
This should move to a two-step model across Codex, Claude, and Bob:
- emit a minimal manifest of available entities
- expand full files only when they are relevant
Manifest v1
Each entry should contain only:
Example:
{
"path": ".evolve/entities/guideline/use-context-managers-for-file-operations.md",
"type": "guideline",
"trigger": "When processing files or managing resources"
}
Assume trigger is always present in v1.
Scope
- add a shared frontmatter-only manifest loader in the common entity I/O layer
- switch Codex, Claude, and Bob recall from full-body injection to manifest-first recall
- keep harness-specific recall behavior separate, while sharing the same manifest data
- dedupe entries before output with deterministic ordering
Non-goals
- embeddings
- fuzzy/semantic dedupe
- extra manifest fields like visibility, source, or slug
Acceptance criteria
- Codex, Claude, and Bob no longer inject full entity bodies by default
- manifest entries contain only path, type, and trigger
- manifest output is deterministic
- duplicates are collapsed before output
- relevant full entity files can still be expanded on demand
cc: @jayaramkr @vinodmut
Recall currently injects full entity bodies into prompt context. That does not scale.
This should move to a two-step model across Codex, Claude, and Bob:
Manifest v1
Each entry should contain only:
Example:
{
"path": ".evolve/entities/guideline/use-context-managers-for-file-operations.md",
"type": "guideline",
"trigger": "When processing files or managing resources"
}
Assume trigger is always present in v1.
Scope
Non-goals
Acceptance criteria
cc: @jayaramkr @vinodmut