本卡屬 FR-192(母卡 FR-192 母案(同清單上一張)),卡 M-3,批 3。只改 BE(主 repo,Repo 欄空著)。依賴:A-1、I-1。

這張卡做什麼(白話)

主系統收 Agent 送來的回饋的那支端點。Agent 用控制面通行證打進來,一次最多 50 筆,每筆帶動作(新增/修改/刪除)。端點要:驗送件人是這租戶的人或 local-admin;新增就建成 jedi-issue 的正常回饋並標來源;修改先比版本時間(主系統較新回「過期」);刪除走既有刪回饋;Agent 附件每個建一筆「檔在 Agent」的參照列;一張對照表記「哪台+Agent 端編號 → 主系統回饋編號」做去重與溯源。附件建參照那段邏輯主系統已有(證據檔走 Agent 儲存時用的),是私有方法,本卡抽成公開的給兩邊共用,不複製。另外設定通道加「類別選項」這一類。

reuse/extend/new

new(照型):route 照 api/source_scan/routes/agent_manual_scan_route.py、service 照 jedi-remote-agent local_run_service.ingest(通行證身分、批次、accepted/rejected);extend:RemoteAgentAdapter._add_reference 抽成公開 register_agent_blob(),收單與既有上傳共用;設定類 provider 照 _agent_config_sections.py 既有 provider 形狀;對照表 migration 照 011-remote-agent-offline-operators.sql 的 RLS/GRANT

在哪裡

repo:~/Projects/Billows/Audit-Manager/compliance-manager-be
改既有:infra/upload_file/remote_agent_adapter.py 158(_add_reference → register_agent_blob 公開)
改既有:core/plugins/_agent_config_sections.py(feedback_labels provider)
改既有:core/plugins/remote_agent.py(route 登記一行)
改既有:di_containers/remote_agent_container.py(intake service wiring)
改既有:common/enum/event_code.py(AGENT_FEEDBACK_RECEIVED)
改既有:scripts/sql/manifest.tsv(登記兩支:本卡 014 鏡像+M-1 的 seed,M-1 不碰此檔)
改既有:scripts/sql/packages/jedi_remote_agent/(鏡像 014)
新開:api/remote_agent/routes/agent_feedback_route.py
新開:app/remote_agent/service/agent_feedback_intake_service.py
新開:common/code/agent_feedback_error_code.py
新開:jedi-remote-agent/jedi_remote_agent/migrations/014-agent-feedbacks.sql(compliance.agent_feedbacks;套件側檔)
新開:test/test_agent_feedback_intake.py

怎麼做

驗收(首腦照這個驗)

DEV 套 014 後 \d compliance.agent_feedbacks 有 RLS 四指令與 (agent_id, local_uid) 唯一;用 123 Agent 的通行證打 50 筆 create 回 accepted 50、第 51 筆 400;重送同 local_uid 回 accepted 不重建;created_by 不是該租戶的人回 rejected unknown_user;local-admin 放行且 feedback_issues.created_user=local-admin;帶 files 的那筆 upload_files 多一列 storage_type=remote_agent、save_file_name=Agent 檔 uid、path=該 Agent base_url;update 帶舊的 base_cloud_updated_at 回 stale;delete 後 feedback 不在、對照表 deleted_at 有值;GET /agents/config 回 feedback_labels 三個;BE 重啟實打;守衛測試綠;回寫明講「出貨基線待重產」

必讀