Skip to content

infra: publish the podling website at maka.apache.org #3404

Description

@Astro-Han
English

Part of #2974, supports #3272 (G5: Incubator branding and release surfaces).

Outcome

maka.apache.org serves a PPMC-reviewed podling website, published through ASF infrastructure, that identifies the project as Apache Maka (Incubating) and provides an ASF-compliant source download path with KEYS and verification instructions.

This issue owns the publication path and the pages ASF policy requires. What the site says was settled in #4307, which reached consensus on 2026-09-02 with +1 from @M4n5ter and @me2seeks.

Content direction settled in #4307

  • Positioning, used unchanged on the homepage, in the README, and in the repository description: "Apache Maka (Incubating) is a high-performance agent workspace that keeps a complete record of everything it did."
  • One bilingual product homepage, with complete English and Chinese versions carrying the same sections, claims, warnings, and links. No second documentation tree owned by the site.
  • Docs, Security, Community, Releases, Roadmap, and Architecture stay authoritative in their existing locations. The homepage links them instead of duplicating them.
  • Desktop Nightly, source builds, and future Apache Releases are three clearly separated paths, with the Nightly labelled as not an ASF release and Apache Releases stated as not yet made.
  • A benchmarks and leaderboard block on the homepage links to the reports in docs/eval/ rather than restating numbers in prose.
  • The old maka-agent.github.io#1 draft is research and decision history, not the implementation base. The site is rebuilt with new copy and new code, not migrated.

@me2seeks raised a sequencing point: Run status semantics (completed / interrupted / failed, plus the verification outcome) should be fixed before the homepage's first claim ships, so the site does not claim more than the product records. That work is #4423 and #4424. It is a checklist item here and does not block the publication mechanics.

For reference, maka-agent/maka-agent.github.io is an Astro static site currently deployed to GitHub Pages behind the maka-agent.com custom domain, with Cloudflare as authoritative DNS.

Prior art: Apache OpenDAL

