Addresses #903 review feedback from @nehcgs:
- generate_summary() now renders explicit Interaction / Execution /
Environment headers so the paper taxonomy is visible at a glance,
even when no signals fired in a given layer. Quality-driving callouts
(high misalignment rate, looping detected, escalation requested) are
appended after the layer summary as an alerts tail.
- repair_ratio (legacy taxonomy name) renamed to misalignment_ratio
and factored into a single InteractionSignals::misalignment_ratio()
helper so assess_quality and generate_summary share one source of
truth instead of recomputing the same divide twice.
Two new unit tests pin the layer headers and the (sev N) severity
suffix. Parity with the python reference is preserved at the Tier-A
level (per-type counts + overall_quality); only the human-readable
summary string diverges, which the parity comparator already classifies
as Tier-C.
Made-with: Cursor
* adding support for signals
* reducing false positives for signals like positive interaction
* adding docs. Still need to fix the messages list, but waiting on PR #621
* Improve frustration detection: normalize contractions and refine punctuation
* Further refine test cases with longer messages
* minor doc changes
* fixing echo statement for build
* fixing the messages construction and using the trait for signals
* update signals docs
* fixed some minor doc changes
* added more tests and fixed docuemtnation. PR 100% ready
* made fixes based on PR comments
* Optimize latency
1. replace sliding window approach with trigram containment check
2. add code to pre-compute ngrams for patterns
* removed some debug statements to make tests easier to read
* PR comments to make ObservableStreamProcessor accept optonal Vec<Messagges>
* fixed PR comments
---------
Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
Co-authored-by: MeiyuZhong <mariazhong9612@gmail.com>
Co-authored-by: nehcgs <54548843+nehcgs@users.noreply.github.com>