Skip to content

release: promote dev to prod — Homeport SDK 1.0.0#49

Open
tony-nexartis wants to merge 14 commits into
prodfrom
dev
Open

release: promote dev to prod — Homeport SDK 1.0.0#49
tony-nexartis wants to merge 14 commits into
prodfrom
dev

Conversation

@tony-nexartis

Copy link
Copy Markdown
Contributor

Promotes the merged Homeport rebrand (#47) to prod.

On merge this triggers:

  • deploy-docs.yml → homeport-sdk.nexartis.com (already live via feature-branch deploys; this hands ownership to CI)
  • deploy-redirect.yml → legacy nnn-sdk 301 workers (already live, same)
  • release-please.yml → notes: 1.0.0 was published manually on 2026-07-18 (npm has it, --provenance=false); verify release-please treats 1.0.0 as released (manifest at 1.0.0) and does not attempt a duplicate publish. Provenance resumes with the first CI-published release (1.0.1+/1.1.0).

Per workspace policy: human merges.

Pegasus HB3 and others added 14 commits July 5, 2026 06:33
Ships the repo's Voice-First 1.0 T1 train items and consolidates the
delivered surfaces into README + docs/PRODUCT_ARCHITECTURE.md (or the
repo's authoritative architecture doc). Removes stale roadmap and
planning docs whose content is now current-state documentation.

Highlights per repo are enumerated in workspace-level
MASTER-RELEASE-ROADMAP.md (train completion record). Follow-ups and
staged code are tracked in each repo's docs/ISSUES.md or the
Staged-for-wiring section of the architecture doc.

Validation: pnpm run validate green in the worktree.
Signed-off-by: Tony <tony@nexartis.com>
feat(orchestration): Voice-First 1.0 T1 — delegation grant/revoke/check SDK methods
* chore(prod): release 1.2.0

* chore(prod): release 1.2.1

* chore(prod): release 1.2.2

---------

Signed-off-by: Pegasus HB3 <pegasus@nexartis.com>
Co-authored-by: Pegasus HB3 <pegasus@nexartis.com>
Co-authored-by: Lunavega888 <laura@nexartis.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Tony Rose <djsquircle+git@gmail.com>
Co-authored-by: Jayme V <jaime@nexartis.com>
chore: sync prod 1.3.0 release-please bump into dev
* chore: baseline SDK foundation

Signed-off-by: Pegasus HB3 <pegasus@nexartis.com>

* fix: address baseline review comments

Signed-off-by: Pegasus HB3 <pegasus@nexartis.com>

---------

Signed-off-by: Pegasus HB3 <pegasus@nexartis.com>
Co-authored-by: Pegasus HB3 <pegasus@nexartis.com>
BREAKING CHANGE: package renamed from @nexartis/nexartis-nanda-node-sdk;
NnnClient->HomeportClient, NnnError->HomeportError, NnnErrorCode->
HomeportErrorCode; log prefix [homeport-sdk]; env NNN_*->HOMEPORT_*.

- identity: package/README/community-health/typedoc/release-please ->
  @nexartis/homeport-sdk, docs https://homeport-sdk.nexartis.com,
  repo Nexartis/homeport-sdk; CHANGELOG reset (old archived)
- src: full symbol rename; version drift fixed via scripts/gen-version.mjs
  + prebuild (SDK_VERSION generated from package.json); examples use
  https://homeport.example.com placeholder
- tests: +3 namespace suites (agents/trust/orchestration incl. SSE +
  delegation): 162 -> 202 tests, all green; typecheck + build clean
- docs site: workers homeport-sdk-docs[-dev] on homeport-sdk[-dev]
  .nexartis.com; landing rebranded (HomeportClient, CubiCube managed
  line); playwright smoke suite added (closes NNN-SDK-AUDIT-010)
- NEW redirect-worker/: 301 nnn-sdk[-dev].nexartis.com -> new domains
  (6/6 unit tests); deploy-redirect.yml workflow
- docs/REBRAND-RUNBOOK.md: operator checklist (repo rename, tag
  relocation, CF domain provisioning, publish gate, npm deprecate)

Signed-off-by: Tony Rose <tony@nexartis.com>
Signed-off-by: Tony Rose <tony@nexartis.com>
…e, ignore test artifacts

- pnpm-lock.yaml was missing @playwright/test + vitest (added to
  package.json in the rebrand but never locked) — frozen installs failed
- landing e2e npm/yarn/bun tab locators hit strict-mode violations
  (npm matched pnpm); use exact matching
- gitignore test-results/ and playwright-report/

Signed-off-by: Tony Rose <tony@nexartis.com>
- proper tablist/tabpanel structure for install tabs (aria-required-children, critical)
- side-card headings + code-comment tokens to text-muted (color-contrast, serious)
- footer columns h4 -> h3 (heading-order)

Signed-off-by: Tony Rose <tony@nexartis.com>
…repo)

Signed-off-by: Tony Rose <tony@nexartis.com>
…rotocol credit, drop trademark glyph

Signed-off-by: Tony Rose <tony@nexartis.com>
…rect-worker dev env flag

Signed-off-by: Tony Rose <tony@nexartis.com>
…lanned scope in ROADMAP

Signed-off-by: Tony Rose <tony@nexartis.com>
Homeport SDK 1.0.0 — full rebrand from nexartis-nanda-node-sdk
@augmentcode

augmentcode Bot commented Jul 19, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Summary: Promotes the Homeport SDK rebrand and release setup from dev to prod, establishing @nexartis/homeport-sdk as the stable 1.0.0 package identity.

Changes:

  • Rebrands community health files, docs, examples, and core SDK symbols from NNN to Homeport.
  • Resets release-please manifest to 1.0.0 and updates publish/release workflows to target @nexartis/homeport-sdk.
  • Adds scripts/gen-version.mjs + prebuild to generate src/core/version.ts from package.json.
  • Adds a new Cloudflare redirect-worker/ and a deploy-redirect.yml workflow to 301 legacy docs hostnames to the new docs domain.
  • Updates TypeDoc site worker branding/domain and adds Playwright/Vitest smoke coverage for the landing page and redirect worker behavior.
  • Archives pre-rebrand changelog history into CHANGELOG.pre-homeport.md and streamlines CHANGELOG.md for the new package line.

Technical Notes: Release automation, docs deploy, and provenance publishing are updated to the new repository/package identity; legacy hostnames are preserved via redirects during the deprecation window.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Review completed. 4 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

working-directory: redirect-worker
run: pnpm install --frozen-lockfile || pnpm install

- name: Deploy to Cloudflare (dev)

@augmentcode augmentcode Bot Jul 19, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

In .github/workflows/deploy-redirect.yml line 61, the workflow deploys --env dev and then --env prod in the same job/environment; if the dev deploy fails (missing dev route/domain, transient API error), it will block the prod redirect deploy as well. Is it intended that production promotion depends on the dev deployment succeeding?

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.


- name: Install redirect-worker dependencies
working-directory: redirect-worker
run: pnpm install --frozen-lockfile || pnpm install

@augmentcode augmentcode Bot Jul 19, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

In .github/workflows/deploy-redirect.yml line 59, pnpm install --frozen-lockfile || pnpm install effectively disables lockfile enforcement and can change resolved versions at deploy time (including wrangler transitive behavior). That can make production deployments non-reproducible and harder to debug if a deploy starts failing without a source change.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

Comment thread README.md
@@ -1,89 +1,75 @@
# @nexartis/nexartis-nanda-node-sdk
<p align="center">
<a href="https://github.com/Nexartis/homeport"><img src="https://raw.githubusercontent.com/Nexartis/homeport-sdk/dev/.github/homeport-header.webp" alt="Homeport — the open-source, self-hostable NANDA node" width="800" /></a>

@augmentcode augmentcode Bot Jul 19, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

In README.md line 2, the header image is fetched from the dev branch (raw.githubusercontent.com/.../dev/...), so a future change to dev could break the image for npm/GitHub readers of the released package. Using a stable ref (default branch or a tag) helps keep the README render durable across releases.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

export default {
async fetch(request: Request, env: Env): Promise<Response> {
const url = new URL(request.url);
const target = env.TARGET.replace(/\/+$/, "");

@augmentcode augmentcode Bot Jul 19, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

In redirect-worker/src/worker.ts line 20, env.TARGET.replace(...) will throw if TARGET is missing/empty at runtime, which would turn a misconfiguration into a 500 rather than a redirect. Given this worker is part of the deprecation window UX, it may be worth ensuring misconfig fails in a more controlled way.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ac2f94bd8c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

baseUrl: 'https://nanda.nexartis.com',
apiKey: process.env.NNN_API_KEY,
const client = new HomeportClient({
baseUrl: 'https://homeport.example.com',

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Require a real base URL for runnable examples

The examples are still advertised as runnable with only HOMEPORT_API_KEY set, but this rebrand hard-codes the reserved placeholder https://homeport.example.com in the top-level examples. Anyone following examples/README.md and running them verbatim now sends every SDK call to a non-reachable placeholder instead of their Homeport node, so the examples fail before demonstrating the SDK; read a HOMEPORT_BASE_URL env var or document that this literal must be replaced.

Useful? React with 👍 / 👎.

Comment thread typedoc-site/package.json
"deploy:dev": "wrangler deploy --env dev",
"deploy:prod": "wrangler deploy --env prod"
"deploy:prod": "wrangler deploy --env prod",
"test:e2e": "vitest run tests/redirect-worker.spec.ts && playwright test"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Stage docs before running docs-site E2E tests

This new test:e2e script launches Playwright against ./dist through playwright.config.ts, but the script never generates or stages that directory and typedoc-site/dist is gitignored. On a clean checkout following the new docs-site README (cd typedoc-site && pnpm run test:e2e), the landing and /api/ smoke tests will serve an empty/missing tree; make the script run the root docs staging step first or require a pre-staged dist explicitly.

Useful? React with 👍 / 👎.

@kilo-code-bot

kilo-code-bot Bot commented Jul 19, 2026

Copy link
Copy Markdown

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (60+ files)
  • src/core/client.ts, client.test.ts
  • src/core/errors.ts, errors.test.ts
  • src/core/retry.ts, retry.test.ts
  • src/core/circuit-breaker.ts
  • src/core/logger.ts, logger.test.ts
  • src/core/sse.ts, types.ts, version.ts, index.ts
  • src/core/namespace-helpers.ts
  • src/core/namespaces/*.ts (agents, billing, developers, federation, orchestration, trust, webhooks) + tests
  • src/index.ts, scripts/gen-version.mjs, package.json
  • .release-please-manifest.json, release-please-config.json
  • examples/*.ts, examples/README.md, examples/workers-agent/**
  • redirect-worker/**
  • typedoc-site/** (worker, config, tests, public assets)
  • .github/** (workflows, issue templates, PR template)
  • docs/**, AGENTS.md, README.md, CONTRIBUTING.md, GOVERNANCE.md, SECURITY.md, LICENSE, NOTICE, CHANGELOG.md, CHANGELOG.pre-homeport.md, typedoc.json, .gitignore

Notes: This PR promotes the already-merged Homeport rebrand (dev → prod) with no new logic. Changes verified are a consistent mechanical rename (Nnn*Homeport* identifiers, NNN_*HOMEPORT_* env vars, package name, log prefix, docs/URLs) plus new test files for agents, orchestration, and trust namespaces whose assertions match current source behavior. Version fields (package.json, .release-please-manifest.json, src/core/version.ts) are consistent at 1.0.0. No dangling references to old identifiers, no broken imports/exports, no security or runtime-safety issues found in changed lines.


Reviewed by claude-sonnet-5 · Input: 54 · Output: 18.2K · Cached: 1.5M

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.

3 participants