开源资助的分配口径怎么定:拆解 Vite 生态基金首轮的两类资金与三条边界
Vite 生态基金首轮由 Cloudflare 发放 301,300 美元,覆盖 44 个生态受助条目,资金通过 Cloudflare 的 Open Collective 分为生态赞助与核心维护者津贴两类。津贴口径最具体:每自然月上限 4,000 美元、每小时 50 美元,已因同类工作获酬者不领取。生态赞助部分只公布了四条定性优先级,单笔金额与评分权重未公开,因此总额除以条目数不能当作人均金额。
- 这套口径的核心不是金额表,而是先把钱分成“生态赞助”和“核心维护者津贴”两类,再分别设资格线。
- 津贴是唯一可复算的部分:4,000 美元月上限 ÷ 50 美元时薪,隐含每月 80 小时。
- ,300 美元对应 44 个受助条目,但两类钱的受助集合不一定重合,人均金额属于待核实项。
如果只问“Vite 生态基金首轮分了多少钱”,答案是 301,300 美元,对应 44 个项目与维护者。但如果问“分配口径怎么定”,材料能给出的是一套规则骨架,而不是一张金额表:钱先分成两类,每类各有资格线与上限,评审权部分外移给非出资方的维护者。单笔金额和评分权重没有公开——这是理解这套口径时最需要先划清的边界。
以下事实均来自 Cloudflare 于 2026 年 11 月 9 日发布的公告(Launching the Vite Ecosystem Fund)。除明确标注的算术推导与建议外,本文不补充材料之外的信息。
首轮的数字结构:一个总额、一份名单、两处空白#
公告给出的确定信息有三条。第一,Cloudflare 在 VoidZero 加入时承诺 100 万美元用于强化 Vite 周边开源生态,本轮发放其中 301,300 美元。第二,这笔钱通过 Cloudflare 的 Open Collective 分配,形式是“对生态受助方的赞助”加上“给核心维护者的津贴”的组合。第三,剩余部分将按季度继续发放。
按公布数字相减,首轮之后尚有 698,700 美元未分配(1,000,000 − 301,300,算术推导,非公告原文表述)。公告没有说明季度的具体节奏、每轮规模是否固定,这部分待核实。
名单本身也容易被误读。公告在“对生态受助方的赞助”小节下列出了 44 个条目,包含个人维护者、基金会式条目(如 Anthony Fu Fund)和项目(如 Babel、pnpm、PostCSS、Prettier、Rollup、Terser、typescript-eslint、Mock Service Worker、e18e 等)。而津贴是另一类资金,面向 Vite 技术栈的核心维护者。两类钱的受助集合是否完全重合、44 是否等于全部受助方总数,公告未作说明,待核实。
由此可以得出一个实用结论:用 301,300 除以 44 得到的数字,不能当作“人均资助额”。分子是两类资金的合计,分母是一份名单的条目数,两者不构成可以直接相除的关系。
两类钱,两套口径#
这套分配方案真正的设计在分类上。赞助和津贴回答的是两个不同问题:前者问“哪些项目对生态重要”,后者问“维护者投入了多少时间”。两者的评审依据、上限和排除条件都不一样。
| 维度 | 生态受助方赞助 | 核心维护者津贴 |
|---|---|---|
| 对象 | 依赖项、生态关键插件、重要贡献者、推动生态前进的项目 | Vite、Vitest、Rolldown、Oxc、Vite+ 等栈项目的核心维护者 |
| 计量方式 | 公告未披露(定性评审) | 按小时计费,每小时 50 美元 |
| 上限 | 公告未披露 | 每自然月至多 4,000 美元 |
| 资格排除 | 公告未披露 | 已因该工作获酬或受雇者不领取,例如 VoidZero 员工 |
| 可复算性 | 低:无金额、无权重 | 较高:时薪与月上限均为公开数字 |
把两类钱混在一起谈“分配公平”,会丢掉这套口径最关键的信息:它对“时间投入”给了精确的价格,对“生态价值”只给了方向。
津贴口径最具体:隐含每月 80 小时#
公告写明,核心维护者每自然月最多可领取 4,000 美元津贴,按每小时 50 美元的费率申报。按这两个公开数字折算,月上限对应 80 小时(4,000 ÷ 50,算术推导)。公告本身没有出现“80 小时”这一表述,它是上限的等价换算,不是独立规定。
计费范围写得相当宽:写代码、写文档、处理 issue、在 Discord 提供支持、参加会议或聚会、向上游依赖提交贡献等,都算作对项目的改进或支持。这一点值得注意——它承认开源劳动中大量不可见于提交记录的部分。
排除条款同样是口径的一部分。已经因为这份工作获得报酬或受雇的人不领津贴,VoidZero 员工被明确列为无资格。这条规则的作用是防止同一份工作被重复支付,也让津贴更接近“补足缺口”而非“追加收入”。
如果要用脚本核对申报,逻辑大致如下(未执行的示例,仅示意计算关系,不构成任何实际申报依据):
HOURLY_RATE = 50 # 公告公布的时薪(美元)
MONTHLY_CAP = 4000 # 公告公布的每自然月上限(美元)
def claimable(hours, already_paid_for_this_work):
if already_paid_for_this_work:
return 0 # 已获报酬者不领取津贴
return min(hours * HOURLY_RATE, MONTHLY_CAP)
print(claimable(60, False)) # 3000
print(claimable(100, False)) # 4000,受月上限约束
print(claimable(40, True)) # 0
评审口径:谁评,以及为什么这件事重要#
公告说明,受助方由 Vite 技术栈项目(Vite、Vitest、Rolldown、Oxc、Vite+)的核心团队成员组成的小组选出,其中包括并非 Cloudflare 雇员的维护者。这是这套口径里最值得借鉴的一条:出钱的一方没有独占裁决权,实际维护代码的人参与决定钱去哪。
但规则的细节仍然缺失。公告没有说明小组的投票方式、是否存在回避机制(例如评审人自己或所属项目在候选名单中时如何处理)、成员任期与轮换。这些都属于“评审治理”层面的信息,待核实。对想复制这套模式的组织来说,缺少这部分就无法判断它是否能真正抵御“自己人评自己人”的质疑。
四条优先级读起来是什么#
公告给出的生态赞助优先方向是:依赖项、生态关键插件、重要贡献者、推动生态前进的项目。四条都是定性判断,没有阈值、权重或名额分配。
这类表述的作用是保留裁量空间。一个被大量插件间接依赖的构建工具,显然落在“依赖项”里;一位长期维护关键类型定义、但项目本身不显眼的贡献者,可能落在“重要贡献者”里。反过来,四条标准都无法回答“一个项目要重要到什么程度才够”。公告也没有给出被拒案例或落选原因,因此外部的可复核性很低。
公告引用 e18e 负责人 James Garbutt 的说法:“赞助带来的差别很大,让维护者能把更多时间投入到我们所有人依赖的东西上。”(转引自上述公告)这是受助方视角的陈述,不是效果评估数据。
想照抄这套口径,先固定五件事#
以下是基于上述结构的建议,不是公告提出的规范:
- 先分资金类型,再谈资格。把“赞助项目”和“补贴个人时间”分开,否则两类目标的评审会互相干扰。
- 至少给一类钱一个可算的上限。月上限加时薪的组合让申报方和评审方都能预先估算总额,也让“为什么是这个数”有据可依。
- 写清排除条款。明确哪些情况不重复支付,比事后争论更省成本。
- 公开评审构成并说明利益冲突处理。引入非出资方维护者是加分项,但回避规则不写出来,外部就无法验证。
- 公布名单时标注它对应哪类钱。否则“总额 ÷ 名单条数”几乎必然被误读成人均金额。
从这份材料推不出来的结论#
几件事需要明确留白:每个受助方获得的具体金额;津贴实际领取人数与总支出占比;剩余 698,700 美元的发放时间表;评审的具体打分或排序方法;以及首轮资助是否改变了任何项目的维护节奏——公告只有一句受助方感言,不构成效果数据。
把这些空白和已知规则放在一起看,Vite 生态基金首轮的口径可以概括为:对时间给出明码标价,对价值只给方向,对裁决权做部分让渡,对具体金额保持沉默。对设计类似资助方案的团队而言,前三项是可复制的结构,第四项则意味着这套口径目前只能被信任,还不能被外部复算。
参考来源
以上为本文写作时的参考资料,引用观点以原文为准。