O ponto 1 é onde eu bati de frente. Pedir resumo pra um contexto saturado é o problema em si, então acabei atacando pelo outro lado: avisar antes da saturação.
Aqui um hook roda a cada prompt e calcula a porcentagem de contexto usada direto do transcript. Passando de 60%, avisa. Uma vez só, com três linhas junto: plano ativo, fase atual, última decisão. E quando a compactação acontece de fato, quem escreve o state não é o contexto saturado, é uma chamada separada que lê o transcript inteiro e preenche dez seções fixas.
Tá aqui, MIT, derivado do compact-plus do u-ichi: github.com/kenimo49/compact-ops (preso ao Claude Code, então numa camada bem diferente do pactx).