The Problem
The pai-hook-system pack is missing src/lib/observability.ts that its own README, INSTALL.md, and VERIFY.md all reference. The install wizard expects this file in src/lib/ but it's not there.
Additionally, the README references the retired pai-history-system instead of the new MEMORY system in pai-core-install, and one hook (initialize-session.ts) still creates old-style history/ directories.
What's Missing
| File |
Expected Location |
Status |
Used By |
observability.ts |
src/lib/ |
❌ MISSING |
initialize-session.ts, security-validator.ts |
Design note: This is a shared library for sending events to observability dashboard. Hooks use it to optionally send data to PAI_OBSERVABILITY_URL. It's designed for graceful degradation - fails silently if dashboard isn't running. With pai-hook-system at install order #1 and pai-observability-server at #9, this library allows hooks to integrate with dashboard without hard dependency.
Evidence
From README.md:
- Line 34: "Observability lib |
src/lib/observability.ts | Event logging and dashboard integration"
- Line 79: Architecture shows
lib/observability.ts in the tree
- Line 271: Changelog states "One lib file: observability"
From INSTALL.md line 250:
cp "$PACK_DIR/src/lib/observability.ts" "$PAI_DIR/hooks/lib/"
From VERIFY.md:
- Line 15: Says ls should show "observability.ts"
- Line 76: Checks
$PAI_DIR/hooks/lib/observability.ts exists
- Line 105: Expects ~1500 bytes for that file
From src/initialize-session.ts line 8:
import { sendEventToObservability, getCurrentTimestamp, getSourceApp } from './lib/observability';
This import will fail because the file doesn't exist.
Actual src/ Contents
src/
├── initialize-session.ts ✓
├── load-core-context.ts ✓
├── security-validator.ts ✓
├── update-tab-titles.ts ✓
└── lib/ (directory doesn't exist)
Where It Went
File existed in Packs/kai-hook-system/src/lib/observability.ts before reorganization, got deleted during migration to v2.0.
Recovered from Git History
The file was found in git history at commit 1c34d06 (v2.0 migration, before kai→pai rebrand).
src/lib/observability.ts
View at commit: https://github.com/danielmiessler/Personal_AI_Infrastructure/blob/1c34d06/Packs/kai-hook-system/src/lib/observability.ts
Content summary: 63 lines, provides sendEventToObservability(), getCurrentTimestamp(), and getSourceApp() functions.
Additional Issues
1. Outdated Dependency Reference
README.md line 262:
- **pai-history-system** - Uses hooks for capturing session work and learnings
pai-history-system was retired in v2.1.1 (#372). MEMORY system now lives in pai-core-install. Should update to reference the new system.
2. Old history/ Directory Structure
src/initialize-session.ts lines 99-104:
const requiredDirs = [
join(paiDir, 'hooks', 'lib'),
join(paiDir, 'history', 'sessions'), // old structure
join(paiDir, 'history', 'learnings'), // old structure
join(paiDir, 'history', 'research'), // old structure
];
Creates old-style history/ directories. With v2.1.1, MEMORY uses different structure in skills/CORE/USER/MEMORY.md and skills/CORE/SYSTEM/MEMORYSYSTEM.md. Need to verify if these directories are still needed.
Impact
Installation fails:
- Step 4.3 in INSTALL.md can't copy
src/lib/observability.ts
- Hook
initialize-session.ts will crash on import at runtime
- Any hook using observability functions won't work
Outdated docs:
- Users might try to install retired
pai-history-system
- Old directory structure may conflict with new MEMORY system
Suggested Fix
- Add
src/lib/observability.ts back to the pack (copy from commit 1c34d06)
- Update README.md line 262 to reference MEMORY in
pai-core-install instead of pai-history-system
- Verify
history/ directories - remove or update if not compatible with PAI 2.1.1 MEMORY system
Version
- Pack: pai-hook-system
- Version: 1.0.0
- Pack ID: danielmiessler-pai-hook-system-core-v1.0.0
The Problem
The
pai-hook-systempack is missingsrc/lib/observability.tsthat its own README, INSTALL.md, and VERIFY.md all reference. The install wizard expects this file insrc/lib/but it's not there.Additionally, the README references the retired
pai-history-systeminstead of the new MEMORY system inpai-core-install, and one hook (initialize-session.ts) still creates old-stylehistory/directories.What's Missing
observability.tssrc/lib/initialize-session.ts,security-validator.tsDesign note: This is a shared library for sending events to observability dashboard. Hooks use it to optionally send data to
PAI_OBSERVABILITY_URL. It's designed for graceful degradation - fails silently if dashboard isn't running. With pai-hook-system at install order #1 and pai-observability-server at #9, this library allows hooks to integrate with dashboard without hard dependency.Evidence
From README.md:
src/lib/observability.ts| Event logging and dashboard integration"lib/observability.tsin the treeFrom INSTALL.md line 250:
From VERIFY.md:
$PAI_DIR/hooks/lib/observability.tsexistsFrom
src/initialize-session.tsline 8:This import will fail because the file doesn't exist.
Actual
src/ContentsWhere It Went
File existed in
Packs/kai-hook-system/src/lib/observability.tsbefore reorganization, got deleted during migration to v2.0.Recovered from Git History
The file was found in git history at commit
1c34d06(v2.0 migration, before kai→pai rebrand).src/lib/observability.tsView at commit: https://github.com/danielmiessler/Personal_AI_Infrastructure/blob/1c34d06/Packs/kai-hook-system/src/lib/observability.ts
Content summary: 63 lines, provides
sendEventToObservability(),getCurrentTimestamp(), andgetSourceApp()functions.Additional Issues
1. Outdated Dependency Reference
README.md line 262:
pai-history-systemwas retired in v2.1.1 (#372). MEMORY system now lives inpai-core-install. Should update to reference the new system.2. Old
history/Directory Structuresrc/initialize-session.tslines 99-104:Creates old-style
history/directories. With v2.1.1, MEMORY uses different structure inskills/CORE/USER/MEMORY.mdandskills/CORE/SYSTEM/MEMORYSYSTEM.md. Need to verify if these directories are still needed.Impact
Installation fails:
src/lib/observability.tsinitialize-session.tswill crash on import at runtimeOutdated docs:
pai-history-systemSuggested Fix
src/lib/observability.tsback to the pack (copy from commit 1c34d06)pai-core-installinstead ofpai-history-systemhistory/directories - remove or update if not compatible with PAI 2.1.1 MEMORY systemVersion