Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Add graph validation/compilation

未关闭
#67 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 2 天内回复

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
30/100
Issue 类型
功能
描述清晰度
需要澄清
活跃度
冷清
技术栈
python
领域
backend

调研方向

首先跟踪 build() 和 run() 入口点,尤其是提议的 validate、validate_types、validate_paths、halt_after 和 halt_before 选项。该 issue 仍然是一个宽泛的设计请求;完成它需要就状态要求、类型、可达路径和停止条件的验证行为达成一致。

由索引模型根据 Issue 内容生成。

描述

area/core kind/feature priority/low

We should be able to validate the DAG. Specific things we can check for:

  1. For all nodes that read state item X, given an initial state, does there exist a path that does not provide the required state?
  2. For all produced keys, do types match up? (when we have typing)?
  3. Is there a path that will not end up in a valid state (E.G. nowhere to go)?

Then on execution, we should be able to say:

  1. If there is a halt_after, is there a path that will reach it?
  2. If there is a halt_before, is there a path that will reach it?

Idea for (1):

app = ....build(validate=True) # on build, we can validate
app = ....build(validate_types=True, validate_paths=True) # if you want to do different things

Idea for (2)

app = ....build()
app.run(halt_after=..., validate=True)

Note this is not friendly towards state with default values as we don't expose that in the framework... But I think types + defaults should be easy enough to expose.

主要语言
Python
星标
2.6k
派生
203
平均合并
3 天 10 小时
30 天内合并 PR
6

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

apache/burr 的其他 Issue

查看 apache/burr 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。