- remove owner-impatient persona; owner-calm renamed to 业主
- aihr_realtime_owner_profile table (tenant+project unique, enabled,
version) with formal migration
- admin CRUD under moderator role gate; project code validated against
org snapshot and project name taken from snapshot authoritatively
- employee endpoint returns display-safe fields plus defaultProfileId
from the employee's own community; profile body never exposed
- session creation renders {community}/{profile} server-side; client
text can never enter instructions; invalid profileId rejected,
default resolution fails closed
- duplicate create returns 409
- server-side employee position resolution (org snapshot) with hard
position gate for EXPERIENCE/CASE sources; formal sources unaffected;
unresolvable position fails closed to general-scope only
- merge published experiences (aihr_case_record, CASE_EXP) and moderated
best answers (COMMUNITY, no submitter identity) into the citation pool
as REFERENCE tier; auxiliary sources never alter formal answers and
fail without breaking the main chain; grading re-grades ROUTE into
GUIDANCE when only auxiliary evidence exists
- case recall endpoints enforce the same position gate
- moderator endpoint to promote a best answer into a CANDIDATE case
record (idempotent via source_ref unique key, never auto-published)
- migration aihr_20260822_case_source_ref_and_best_answer_index_mysql8.sql
- COMMUNITY citations carry community-question:{id} in detailRef for
direct navigation
- CHANGELOG: 2026-08-05 entry with deploy evidence, verification
levels and open items
- runbook: execution log entry + two new migrations in the sequence
- AGENTS.md: macOS GNU stat shim requirement for release scripts