Skip to content

Releases: NgZiming/YetAnotherDataFlow

## [1.0.7] - 2026-04-14

14 Apr 02:47

Choose a tag to compare

[1.0.7] - 2026-04-14

Added

  • OpenClaw Agent Serving 架构重构 (39a4196, 4eeaee8, cf0e77b)

    • 新增 AgentServingABC 抽象基类,提供统一 Agent 能力流程
    • 新增 AgentServingABC.MessageDictTrajectoryDict 类型定义
    • 新增 CLIOpenClawServing - 基于 OpenClaw CLI 的 Agent serving 实现
    • 新增 SDKNanobotServing - 基于 Nanobot SDK 的 Agent serving 实现
    • 新增 SystemPromptBuilder - 动态构建 OpenClaw system prompt
    • 支持动态创建 worker agents(按需创建,不再预先创建池)
    • 支持任务验证循环(verification loop)
    • 支持 system prompt 注入(包含 skills 信息)
  • FileContextGenerator 增强 (0962a63, a46e566)

    • 添加详细日志输出
    • 支持多种输入格式(string/list)
    • 改进错误处理和失败 row 过滤
    • 添加文件生成队列调试信息
  • FormatStrPromptedAgenticGenerator 增强 (8ebef33)

    • 支持 input_skills_dir 参数动态加载 skills
    • 支持 input_skills_key 传递 skill 路径列表
    • 支持 verification_prompt_template 验证提示词
    • 支持 enable_verification 自动验证循环
    • 支持 max_verification_rounds 最大验证轮数
  • JsonParseFilter 容错增强 (0384c59)

    • 添加 json-repair 依赖
    • 使用 repair_json 替代标准 json.loads
    • 增强 JSON 解析容错能力
  • NestExtractOperator 验证增强 (bd3d2c6)

    • 验证 input_keys 和 output_keys 必须一一对应
    • 添加详细的调试日志
    • 检查输出列的值有效性

Changed

  • Serving 模块重构 (39a4196)

    • 将 agent 相关的 serving 移到 serving/agent/ 子目录
    • 更新 serving/__init__.py 导入路径
    • 移除旧的 cli_openclaw_serving.pysdk_nanobot_serving.py(移至 agent 子目录)
  • Pipeline 并发控制优化 (17f258f)

    • PartitionPipelineParallelRun 改进并发提交逻辑
    • 防止 LLM Serving 并发竞争
  • 项目名称更新 (46ee92c)

    • open-dataflowya-dataflow
    • 更新 CLI 输出和 PyPI API 地址

Fixed

  • Chinese font 问题 (31e1ae1)

    • 修复 PDF 生成中的中文字体问题
  • File path 问题 (9d6b7f3, a46e566)

    • 修复文件路径验证逻辑
    • 确保所有文件路径以 /workspace/ 开头
  • Verification 问题 (cf0e77b)

    • 修复任务验证逻辑
    • 改进验证反馈格式
  • Agent name 问题 (1090495)

    • 修复 agent 名称匹配逻辑
  • Empty query 问题 (2ad44c5)

    • 添加 query 非空验证
  • CSV gen 问题 (ef27606)

    • 修复 CSV 文件生成问题
  • Feedback 问题 (76e1bd1, 249c29a, 5e01eea, c3c9464)

    • 修复反馈生成和验证逻辑
  • Dict types 问题 (bd3d2c6)

    • 修复字典类型处理

Removed

  • 冗余依赖 (46ee92c)
    • 移除无用的 prompt 和依赖

## [1.0.6.post1] - 2026-04-09

09 Apr 01:21

Choose a tag to compare

[1.0.6.post1] - 2026-04-09

Fixed

  • Session lock 文件路径修复 (c70136f, 909c5fe)

    • 修正 session lock 文件检测位置(lock 文件实际位于 agent/sessions/ 目录下,而非 workspace 根目录)
    • 修复 _is_agent_locked() 使用正确的 sessions/ 子目录路径
    • 修复 /new 失败时的 lock 文件清理逻辑
    • 将未定义的 _cleanup_agent_locks 函数调用替换为内联逻辑
  • Thread safety (f7b4a01)

    • 修复 S3Storage 的线程安全问题

## [1.0.6] - 2026-04-08

08 Apr 09:09

Choose a tag to compare

[1.0.6] - 2026-04-08

Added

  • NanobotServing (5fe27e4)

    • 新增 NanobotServing - 基于 nanobot Python SDK 的轻量级 Serving 类
    • 新增 CLINanobotServing 测试及 API 配置支持
  • CLI 请求增强 (4502473)

    • 添加 CLI 请求重试机制
    • 添加 tqdm 进度显示
  • 缓存配置优化 (e696b26, 524e002)

    • S3DataSourceS3Storagecache_max_size_gb 改为可配置参数

Changed

  • 缓存架构重构 (ac516d2)

    • 重构 LRUCacheManager 缓存架构
    • 将缓存逻辑从 DataParser 层移至 Storage/DataSource
  • 命名统一 (55a1b50, a8d4fe4)

    • S3Storagetemp_dir 参数改为 cache_dir,统一命名
    • nanobot_serving 重命名为 cli_nanobot_serving 以对齐命名规范
    • 重构 Serving 类命名并添加 agent 健康检查

Fixed

  • 缓存大小配置 (722f1a5, 66b96e4)

    • 修复 cache size 配置问题
    • 修复类型注解问题
  • 依赖冲突 (ccfb7af)

    • 解决 langkit 依赖冲突问题
  • 临时目录支持 (40ca1ae)

    • DataParser 添加自定义临时目录支持

## 1.0.5 (2026-04-07)

07 Apr 02:36

Choose a tag to compare

### 1.0.5 (2026-04-07)

### Fixed
- **Unicode surrogate 字符清理**
  - 新增 clean_surrogates() 工具函数,递归清理字符串中的 U+D800-U+DFFF 字符
  - 在 DataParser 基类中添加 _clean_data_for_serialization() 静态方法
  - 所有 Parser (Json/Jsonl/Csv/Parquet/Pickle) 的 serialize_to_file() 都会先清理数据
  - 修复 'utf-8 codec can't encode character surrogates not allowed' 错误

## v1.0.4.post1

03 Apr 05:31

Choose a tag to compare

## [1.0.4.hotfix] - 2026-04-03

03 Apr 05:04

Choose a tag to compare

[1.0.4.hotfix] - 2026-04-03

Fixed

  • Pipeline.is_partitioned 同步问题 (main)

    • Pipeline.compile(): 在设置 self.storage.is_partitioned = True 后,同步更新所有 operator nodes 中的 storage
    • 修复 _build_operator_nodes_graph()is_partitioned 设置之前被调用导致的问题
    • 确保 execute_workload()copy.copy(node.storage) 获得正确的 is_partitioned
  • entrypoint.sh heredoc 语法 (main)

    • 修复 openclaw config set 不支持直接 heredoc 的问题
    • 改为使用 $(cat << 'EOF') 命令替换
    • 移除环境变量默认值,强制要求设置
    • 修改 gateway 启动方式为 nohup openclaw gateway run > gateway.log 2>&1 &

v1.0.4 创建启动 openclaw 的 dataflow 容器

03 Apr 02:57

Choose a tag to compare

[1.0.4] - 2026-04-03

Added

  • Pipeline 分片跳过优化 (b13860c)

    • Pipeline.compile(): 检查 progress 中的 total_shards,已分片则跳过 split_input()
    • 新增 is_partitioned 属性到 PartitionableStorage 接口
    • 支持任务重启时跳过已完成分片,避免重复处理
  • Storage 接口优化 (b13860c)

    • 移除 batch_size 属性(分片时动态计算)
    • get_keys() 从 DataSource 读取字段名

Changed

  • Docker 镜像优化 (13bb3bb)

    • 代码拷贝路径改为 /opt/dataflow
    • 更新 .dockerignore 排除非运行时文件
      • dataflow/example/ - 示例数据
      • dataflow/cli_funcs/ - CLI 功能
      • dataflow/webui/ - Web UI
      • static/ - 静态资源
  • 本地安装支持 (85319e6)

    • Dockerfile 改为安装本地文件夹而非远程 git
    • 移除包含敏感信息的远程 git URL

Removed

  • BatchedPipeline 相关代码 (b13860c)
    • 删除 BatchedPipelineABC, StreamBatchedPipelineABC
    • 删除 BatchedFileStorage, StreamBatchedFileStorage
    • 删除测试文件 test/test_batched_pipeline.py, test/test_batched_stream_pipeline.py
    • 删除模板文件 my_pipeline.py

Fixed

  • Pipeline 进度初始化 (b13860c)

    • progress["partitions"] 列表长度改为 self._partitions
    • _build_operator_nodes_graph() 移到 progress 创建之前
  • Pipeline 类名获取 (b13860c)

    • pipeline_class 改为 type(self).__bases__[0].__name__
    • 确保获取基类名 (PipelineABCPartitionPipelineParallelRun)
  • 依赖修复 (589a542)

    • requirements.txt 新增依赖

## [1.0.3] - 2026-04-02

02 Apr 02:21

Choose a tag to compare

Added

  • 核心算子模块 (7fee81e)

    • JsonParseFilter: JSON 解析和验证算子,支持字段类型检查、正则匹配、数值范围验证
    • NestExtractOperator: 嵌套 JSON 提取算子,支持点号路径 (user.address.city) 和数组索引 (items[0].name) 语法
    • FormatStrPromptedAgenticGenerator: 基于模板提示的 Agent 生成算子,支持传递文件内容数据
    • FileContextGenerator: 文件内容合成算子,根据文件路径和问题生成表格/文档/PPT/代码等内容
  • 二进制文件生成系统 (95b10c0, 7055f70)

    • generate_binary_files.py: 支持 11 种格式的测试文件生成 (CSV/XLSX/PDF/DOCX/PPTX/JSON/XML/HTML/YAML/TXT/Py/JS/TS)
    • CLIOpenClawServing 增强:支持在 LLM 调用前注入二进制文件内容数据
    • 5 类 Prompt 模板:table/document/presentation/structured/text/code
  • 依赖更新 (a095d18)

    • 新增 openpyxl - Excel 文件读写
    • 新增 python-pptx - PPTX 文件生成
    • 新增 reportlab - PDF 文件生成
    • 新增 docx - DOCX 文件生成

Fixed

  • 文件验证和路径处理 (5186b80)

    • generate_file 内容验证逻辑修复
    • 路径处理从 /workspace/ 到 agent workspace 的转换
  • Pipeline 输入检查 (cd0b60a)

    • Pipeline 步骤输入键检查增强

v1.0.2 bug 修复

01 Apr 07:17

Choose a tag to compare

Fixed

  • Pipeline 输入键检查增强 (ad3bdf3, fc60bf0)

    • PipelineABC._check_input_keys: 添加空 input_key_first_part 检查,避免空字符串导致的错误
    • PipelineABC._check_input_keys_for_step: 同上,确保后续步骤的输入键检查健壮性
    • PartitionPipelineParallelRun: 跳过以 . 开头的 key_para_name,避免错误的依赖添加
  • OpenClaw CLI Serving 超时处理 (ab06a92, c6d20a9)

    • _execute_single_query: timeout 从硬编码 30 秒改为使用传入的 timeout 参数
    • 超时异常从返回空字符串改为抛出异常,确保调用方能正确处理超时
    • 返回值格式统一为 {"messages": [...]} 结构
  • Storage schema 包含 id_key (bacc6c1, 814176f)

    • FileStorage.get_schema: 返回的 schema 包含 id_key,确保后续步骤能正确识别主键
    • S3Storage.get_schema: 同上
  • 文件句柄泄漏修复 (6cd60cd)

    • FileStorage._load_data_for_pruning: 添加 try-finally 确保文件正确关闭

ID合成与OpenClaw CLI Serving优化

31 Mar 02:31

Choose a tag to compare

[1.0.1] - 2026-03-31

Added

  • IdSynthesizer 抽象类 (b0c12e8)

    • 新增 IdSynthesizer 抽象基类,支持缺失 id_key 的自动合成
    • 实现 UuidIdSynthesizer(默认)和 CounterIdSynthesizer
    • FileStorageS3Storagesplit_input 时自动合成缺失的 id_key
  • OpenClaw CLI Serving 重构 (3e9f94b)

    • 改用预先创建的 worker agents,避免重复创建失败
    • 每次请求前执行 /new 创建新 session
    • 请求轮询分配给不同的 worker agent
  • Pipeline 并行检查优化 (fc108ba)

    • _check_completed_workloads 改为多线程并行检查
    • 最多 32 个 worker 并行检查文件存在性

Changed

  • Session 文件等待增强 (cce4704)

    • load_session 改为抛异常,不再返回 None
    • _resolve_transcript_path 超时从 15 秒延长到 60 秒
  • Worker agent 注册等待 (6d8b994)

    • 创建 worker agent 后轮询检查是否注册成功
    • 最多等待 5 秒(10 次 * 0.5 秒)

Fixed

  • 79c18b0 - 添加 agent 注册重试逻辑,解决竞态条件
  • fdfc9d1 - 修复 openclaw CLI 命令,使用 agents delete-m 标志
  • 7601512 - CLI serving 改用临时 agent 而非 --session-id
  • a29d612 - 修复 data_parser 和 datasources 读取问题
  • 9865233 - 修复文件未找到问题

Other Updates

Commit Description
c734aa6 shelex 功能更新
c02c256 修复 agent 目录
0023d74 修复 agent 目录
53561ff 保存所有 sessions
c731aa0 API 功能更新
9c3781a 支持嵌套 keys
a733690 默认模型配置
d5d806b 格式化