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

[Phase 16] S13 — Packaging metadata, dependency single-source, container distribution

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

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
12/100
Issue 类型
重构
描述清晰度
基本清楚
活跃度
活跃
技术栈
docker, docker-compose, python

调研方向

Blocked by #888, so start there; this step is reviewed against that standard. Begin with the roadmap plan at docs/roadmap/phase-16-trust-surface-hardening.md lines 682-721, then the cache mount in docker-compose.yaml (hf_cache at /root/.cache/huggingface versus USER forgelm). Done means the seven exit criteria pass, including the workflow_dispatch smoke job and twine check.

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

描述

phase: 16 source: roadmap

Roadmap · Phase 16, step S13 · size L · 7 unit(s) · planned in docs/roadmap/phase-16-trust-surface-hardening.md:682-721

Summary

The distribution surface — what a user installs and what they run it in — with one root cause: hand-maintained duplicates of a single truth. docker-compose.yaml mounts hf_cache:/root/.cache/huggingface while the image drops to USER forgelm, so the cache never persists (an artifact defect, not only a documentation one). The manual advertises three image variants (latest, slim, airgap) that nothing builds, and every documented docker run … forgelm --config … resolves to forgelm forgelm … against the shipped ENTRYPOINT.

Units

Unit Tracked by (October 2026 review)
C31-DOCKER-RUNBOOK (= DOCS-05 + OPS-13) #157 · #159 · #201 · #210 · #217 · #218 · #298 · #409 · #422 · #451 · #602 · #615 · #619 · #638 · #643 · #702 · #789
F-W20260729-OPS-11, F-W20260729-OPS-12, F-W20260729-OPS-14, F-W20260729-OPS-17, F-W20260729-OPS-18 #114 · #465 · #523 · #558 · #566 · #607 · #668 · #686 · #702 · #776
C31-DEPENDENCY-SOURCE (= OPS-07 + OPS-08) #537 · #686 · #702

Blocked by

#888 — the standard this step is reviewed against; write it first.

Decisions this step executes

  • C-15 — container distribution: local docker build is the contract; a published image is tracked as a condition (deferred issue).
  • C-16 — fix the docker-compose.yaml cache path in the same change, with a ### Fixed entry naming the orphaned-volume effect.

Plan

  • Delete the three phantom variants and re-derive README and both manuals from the artifacts on disk.
  • Fix the compose cache path in the same change.

Exit criteria

  • README and both manuals describe exactly one distribution path.
  • A guard fails when a first-party registry reference has no backing publish workflow, when a compose file name in prose is absent from disk, or when a documented service name is absent from services:.
  • The documented first container command succeeds in a workflow_dispatch smoke job.
  • Two disposable docker compose run --rm invocations share one cached snapshot without root.
  • The documented wizard command leaves a validated YAML on the host after --rm that passes python3 -m forgelm --config <file> --dry-run.
  • A meta-test compares normalised direct dependencies between the nightly minimum-deps list and the package metadata.
  • A clean isolated build emits no packaging-metadata deprecation warning and twine check dist/* passes.

How to deliver

  • One root-cause family, committed on its own; then an Opus review round and a Sonnet review round, each with verified findings fixed and committed before the next step begins.
  • A reproducer that is red before the fix and green after; the full gauntlet from CLAUDE.md passes under ./.venv/bin/python.
  • Every English documentation edit ships with its Turkish mirror in the same commit; a new or renamed audit event gets its EN and TR catalog rows in the same PR.
  • A step that grows a deferred module carries its budget_history justification in the same diff; a widened guard rolls out non-strict first, then flips.
  • Commit bodies cite Absorbs F-W20260729-…; the CHANGELOG [Unreleased] section gets an entry only for a change a user or library consumer can observe (decision C-20).

Planned in docs/roadmap/phase-16-trust-surface-hardening.md (read at f94595f). Unit IDs (F-W20260729-…) come from the 2026-07-29/30 full-project review; the issue numbers next to them are the October 2026 review's records of the same defects.

主要语言
Python
星标
9
派生
1
平均合并
4 小时 3 分钟
30 天内合并 PR
3

环境准备

从这里开始

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

HodeTech/ForgeLM 的其他 Issue

查看 HodeTech/ForgeLM 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

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