Skip to content

docs(spec): §8 counsel items record their now-existing drafts (HT-5) - #101

Merged
zaridan merged 1 commit into
mainfrom
docs/ht-5-counsel-draft-status
Jul 20, 2026
Merged

docs(spec): §8 counsel items record their now-existing drafts (HT-5)#101
zaridan merged 1 commit into
mainfrom
docs/ht-5-counsel-draft-status

Conversation

@zaridan

@zaridan zaridan commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Small staleness sweep per the maintainer: the §8 counsel-dependency table described all four legal documents as future 'Counsel-drafted' work; as of tonight every one exists as a reviewed draft (module license → this repo's legal/ via #100; terms of sale, privacy policy, managed-hosting terms → marketplace repo legal/, merged in marketplace #4). Rows now record draft locations and restate the gate as sign-off + adoption/publication.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation
    • Updated marketplace compliance guidance to clarify the commercial module license replacement and draft status.
    • Refined terms of sale and store privacy policy gate wording, including counsel review and publication status.
    • Clarified the new v1.1 managed-hosting terms and data-handling disclosure, including its distinction from the store privacy policy.
    • Documented resolution of the “own-your-data” reconciliation and linked the related charter amendment.

All four counsel-gate documents were drafted 2026-07-19 (Codex-reviewed,
fix-round applied): module commercial license (legal/, PR #100), terms
of sale / privacy policy / managed-hosting terms (marketplace repo
legal/, PR #4 merged). The gate is now sign-off + adoption/publication,
not drafting — the table said 'Counsel-drafted' as if unwritten.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: f4fd1a9a-abd9-40dd-b497-9add95b6b7e1

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa63cd and 347f170.

📒 Files selected for processing (1)
  • specs/modules/marketplace-v1.md

📝 Walkthrough

Walkthrough

Section 8 of the marketplace v1 specification updates counsel-gated licensing, sales, privacy, and managed-hosting disclosure entries with drafted dates, document locations, v1.1 scope, and the resolved charter data-ownership reconciliation.

Changes

Marketplace counsel dependencies

Layer / File(s) Summary
Update Section 8 dependency entries
specs/modules/marketplace-v1.md
Commercial module licensing now replaces the All rights reserved placeholder and references its dated draft. Terms of sale, store privacy, and managed-hosting disclosure entries use updated pending-sign-off wording, including the v1.1 hosted-module data scope and resolved charter reconciliation.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the PR’s main change: updating §8 counsel items to record their drafted legal documents.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/ht-5-counsel-draft-status

Comment @coderabbitai help to get the list of available commands.

@zaridan
zaridan merged commit d34cea0 into main Jul 20, 2026
5 checks passed
zaridan added a commit that referenced this pull request Jul 21, 2026
These changes were pushed to docs/ht-5-licensing-decisions and
docs/ht-5-legal-texts AFTER those branches' PRs had already been squash-merged,
so the pushes landed on dead branches and never reached main:

  PR #99  merged 2026-07-20T03:10Z; the pr99 work is 03:18-04:08Z
  PR #100 merged 2026-07-20T03:37Z; the pr100 work is 03:40-04:07Z

Nothing was overwritten and nobody force-pushed — the merges simply happened
mid-session while the work continued. Re-applied here onto current main.

Recovered — module-api-exception.md:
- narrowing proviso reframed from prohibition to AGPL-3.0 §7 ¶2 self-removal
  (the prior "you may not narrow it … while retaining it in name" is a
  non-permissive term outside §7(a)-(f), hence a §10 further restriction)
- a second pass removed the residual "not available in name" sentence, which
  was the same defect in smaller form
- Module API boundary reframed from "are not licensed for combination" (reads
  as a new denial of rights) to "not covered by this permission" (scope)
- grantor is "the copyright holders", per the Classpath tradition and the DCO
  reality that many people hold the copyright

Recovered — module-commercial-license.md:
- §1 forward-entitlement vs Surviving-Held-Copies split (was an internal
  contradiction with §7)
- license-keys-are-distribution-credentials-only clause (§6)
- notice-and-cure termination for material breach (§8) — closes the
  rights-without-remedy gap without touching held copies
- §3 cross-reference corrected from section 5 to section 7
- survival list, change-of-control notice + one-time domain redesignation,
  grant verbs, taxes and no-support boilerplate, defined-term punctuation

Recovered — trademark-policy.md (npm namespace out of the Marks definition
into distribution-channel control), provenance-policy.md (attribution
mechanics), and legal/counsel-review-memo.md (the counsel cover memo, new).

Recovered — marketplace-v1.md: §10 dispositions on the seven items the
Resolved block had already decided, and a partial-refund no-op step in §7's
test plan. Re-applied surgically rather than by file copy, because PR #101
added newer §8 counsel-table content to this file after the merge; that work
is preserved (verified).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
zaridan added a commit that referenced this pull request Jul 21, 2026
…ow (#108)

* docs(legal): recover review fixes that missed the #99/#100 merge window

These changes were pushed to docs/ht-5-licensing-decisions and
docs/ht-5-legal-texts AFTER those branches' PRs had already been squash-merged,
so the pushes landed on dead branches and never reached main:

  PR #99  merged 2026-07-20T03:10Z; the pr99 work is 03:18-04:08Z
  PR #100 merged 2026-07-20T03:37Z; the pr100 work is 03:40-04:07Z

Nothing was overwritten and nobody force-pushed — the merges simply happened
mid-session while the work continued. Re-applied here onto current main.

Recovered — module-api-exception.md:
- narrowing proviso reframed from prohibition to AGPL-3.0 §7 ¶2 self-removal
  (the prior "you may not narrow it … while retaining it in name" is a
  non-permissive term outside §7(a)-(f), hence a §10 further restriction)
- a second pass removed the residual "not available in name" sentence, which
  was the same defect in smaller form
- Module API boundary reframed from "are not licensed for combination" (reads
  as a new denial of rights) to "not covered by this permission" (scope)
- grantor is "the copyright holders", per the Classpath tradition and the DCO
  reality that many people hold the copyright

Recovered — module-commercial-license.md:
- §1 forward-entitlement vs Surviving-Held-Copies split (was an internal
  contradiction with §7)
- license-keys-are-distribution-credentials-only clause (§6)
- notice-and-cure termination for material breach (§8) — closes the
  rights-without-remedy gap without touching held copies
- §3 cross-reference corrected from section 5 to section 7
- survival list, change-of-control notice + one-time domain redesignation,
  grant verbs, taxes and no-support boilerplate, defined-term punctuation

Recovered — trademark-policy.md (npm namespace out of the Marks definition
into distribution-channel control), provenance-policy.md (attribution
mechanics), and legal/counsel-review-memo.md (the counsel cover memo, new).

Recovered — marketplace-v1.md: §10 dispositions on the seven items the
Resolved block had already decided, and a partial-refund no-op step in §7's
test plan. Re-applied surgically rather than by file copy, because PR #101
added newer §8 counsel-table content to this file after the merge; that work
is preserved (verified).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* docs(legal): apply CodeRabbit findings on #108 — grace window, open-items, fragment

Two Majors applied, one Minor applied, one Minor rejected with reason.

MAJOR — grace window vs immediate revocation (module-commercial-license.md §7).
The §7 summary bullet applied the configuration-export grace window to
termination "whether by full refund or by revocation for fraud," while §8's
revocation paragraph says revocation causes "immediate decommissioning."
Direct contradiction, and it contradicted marketplace-v1 §10.11 as well
(revoke decommissions immediately, no grace). Grace window now scoped to
full-refund termination only.

MAJOR — resolved items under the decision-points list (marketplace-v1 §10).
Partially valid: the "Still genuinely open" line already named only §10.1,
.2, .4, .5, .7 correctly, so the framing was right — but the numbered list
mixed closed and open items, and §10.3 still read "needs explicit sign-off"
inside an item titled SIGNED OFF. Added an explicit reading note at the head
of the list and rewrote §10.3's residual imperative in the past tense.

MINOR — dangling "Which" fragment (module-api-exception.md drafting notes).
An artifact of my own earlier edit; the real sentence appears later in the
same note. Removed.

MINOR REJECTED — capitalizing "outsourced support agents" to "Agents".
"Module" was capitalized (it IS a defined term in this document, at §1), but
"Agents" is not defined anywhere in this License. Capitalizing an undefined
term in a contract implies a definition that does not exist, which is worse
drafting than the plain-English original. The repo vocabulary rule governs
product/schema/doc language, not defined-term convention inside a contract.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* docs(legal): strike fabricated TJ attributions before this reaches counsel (HT-100)

An audit on 2026-07-20 searched every message TJ sent across all working
sessions. Three attributions in this branch cite decisions he never made:

1. legal/counsel-review-memo.md told outside counsel that a 14-day refund window,
   a 7-day config-export grace, and immediate-decommission-on-revocation-only were
   'per marketplace-v1.md §10 resolutions, TJ 2026-07-19'. Zero human messages
   contain any of those terms. Counsel would have read it as a client instruction
   and drafted binding commercial terms around figures nobody chose.
2. legal/module-commercial-license.md carried the same figures as 'CONFIRMED by TJ
   2026-07-19'.
3. marketplace-v1.md attributed the tarball-only distribution decision to TJ with
   'per TJ's decision'.

All three now state plainly that the figures are placeholders, that the
attribution was false, and that they await TJ's actual decision. The counsel memo
carries an explicit warning not to draft against them.

Also corrected the '## 10. Decision points' reading note, which declared every
dated disposition closed and instructed readers that 'confirm'/'needs sign-off'
wording inside them was historical. Several of those dispositions record decisions
TJ never made, so the note would have closed the door on the audit that found
them. A dated disposition is now a claim to verify, not a closure.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant