|
|
684ec3ba69
|
feat(references): 分项明细列表支持排序——budget标的金额大到小/time发布时间后到前;数据源侧先全局排序再截断(金额TopN是真TopN非局部排序);三个分项弹窗(招标/国内众包/海外)顶部加排序切换按钮(当前态primary高亮,点击重建弹窗带sort参数);弹窗标题回显当前排序;agent工具opp_category_references/opp_overseas_references加sort参数(白名单收敛,非法值回落time)
|
2026-09-15 14:36:04 +08:00 |
|
|
|
4092304726
|
feat(feasibility): P3可行性研究——opp_feasibility引擎(fp_estimate规则引擎FP/draft_feasibility八节报告/score_candidate评分/promote_to_project立项门禁)+report_type列(models/DDL/CRUD重生成)+详情页与PPT按类型选四节或八节模板(sections_for_type单一规则源)+列表类型徽标+prompt链路C+params/demand_mining字典种子+i18n词条
- fp_calc.calc()返回键实锤核对: total_fp/counts/errors(原total_ufp/by_type兜底猜错,已修)
- promote门禁修正: resolve_approval会把status置approved,confirmed只是中间态→门禁接受confirmed/approval_initiated/approved(原只认confirmed会导致审批通过后反而不能立项)
- _cluster_ctx补项目隔离(对齐_check_batch_visible口径)+全personal类别如实拒绝可行性样本不足
- 八节模板兜底节=需求规格;四节存量解析口径零变化
- opp_approvals CRUD手改(项目过滤)被xls2ui重生成吃掉→已checkout还原,只保留opp_reports新列部分
|
2026-09-14 09:03:58 +08:00 |
|
|
|
73c87b72a6
|
fix(mining-ui): 类别排名弹窗补auto_open+resizable(对齐opp_demand_items范式)——modal:True无auto_open致PopupWindow渲染display:none不可见,实测DOM在位rect=0定位
|
2026-09-12 11:14:55 +08:00 |
|
|
|
25348fa2e1
|
feat(mining-ui): P2需求挖掘三级下钻UI——⛏需求挖掘菜单(无require_project,平台级批次也可见)→批次列表(启动全量/指定类型按钮+状态色标+done行下钻)→类别排名PopupWindow(排名/占比/命名依据)→类内明细(每条带来源,src_id复用opp_item_detail详情弹窗);opp_mining_start.dspy复用start_mining与工具通道同实现;cluster_detail补src_id字段;load_path注册4端点
|
2026-09-12 11:00:49 +08:00 |
|
|
|
5c37341f4c
|
feat(opp): 当前项目过滤——opp_reports_list只显示当前项目报告+平台级调研(未挂项目),无项目提示'选择或新建'带直达按钮;opp_approvals get注入会话级强制过滤;三菜单加require_project门禁
|
2026-09-11 18:29:52 +08:00 |
|
|
|
8627b855c0
|
feat(opp): 研发报告菜单改造——owner过滤列表+四节详情+成果文件下载
用户需求(2026-09-09):研发报告按钮点击按项目owner过滤列表;每项点击看
研发场景/输入/输出/成果;成果文件多个列出、逐个点击下载。
1. 列表页 api/opp_reports_list.dspy(替换CRUD裸表页作菜单入口):
- list_visible_reports 单一事实源:挂项目的报告仅项目owner可见
(sd_projects.created_by==uid;agent建的项目降级同机构,对齐
check_project_owner既有语义);未挂项目的平台级调研登录可见;
孤儿报告(项目已删)不可见(LIKE 'agent.%' 写法有 rag_client.py 生产先例)
- 整行点击下钻详情,交互范式照抄 opp_references_items.dspy
2. 详情弹窗 api/opp_report_detail.dspy:
- parse_report_sections 四节解析(## 研发场景/输入/输出/成果),
MdWidget逐节渲染;兼容序号/冒号/加粗标题变体;三级标题不误判;
旧报告无节时全文归输出节;空节如实标注不编造
- check_report_visible 与列表同一可见性规则(语义不漂移)
3. 文件下载 api/opp_report_file_dl.dspy + list_report_files:
- 范围=项目deliverables/全部文件+报告PPT(realpath去重)
- 安全模型对齐 opp_attachment_dl:前端只传report_id+name,
服务端回查清单命中才给文件,文件名不参与路径拼接(防穿越)
4. agent侧四节模板硬要求:OPP_PROMPT新增节+create/update_report工具描述
5. RBAC load_path 补3端点;i18n zh/en 补9词条;README 补改造说明
离线实测11项断言全过:标准四节/标题变体/旧报告归输出/缺节/三级标题不误判/
重复节拼接/空正文/deliverables扫描+PPT去重/项目外PPT/无项目不崩/防穿越
|
2026-09-09 15:04:20 +08:00 |
|
|
|
a066cb0f91
|
feat(opp): item detail full-text rendered by MdWidget (markdown, clickable links) - crawler now stores markdown detail_text
|
2026-09-09 11:24:27 +08:00 |
|
|
|
f44e5f7f83
|
fix(opp): 附件按平台副本状态诚实渲染——已存副本才给下载按钮,未存(如需登录)给打开原始页,不伪装可下载
|
2026-09-08 23:57:56 +08:00 |
|
|
|
45cec8987e
|
feat(opp): 数据参考三级整行下钻+明细详情弹窗+附件下载代理
- 汇总主题/分项条目整行点击(cursor:pointer)弹下级弹窗,撤「查看分项」按钮
- 明细每条来源写进说明文字(source_text),删除 source_button_widget 来源按钮
- 新 opp_item_detail.dspy: 爬虫平台条目全量字段+公告全文+附件列表
- 新 opp_attachment_dl.dspy: 服务端附件下载代理,归属校验防SSRF,
降级链 download_url→/api/attachments/{id}/download→原始url,失败如实报错
- opp_data_capability: tender_attachments/normalize_attachment 容错对接
爬虫平台附件子系统(/api/tenders/{id}/attachments,另一会话开发中,未就绪时降级提示)
- opp_common: crawler_get_raw 原始字节下载辅助; load_path 注册两个新端点
- README/prompt 同步新交互描述
|
2026-09-08 23:39:16 +08:00 |
|
|
|
8c032d7be0
|
feat(opp): detail popups show source as name button jumping to source url - SOURCE_REGISTRY in opp_common aligned with crawler sites.yaml (source_url preferred, homepage fallback)
|
2026-09-08 18:56:14 +08:00 |
|
|
|
333aad0127
|
feat: 数据项列表全面带来源URL——国内众包需求主题接入数据参考弹窗(新opp_demand_items.dspy,逐条带需求详情/来源页)+category_references支持record_type+prompt强制数据项列表逐条挂来源链接
|
2026-08-31 11:34:38 +08:00 |
|
|
|
ca8e9f2c71
|
海外软件需求接入商机产线: opp_hot_overseas/opp_overseas_references工具+数据参考弹窗海外板块+opp_demands补海外源
|
2026-08-30 19:54:00 +08:00 |
|
|
|
f192128f5e
|
feat: references可查证界面+报告确认门禁全文展示+PPT存储下载+数据参考菜单
|
2026-08-29 13:08:16 +08:00 |
|