OpenDAL, a mentor's project, publishes its site from the main repository rather than a separate one. The mechanics are worth copying because they are known to work with ASF infrastructure:

  • The site source lives in apache/opendal under website/ (Docusaurus).
  • .github/workflows/docs.yml builds it and pushes website/build to the gh-pages branch with force_orphan: true.
  • .asf.yaml carries publish: whoami: gh-pages, which is what makes asfyaml serve the branch at opendal.apache.org.
  • The same workflow pushes RC builds to site/<name>-staging, and .asf.yaml carries staging: autostage: site/*, so a release candidate's site can be reviewed before it goes live.
  • website/src/pages/download.mdx is short: source artifacts are the release, a link to the latest source release, links to the ASF archive and the incubator archive, KEYS, and gpg --import / gpg --verify / shasum -a 512 -c instructions.
  • The Docusaurus footer carries the ASF logo and the License, Events, Privacy, Security, and Sponsorship links, plus the trademark line in the copyright.

Follow this layout unless something about Maka makes it unworkable. The one part that does not carry over is OpenDAL's release path for crates.io and Maven staging, which Maka does not need. Maka also does not use the trademark symbol, since the podling name search has not concluded.

Hosting decision

I evaluated Cloudflare Pages and R2 as the production host for maka.apache.org. They are technically capable, but I will follow the existing ASF publication path rather than request an Infrastructure exception. The free tier does not change the ownership and governance requirements for an official Apache website.

  • I will keep apache/maka as the source authority and place the Astro website under website/.
  • I will use GitHub Actions to build the static output and push it to an ASF website publish branch. .asf.yaml will publish that branch to maka.apache.org.
  • I will use ASF website staging as the authoritative pre-production review path.
  • I will keep official source releases on the ASF distribution and mirror infrastructure. The website will link the source archive, KEYS, signatures, checksums, and verification instructions rather than host release files itself.
  • I will keep npm and Desktop convenience artifacts separate from the official source release and label them accordingly.
  • I will not introduce R2 for the static website. It is unnecessary here and would add another account, credential, billing, and operational authority outside the ASF publication path.
  • I will keep the publication path independent of the fuller homepage build-out. The path has to work before the content that rides on it is finished.

Implementation order

  1. I will scaffold website/ in apache/maka on the root workspace and lockfile, with the minimal set of pages ASF policy requires: a homepage that identifies Apache Maka (Incubating) on first mention and carries the full Incubator disclaimer, downloads and verification, security, privacy, license, and the ASF footer. The copy uses the [DISCUSS] Rebuild the Maka website and project narrative #4307 positioning.
  2. I will add the build workflow, publish branch, and .asf.yaml staging and publishing configuration, with deployment-specific validation.
  3. I will verify the staged site end to end, publish it to maka.apache.org, and update repository metadata.
  4. I will then build out the fuller homepage: the benchmarks and leaderboard block, the product journey, and the documentation entry, together with the README handoff settled in [DISCUSS] Rebuild the Maka website and project narrative #4307 Q4.
  5. I will propose to the PPMC whether maka-agent.com should redirect or be retired.

Current state

Exit criteria

  • Any third-party font, image, or asset used by the site carries recorded provenance and a license compatible with an ASF repository, and the site carries LICENSE and NOTICE.
  • The site source lives in an ASF repository, by default apache/maka under website/, following OpenDAL rather than creating a separate site repository.
  • A workflow builds the site and pushes the built output to a publish branch, and .asf.yaml gains the matching publish: entry, extending the seam established in chore: add .asf.yaml for ASF infrastructure self-service #3262.
  • maka.apache.org serves that site instead of 404.
  • A staging path exists for reviewing a release candidate's site before it is published.
  • The homepage identifies the project as Apache Maka (Incubating) on first mention and carries the full Incubator disclaimer.
  • The homepage uses the [DISCUSS] Rebuild the Maka website and project narrative #4307 positioning sentence, and the README and repository description use the same sentence.
  • Every page carries the ASF footer: License, Events, Privacy, Security, Sponsorship, and trademark attribution.
  • A downloads page presents the official Apache source release as the release, links KEYS, publishes SHA-512 and detached signatures, and gives working GPG and checksum verification steps, following OpenDAL's download.mdx.
  • The downloads page separates Desktop Nightly, source builds, and future Apache Releases, and states that convenience artifacts are not the release.
  • The homepage has complete English and Chinese versions with the same sections, claims, warnings, and links, and a named owner is recorded for keeping the two in sync.
  • A benchmarks block links to the reports in docs/eval/ without restating numbers in prose.
  • Run status semantics (fix(runtime): resume rejects provably-undispatched tools as dangling state #4423, feat(runtime): resume interrupted runs safely instead of parking them #4424) are fixed before the homepage's first claim ships, so the site does not describe more than the product records.
  • A fact-check cadence is recorded: the homepage is re-checked against the product at every release, and for changes to positioning, the primary journey, platform support, or the trust boundary.
  • The PPMC decides what happens to maka-agent.com and to the GitHub Pages deployment: retire, redirect, or keep as a separate product site under the ASF branding rules for podling names and non-ASF domains.

Sequencing

The downloads page is the part #3272 depends on. Land a minimal /downloads/ page first, on the scale of OpenDAL's: roughly one screen of prose and two shell snippets. The fuller homepage proceeds on its own track afterwards.

The downloads page cannot list real artifacts until a release candidate exists, but its structure, KEYS link, and verification instructions can and should be reviewed before the first vote. OpenDAL's verify.md is a usable model for the reviewer-facing checklist.

Out of scope

References

Ownership

I have claimed the end-to-end implementation. Public governance decisions, such as the future of maka-agent.com, remain with the mentors and the PPMC; my implementation ownership does not replace them.

AI use: I used Claude to draft this rewrite. I own the public change.

简体中文

#2974 的一部分,支撑 #3272(G5:孵化器品牌与发版界面)。

目标结果

maka.apache.org 提供经 PPMC 审查、由 ASF 基础设施发布的 podling 网站,标识项目为 Apache Maka (Incubating),并提供符合 ASF 要求的源码下载入口、KEYS 和验包说明。

本 issue 负责发布链路和 ASF 政策要求的页面。官网讲什么已在 #4307 定下:该讨论于 2026-09-02 达成共识,@M4n5ter@me2seeks 均投 +1。

#4307 定下的内容方向

  • 定位句,在首页、README 和仓库描述中原样使用:"Apache Maka (Incubating) is a high-performance agent workspace that keeps a complete record of everything it did."
  • 一个双语产品首页,中英两版章节、主张、警示和链接完全一致。官网不另建一套文档树。
  • Docs、Security、Community、Releases、Roadmap、Architecture 保持在各自现有位置作为权威来源。首页链接它们,不复制内容。
  • Desktop Nightly、源码构建、未来的 Apache Releases 是三条明确分开的路径:Nightly 标注为非 ASF release,Apache Releases 说明尚未发布。
  • 首页设跑分与榜单板块,链接到 docs/eval/ 中的报告,不在正文里复述数字。
  • 旧的 maka-agent.github.io#1 draft 属于调研与决策历史,不是实现基线。官网是用新文案、新代码重做,不是迁移。

@me2seeks 提出一条排序意见:在首页第一条主张上线前,应先修正 Run 状态语义(区分 completed / interrupted / failed 及验证结果),使官网的主张不超出产品实际记录的能力。这部分工作是 #4423#4424。它是本 issue 清单上的一项,不阻塞发布链路本身。

作为背景:maka-agent/maka-agent.github.io 是一个 Astro 静态站,目前通过 GitHub Pages 部署在自定义域 maka-agent.com 下,DNS 权威在 Cloudflare。

参照:Apache OpenDAL

OpenDAL 是本项目 mentor 的项目,它把网站源码放在主仓库而不是单独仓库。这套机制已经在 ASF 基础设施上跑通,值得直接照搬:

  • 站点源码位于 apache/opendalwebsite/ 目录(Docusaurus)。
  • .github/workflows/docs.yml 构建后,用 force_orphan: truewebsite/build 推到 gh-pages 分支。
  • .asf.yaml 中的 publish: whoami: gh-pages 让 asfyaml 把该分支发布到 opendal.apache.org
  • 同一个 workflow 把 RC 构建推到 site/<name>-staging,配合 .asf.yamlstaging: autostage: site/*,使发版候选的站点可以先审查再上线。
  • website/src/pages/download.mdx 很短:声明源码 artifacts 才是 release,给出最新源码 release 链接、ASF archive 与 incubator archive、KEYS,以及 gpg --import / gpg --verify / shasum -a 512 -c 说明。
  • Docusaurus 页脚带 ASF logo 和 License、Events、Privacy、Security、Sponsorship 链接,商标声明写在 copyright 行里。

除非 Maka 有具体因素导致行不通,否则按这套布局做。唯一不适用的是 OpenDAL 面向 crates.io 和 Maven staging 的发版路径,Maka 不需要。Maka 也不使用商标符号,因为 podling 名称搜索尚未完成。

托管决策

我评估了用 Cloudflare Pages 和 R2 托管 maka.apache.org 的方案。它们在技术上可行,但我会沿用 ASF 现有的官网发布链路,而不是为 Cloudflare 申请 Infrastructure 例外。免费额度不会改变 Apache 官方网站的所有权和治理要求。

  • 我会以 apache/maka 作为官网源码的权威来源,将 Astro 站点放在 website/
  • 我会用 GitHub Actions 构建静态产物并推送到 ASF 官网发布分支,再由 .asf.yaml 发布到 maka.apache.org
  • 我会使用 ASF website staging 作为正式发布链路的权威预发布验收环境。
  • 我会继续通过 ASF distribution 和镜像系统分发官方源码 release。官网只链接源码包、KEYS、签名、校验和与验包说明,不自行托管 release 文件。
  • 我会把 npm 和 Desktop convenience artifacts 与官方源码 release 分开,并明确标注其性质。
  • 我不会为静态官网引入 R2。这里不需要对象存储,而且它会在 ASF 发布链路之外增加账号、凭据、账单和运维权威。
  • 我会让发布链路独立于完整首页的建设。链路要先跑通,跑在上面的内容才谈得上完成。

实施顺序

  1. 我会在 apache/maka 中搭起 website/,接入根 workspace 和 lockfile,并落地 ASF 政策要求的最小页面集合:首次提及即标识 Apache Maka (Incubating) 并带完整 Incubator disclaimer 的首页、下载与验包、安全、隐私、许可证,以及 ASF 页脚。文案采用 [DISCUSS] Rebuild the Maka website and project narrative #4307 的定位。
  2. 我会增加构建 workflow、发布分支和 .asf.yaml 的 staging/publish 配置,并补上部署契约验证。
  3. 我会对 staging 站点做端到端验收,发布到 maka.apache.org,并更新仓库元数据。
  4. 然后再建设完整首页:跑分与榜单板块、产品旅程、文档入口,以及 [DISCUSS] Rebuild the Maka website and project narrative #4307 第 4 问定下的 README 职责交接。
  5. 我会向 PPMC 提出 maka-agent.com 跳转还是下线的方案。

现状

完成条件

  • 站点使用的任何第三方字体、图片或资产都有可查的来源记录和与 ASF 仓库兼容的许可证,站点具备 LICENSENOTICE
  • 站点源码进入 ASF 仓库,默认放在 apache/makawebsite/ 目录,照 OpenDAL 的做法,而不是新建独立站点仓库。
  • 由 workflow 构建站点并把产物推到发布分支,.asf.yaml 增加对应的 publish: 配置,扩展 chore: add .asf.yaml for ASF infrastructure self-service #3262 建立的接缝。
  • maka.apache.org 提供该站点,不再返回 404。
  • 存在 staging 路径,可在发版候选的站点上线前进行审查。
  • 首页首次提及时标识为 Apache Maka (Incubating),并展示完整 Incubator disclaimer。
  • 首页使用 [DISCUSS] Rebuild the Maka website and project narrative #4307 的定位句,README 和仓库描述使用同一句话。
  • 所有页面带有 ASF 页脚:License、Events、Privacy、Security、Sponsorship 和商标归属。
  • 下载页把官方 Apache 源码 release 作为 release 呈现,链接 KEYS,公布 SHA-512 和 detached signature,并给出可实际执行的 GPG 与校验步骤,格式参照 OpenDAL 的 download.mdx
  • 下载页把 Desktop Nightly、源码构建和未来的 Apache Releases 分开,并说明 convenience artifacts 不是 release。
  • 首页具备章节、主张、警示和链接完全一致的中英两版,并记录双语文案同步的负责人。
  • 跑分板块链接到 docs/eval/ 中的报告,不在正文里复述数字。
  • Run 状态语义(fix(runtime): resume rejects provably-undispatched tools as dangling state #4423feat(runtime): resume interrupted runs safely instead of parking them #4424)在首页第一条主张上线前修好,使官网的描述不超出产品实际记录的内容。
  • 记录事实核对节奏:每次 release 都对照产品复核首页,定位、主要旅程、平台支持或信任边界发生变化时同样复核。
  • PPMC 决定 maka-agent.com 和 GitHub Pages 部署的去向:下线、跳转,或按 ASF 关于 podling 名称与非 ASF 域名的品牌规则保留为独立产品站。

推进顺序

下载页是 #3272 依赖的部分。先落一个最小的 /downloads/ 页,规模与 OpenDAL 相当:大约一屏文字加两段 shell 命令。完整首页随后单独推进。

在出现发版候选之前,下载页无法列出真实 artifacts,但它的结构、KEYS 链接和验包说明可以、也应当在第一次投票前完成审查。面向 reviewer 的检查清单可参照 OpenDAL 的 verify.md

不在范围内

参考资料

负责人边界

我已认领端到端实施。公开的治理决策,例如 maka-agent.com 的去留,仍归 mentors 和 PPMC;我的实施责任不会替代它们。

AI 使用:我使用 Claude 起草了本次改写。我对这次公开更新负责。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions