The addhistory hook previously had two bugs when inc_append_history
or share_history was not set:
1. Commands were only saved to one history file (HISTFILE or per-dir)
depending on when fc -AI was called, resulting in lost history.
2. fc -p was called unconditionally after every command, corrupting
the zsh history stack even in global mode. This caused the per-dir
hook to push a new history frame on every command, breaking the
global history state.
Fix: always write both history files via fc -AI before any mode
check, and only call fc -p (to push into per-directory history)
when actually in directory mode.
Signed-off-by: god032396-del <god032396@gmail.com>