feat(think): rebuild pulse as a lite generate on cadence + retire awareness_tender master
Rebuild pulse from a cogitate/schedule:segment tool-loop into a lite generate/schedule:cadence talent — the structural twin of steward. Pulse is now a standing, always-current artifact persisted to the day-jsonl accumulator (chronicle/<day>/talents/pulse.jsonl), serving the home glance and chat situational awareness (incl. mobile cold-open). - New accumulate:true frontmatter flag: _apply_output_persistence skips the single-file write so a generate talent persists only via its post-hook's append_record (output:json + schema stay declared; the JSON schema still reaches the model). Reusable for steward's future migration; covers the schedules that route through _apply_output_persistence (cadence + daily/weekly). - pulse.{md,py,schema.json}: closed 4-field schema (title, one_sentence, full_details, needs_you); pre-hook gathers context in-process (previous record, completed-since window, awareness/anticipated/entities/partner — folding in the deleted awareness_tender's deterministic reads) and degrades gaps without crashing; post-hook normalizes to the closed contract and appends the record. - Readers migrated onto read_latest: home (strict today-gate, lookback_days=0), chat ($situational, default lookback for cold-open), morning briefing. - Fix _load_flow_md: resolve via day_path(today) (was missing chronicle/); documented that flow.md is no longer produced by any talent. - Delete awareness_tender, the journal identity pulse --write / identity awareness verbs, the awareness.md identity-template entry, the pulse/ awareness_tender segment-dispatch blocks, NEVER_SKIP_DAILY, and the now- vestigial recommend.pulse_update (sense.md + sense.schema.json + consumers). - Tests/baselines/docs updated to the new inventory; new coverage for the pulse hooks, the home/chat readers, the accumulate no-single-file guarantee, and the agent=pulse search round-trip. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>