Skip to content

feat(cli): stage the sixty-day publish transition - #7136

Merged
terencecho merged 1 commit into
codex/unified-cli-sharefrom
codex/share-publish-transition
Nov 8, 2026
Merged

terencecho merged 1 commit into
codex/unified-cli-sharefrom
codex/share-publish-transition

Conversation

@terencecho

@terencecho terencecho commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Add a compatibility window for moving new projects from hyperframes publish to hyperframes share. The 60-day clock remains unscheduled: it starts only when a release sets the announced notice timestamp, never on installation or approval.

During the window, legacy publishing keeps its existing behavior and prints a notice to stderr. After the boundary, new projects receive an explicit sharing command and audience guidance; --yes and legacy --public never imply review consent. Existing published URLs remain reachable. Legacy updates stay supported, with a signed-in account required after the window so anonymous or API-key requests cannot silently create a new publication. Existing server handling of missing update targets is unchanged.

Updates the CLI help, README, docs, and bundled skill. Targets #7135; contains only the transition delta on its current integration base.

Validation: full workspace build, CLI rebuild/typecheck, 555 initial CLI command/agent-mode/transition tests and 33 final focused tests pass. Final tests cover the exact 60-day boundary, an unscheduled date through 2099, stored/explicit/team targets, unused IDs, and actual command upload-boundary assertions for OAuth versus anonymous/API-key callers. Built CLI probes verify help, unattended confirmation, stderr notices, and unsupported --json envelopes. Normal commit hooks, formatting, lint, and Fallow pass. Independent adversarial review found the ownership fallback issue above; it is fixed and the recheck is clear. Full CI and CodeQL dispatched explicitly for this non-main base.

@terencecho
terencecho force-pushed the codex/unified-cli-share branch 2 times, most recently from a955b0a to d84b0bc Compare November 4, 2026 04:27
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from 086172e to 4419687 Compare November 4, 2026 04:28
@terencecho
terencecho force-pushed the codex/unified-cli-share branch from d84b0bc to 9aacd2a Compare November 4, 2026 04:32
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from 4419687 to 9680bcd Compare November 4, 2026 04:33
@terencecho
terencecho force-pushed the codex/unified-cli-share branch from 9aacd2a to 15a19b9 Compare November 4, 2026 05:47
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from 9680bcd to fae212e Compare November 4, 2026 05:47
@terencecho
terencecho force-pushed the codex/unified-cli-share branch from 15a19b9 to 545cc86 Compare November 5, 2026 19:04
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from fae212e to b560eee Compare November 5, 2026 19:04
@terencecho
terencecho force-pushed the codex/unified-cli-share branch from 545cc86 to 23158dd Compare November 5, 2026 22:33
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from b560eee to 080b7c8 Compare November 5, 2026 22:33
@terencecho
terencecho force-pushed the codex/unified-cli-share branch from 5461341 to 2f79994 Compare November 6, 2026 22:04
@terencecho
terencecho force-pushed the codex/share-publish-transition branch from 080b7c8 to a4bf4a3 Compare November 8, 2026 07:47
@terencecho
terencecho marked this pull request as ready for review November 8, 2026 07:48

@jrusso1020 jrusso1020 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed at a4bf4a3caedd6e510f4e25f50682a32948ae03c4, only the nine-file transition delta over #7135 at f78dca1bfd559d3b8076d2554d51c3cc03d61d7d (current parent head is an ancestor and remains draft).

No blocking findings. publishTransition.ts:7–18 keeps the clock unscheduled until a release changes the notice timestamp, then gives exactly 60 days. publish.ts:100–101,188 checks the transition before publication and requires the resolved OAuth credential for expired-window legacy targets, including inferred stored/team targets. New projects receive an exit-2 Share command with explicit audience choices; legacy --public and --yes are never forwarded into Share. Notices use stderr through the existing asNotice helper. Existing server behavior for a signed-in update aimed at a missing/inaccessible legacy target is deliberately retained; this is not an existence guarantee.

Validation: full workspace bun run build passed; bundled skill manifest check passed. Gated bun run test src/share/publishTransition.test.ts src/commands/publish.test.ts --maxWorkers=4: 33 passed. Removing the new credential guard causes the two anonymous/API-key command regressions to fail (21 pass, 2 fail); restoring it returns 33 passed. A fresh independent adversarial source pass found no Important issue. No live upload, account mutation, release or deployment was performed. The explicitly dispatched full CI run 42460233258 and CodeQL run 42460235028 both target this exact head and are still in progress; no all-green claim.

Scope is #7136 only; this does not review or release the draft parent’s Share implementation. The release must still choose the announced timestamp.

Need: yes, preserve the migration window · Size: ok · Reuse: project-link readers, checked publish credentials, existing usage errors and notice handling · Simpler: one phase helper and one OAuth credential guard · Structure: fine
Risk: low — while the clock remains unscheduled, current publishing gains only a notice; a future release activating it changes routing and accepted credentials.

— Rames / hf-review

Verdict: APPROVE
Reasoning: The delta preserves the unscheduled compatibility period, closes the inferred-target anonymous/API-key bypass after expiration, and guides new projects toward an explicit sharing choice.

@terencecho
terencecho merged commit 5ff96dc into codex/unified-cli-share Nov 8, 2026
65 checks passed
@terencecho
terencecho deleted the codex/share-publish-transition branch November 8, 2026 08:01
sanetrawiley-sys pushed a commit to sanetrawiley-sys/hyperframes that referenced this pull request Nov 11, 2026
…7135)

* feat(cli): share rendered videos through unified reviews (heygen-com#7135)

* feat(share): attach editable project sources to reviews (heygen-com#7137)

* feat(share): measure local sharing outcomes (heygen-com#7138)

* feat(cli): stage the sixty-day publish transition (heygen-com#7136)

* feat(studio): share review pages from local preview (heygen-com#7140)

Advertise the CLI sharing bridge before bootstrapping it so standalone Studio does not
request unsupported routes. Preserve origin and session checks.

Budget the intended sharing artifact: clean main packs at 8,060,519 bytes versus
8,162,979 with sharing (8,169,168 in CI). Required policy and Unicode tables, bundled
sharing code, and Studio controls account for the growth. Set the packed-only budget
to 8,577,627, following the 5% headroom convention; retain the unpacked cap and all
package checks.

* fix(share): persist refusals and improve CLI retry feedback

* fix(ci): restore render diagnostics and include sharing workspace

* fix(cli): keep sharing owner error codes stable

* fix(share): clarify update feedback and align audience changes

* fix(share): clarify updates and avoid scratch-file rerenders

* fix(cli): report active shares and preserve update channels

* fix(cli): resolve update channel when checking registry

* fix(ci): refresh sharing package budgets after rebase

* fix(share): require consent before uploading project files
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.

2 participants