The terminal and history pagination both treated the model-visible surface as the human transcript. A landed compaction replacement therefore erased the conversation it summarized — messages the reader had already seen — and a model-only replacement copy consumed a page's `maxMessages` quota, which could also split a compaction's provenance from the replacement citing it. `dsh-session` now exports the marker split `isAppendSurfaceEvent` / `isReplacementSurfaceEvent`. The terminal replays append-origin surface events, keeps a shadowed step's tool cards paired through its append-origin assistant message, and renders one dim marker where a compaction landed; the checkpoint is recognized through the compaction seam's `isCompactCheckpointSource` contract, not the shape of the replacement. `session.history` counts only append-origin human messages. Everything model-facing keeps reading `session.surface`.
70 lines
1.1 KiB
JSON
70 lines
1.1 KiB
JSON
{
|
|
"extends": "../../../tsconfig.base.json",
|
|
"compilerOptions": {
|
|
"rootDir": "src",
|
|
"outDir": "lib/types"
|
|
},
|
|
"include": [
|
|
"src"
|
|
],
|
|
"references": [
|
|
{
|
|
"path": "../../../vendor/cordis"
|
|
},
|
|
{
|
|
"path": "../../../vendor/schemastery"
|
|
},
|
|
{
|
|
"path": "../../core/agent"
|
|
},
|
|
{
|
|
"path": "../../core/agent-loop"
|
|
},
|
|
{
|
|
"path": "../../goal/goal"
|
|
},
|
|
{
|
|
"path": "../../core/session"
|
|
},
|
|
{
|
|
"path": "../../context/session-reference"
|
|
},
|
|
{
|
|
"path": "../../session-persistence/session-persistence"
|
|
},
|
|
{
|
|
"path": "../../session-query/session-query"
|
|
},
|
|
{
|
|
"path": "../../session-title/session-title"
|
|
},
|
|
{
|
|
"path": "../../llm/llm"
|
|
},
|
|
{
|
|
"path": "../../llm/token-meter"
|
|
},
|
|
{
|
|
"path": "../../llm/llm-retry"
|
|
},
|
|
{
|
|
"path": "../../core/tools"
|
|
},
|
|
{
|
|
"path": "../commands"
|
|
},
|
|
{
|
|
"path": "../../compact/compact"
|
|
},
|
|
{
|
|
"path": "../../skill/skill"
|
|
},
|
|
{
|
|
"path": "../user-interaction"
|
|
},
|
|
{
|
|
"path": "../../support/invariants"
|
|
}
|
|
]
|
|
}
|