diff --git a/docs/strategy/naming/arch-snap.md b/docs/strategy/naming/arch-snap.md new file mode 100644 index 00000000..ddb33eb9 --- /dev/null +++ b/docs/strategy/naming/arch-snap.md @@ -0,0 +1,39 @@ +--- +name: arch-snap +type: iip-candidate +surface: SDP Toolbox (IIP hypothesis) +checked: 2026-04-27 +--- + +# arch-snap — Trademark & Domain Check + +## Trademark + +| Aspect | Finding | +|--------|---------| +| Exact USPTO match | **None.** No live or dead registration for "arch-snap" or "archsnap". | +| Similar marks | AIRSNAP (Reg. 5,693,420, Twelve South LLC) — hardware accessories, not software. AVSNAP (ALTINEX) — AV connectivity. ARCH standalone word mark — unrelated. No software-class conflicts. | +| Risk | **Low.** Clean trademark landscape for software. Compound is distinctive enough for registration. | + +## Domain Availability + +| Domain | Status | Details | +|--------|--------|---------| +| arch-snap.com | **Available** | No match at Verisign. | +| archsnap.com | **Taken (parked)** | Registered 2025-07-26 via DropCatch.com 933 LLC. Returns 404, no active website. Domain parking service. | +| arch-snap.ai | **Available** | No WHOIS record. | +| arch-snap.io | **Available** | No match at .io registry. | +| arch-snap.dev | **Available** | Not registered. | + +## Recommendation + +- **Best TM landscape** among all checked names. Low risk. +- **Domain**: hyphenated `arch-snap.com` is free. `archsnap.com` is parked (can be acquired from DropCatch if needed). +- **Proceed with confidence** as working name. If IIP status is earned, register `arch-snap.com` and `.dev`. + +## Sources + +- USPTO TESS: https://tmsearch.uspto.gov/ (searched "arch-snap", "archsnap", "AIRSNAP") +- AIRSNAP Reg. 5,693,420: https://tsdr.uspto.gov/ (Twelve South LLC, hardware accessories) +- ICANN WHOIS: https://lookup.icann.org/ (domain status checks) +- DropCatch: https://www.dropcatch.com/ (archsnap.com parking service) diff --git a/docs/strategy/naming/changepassport.md b/docs/strategy/naming/changepassport.md new file mode 100644 index 00000000..86858498 --- /dev/null +++ b/docs/strategy/naming/changepassport.md @@ -0,0 +1,38 @@ +--- +name: ChangePassport +type: display-name +surface: ChangePassport (display) / sdp-pr-gate (internal) +checked: 2026-04-27 +--- + +# ChangePassport — Trademark & Domain Check + +## Trademark + +| Aspect | Finding | +|--------|---------| +| Exact USPTO match | **None.** No live or dead registration for "ChangePassport". | +| Similar marks | "Passport" is heavily trademarked in software (Class 9). Existing: Passport Software Inc., Skills Passport (Reg. 6,263,592), Northern Trust Passport, Passport Technology Inc. Multiple TTAB proceedings around "Passport" marks. | +| Risk | **Medium-High.** "ChangePassport" itself is unregistered, but "Passport" is crowded in Class 9. Filing would likely receive an office action citing likelihood of confusion. Trademark attorney recommended for full DuPont factor analysis. | + +## Domain Availability + +| Domain | Status | Details | +|--------|--------|---------| +| changepassport.com | **Taken** | Registered 2025-12-04 via Internet Domain Service BS Corp. Redirects to domainsestate.com (for-sale broker). Cloudflare nameservers. | +| changepassport.ai | **Available** | No WHOIS record. | +| changepassport.io | **Available** | No match at .io registry. | +| changepassport.dev | **Available** | Not registered. | + +## Recommendation + +- **Internal use safe.** The `sdp-pr-gate` internal namespace has zero collision risk. +- **Display name workable** but expect trademark friction if filing. Consider whether "Passport" is the right anchor word. +- **Domain**: .com is held by a domain broker (for-sale). Negotiate purchase or proceed with .ai/.io/.dev. + +## Sources + +- USPTO TESS: https://tmsearch.uspto.gov/ (searched "ChangePassport", "Passport" Class 9) +- USPTO TSDR: https://tsdr.uspto.gov/ (verified Reg. 6,263,592 status) +- ICANN WHOIS: https://lookup.icann.org/ (domain status checks) +- Domain broker: https://domainsestate.com/ (changepassport.com listing) diff --git a/docs/strategy/naming/doc-tracer.md b/docs/strategy/naming/doc-tracer.md new file mode 100644 index 00000000..5e685227 --- /dev/null +++ b/docs/strategy/naming/doc-tracer.md @@ -0,0 +1,39 @@ +--- +name: doc-tracer +type: iip-candidate +surface: SDP Toolbox (IIP hypothesis) +checked: 2026-04-27 +--- + +# doc-tracer — Trademark & Domain Check + +## Trademark + +| Aspect | Finding | +|--------|---------| +| Exact USPTO match | **None.** No live or dead registration for "doc-tracer" or "DocTracer". | +| Similar marks | DocTrace (doctrace.com — document issuance platform), DocTracer (PHP documentation generator, GitHub Pages), DocTracker (doctracker.app), Tracer (tracer.ai — brand protection). Apscore International offers "DocTracer" product (apscore.com.au). | +| Risk | **Low-Medium.** No registered trademark blocks the path. "DocTracer" is used as a product name by Apscore International (Australia) — potential common-law rights. Investigate whether Apscore has filed in any jurisdiction. | + +## Domain Availability + +| Domain | Status | Details | +|--------|--------|---------| +| doc-tracer.com | **Available** | No match at Verisign. | +| doctracer.com | **Taken** | Registered since 2010-11-22 via GoDaddy. Privacy-protected. Active nameservers. | +| doc-tracer.ai | **Available** | No WHOIS record. | +| doc-tracer.io | **Available** | No match at .io registry. | +| doc-tracer.dev | **Available** | Not registered. | + +## Recommendation + +- **Moderate risk.** The product name collision with Apscore's DocTracer needs monitoring. If Apscore has common-law rights in relevant jurisdictions, a rename may be needed before commercial launch. +- **Domain**: hyphenated `doc-tracer.com` is free. `doctracer.com` is taken since 2010. +- **Proceed as working name** with contingency plan. Register `doc-tracer.com` preemptively if IIP status is pursued. + +## Sources + +- USPTO TESS: https://tmsearch.uspto.gov/ (searched "doc-tracer", "DocTracer", "DocTrace") +- DocTrace platform: https://doctrace.com/ +- Apscore DocTracer: https://apscore.com.au/ +- ICANN WHOIS: https://lookup.icann.org/ (domain status checks) diff --git a/docs/strategy/naming/enterprise-delivery-governance.md b/docs/strategy/naming/enterprise-delivery-governance.md new file mode 100644 index 00000000..95298bc9 --- /dev/null +++ b/docs/strategy/naming/enterprise-delivery-governance.md @@ -0,0 +1,38 @@ +--- +name: Enterprise Delivery Governance +type: category-name +surface: Enterprise Delivery Governance (hypothesis) +checked: 2026-04-27 +--- + +# Enterprise Delivery Governance — Trademark & Domain Check + +## Trademark + +| Aspect | Finding | +|--------|---------| +| Exact USPTO match | **None.** No registration for the phrase. | +| Similar marks | TopBraid EDG by TopQuadrant — "EDG" stands for "Enterprise **Data** Governance" (not Delivery), no direct conflict. The phrase appears widely in job postings and consulting materials as a generic business/IT governance term. | +| Risk | **High (for trademarking).** Purely descriptive phrase — describes exactly what the product does. USPTO typically rejects under Lanham Act 2(e)(1) as "merely descriptive" unless secondary meaning is demonstrated. Would likely need Supplemental Register initially. "EDG" acronym conflicts with TopBraid EDG. | + +## Domain Availability + +| Domain | Status | Details | +|--------|--------|---------| +| enterprisedeliverygovernance.com | **Available** | No match at Verisign. | +| enterprisedeliverygovernance.ai | **Available** | No WHOIS record. | +| enterprisedeliverygovernance.io | **Available** | No match at .io registry. | +| enterprisedeliverygovernance.dev | **Available** | Not registered. | + +## Recommendation + +- **Weakest candidate for trademarking.** Descriptive phrase, long domain (31 chars). +- **Not a problem now** — this is a hypothesis/category name, not a customer-facing brand. The enterprise GTM team will pick the final name when an ICP signs. +- **Reserve `sdp-edg-*`** as internal namespace. Do not invest in domain registration for the full phrase. +- **Revisit naming** when the enterprise wedge becomes active (separate F-track). + +## Sources + +- USPTO TESS: https://tmsearch.uspto.gov/ (searched "Enterprise Delivery Governance", "EDG") +- TopBraid EDG: https://www.topquadrant.com/topbraid-edg/ (Enterprise Data Governance, not Delivery) +- ICANN WHOIS: https://lookup.icann.org/ (domain status checks) diff --git a/docs/strategy/naming/sdp-pr-gate.md b/docs/strategy/naming/sdp-pr-gate.md new file mode 100644 index 00000000..c1d052cb --- /dev/null +++ b/docs/strategy/naming/sdp-pr-gate.md @@ -0,0 +1,36 @@ +--- +name: sdp-pr-gate +type: internal-namespace +surface: ChangePassport (internal) +checked: 2026-04-27 +--- + +# sdp-pr-gate — Trademark & Domain Check + +## Trademark + +| Aspect | Finding | +|--------|---------| +| Exact USPTO match | **None.** No registration for "sdp-pr-gate", "sdpprgate", or "pr-gate". | +| Similar marks | "PR gate" is a generic industry term (pull request gate) used by Datadog, Semgrep, and widely in DevOps literature. No one has trademarked it. "SDP" has various registrations but none combined with "pr-gate". | +| Risk | **Low.** Highly specific compound. Low collision risk. However, "PR gate" being generic/descriptive could make enforcement harder if challenged as merely descriptive (Lanham Act 2(e)(1)). | + +## Domain Availability + +| Domain | Status | Details | +|--------|--------|---------| +| sdp-pr-gate.com | **Available** | No match at Verisign. | +| sdp-pr-gate.ai | **Available** | No WHOIS record. | +| sdp-pr-gate.io | **Available** | No match at .io registry. | +| sdp-pr-gate.dev | **Available** | Not registered. | + +## Recommendation + +- **Cleanest result** — all 4 domains available, zero trademark conflicts. +- **Internal namespace only.** This name is not customer-facing, so trademark risk is minimal regardless. +- **No action needed.** Lock confirmed. + +## Sources + +- USPTO TESS: https://tmsearch.uspto.gov/ (searched "sdp-pr-gate", "sdpprgate", "pr-gate") +- ICANN WHOIS: https://lookup.icann.org/ (domain status checks) diff --git a/docs/strategy/sdp-brand-architecture.md b/docs/strategy/sdp-brand-architecture.md new file mode 100644 index 00000000..3b21da2c --- /dev/null +++ b/docs/strategy/sdp-brand-architecture.md @@ -0,0 +1,164 @@ +--- +title: SDP Brand Architecture +status: v1 +owner: Andrei +beads: sdplab-mbhg (F153) +created: 2026-04-27 +source: docs/strategy/2026-04-27-sdp-product-layering-4d.md +--- + +# SDP Brand Architecture + +One-page map of the SDP product family: names, audiences, namespaces, and naming rules. + +> Authoritative source for product taxonomy: [SDP Product Layering 4D Memo](2026-04-27-sdp-product-layering-4d.md) (v3, post-IIP-council). +> This document derives from the memo and makes the brand structure actionable. + +## Brand Family Map + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ SDP Product Family │ +├───────────────┬──────────────────┬──────────────┬───────────────────────┤ +│ Surface │ Working name │ Audience │ Paid │ +├───────────────┼──────────────────┼──────────────┼───────────────────────┤ +│ Lab │ sdp_lab │ Researchers │ No (feeds others) │ +│ Toolbox │ SDP Toolbox │ Developers │ No (freemium funnel) │ +│ └ IIP flag │ (bare name) │ Non-SDP ICPs │ Independent at extract│ +│ Toolkit │ sdp CLI │ Developers │ No │ +│ Operator Mode │ sdp operator │ Eng managers │ No (price hypothesis) │ +│ ChangePassport│ ChangePassport │ Reviewers │ Yes (first paid wedge)│ +│ └ Internal │ sdp-pr-gate │ — │ — │ +│ Ent. Delivery │ TBD │ Enterprise │ Yes (hypothesis) │ +│ Substrates │ sdp-*-core │ Internal │ No (semver contracts) │ +└───────────────┴──────────────────┴──────────────┴───────────────────────┘ +``` + +## Surface Details + +| # | Surface | Kind | Working name | Internal namespace | Audience | Paid status | +|---|---------|------|-------------|-------------------|----------|-------------| +| 1 | SDP Lab | Research workspace | `sdp_lab` | `sdp_lab` | Researchers | No — feeds others | +| 2 | SDP Toolbox (with IIP flag) | Subordinate freemium funnel | `SDP Toolbox` for SDP tools; bare names for IIPs | `sdp-toolbox-*` / bare | Developers (funnel); non-SDP ICPs (IIP) | Free (Toolbox); per-IIP pricing at extraction (some may stay OSS) | +| 3 | SDP Toolkit | Meta-distribution | `sdp` CLI | `sdp` | Developers | Free | +| 4 | Operator Mode | Default Toolkit Happy Path; stateful orchestration | `sdp` operator commands | `sdp-operator-*` | Engineering managers | Free; provisional pricing hypothesis required before pilot | +| 5 | ChangePassport (display) | Merge-readiness product | `ChangePassport` | `sdp-pr-gate` | Reviewers, boutique consulting | First paid wedge | +| 6 | Enterprise Delivery Governance | Enterprise hypothesis | TBD | `sdp-edg-*` | Enterprise | Future paid | +| 7 | Shared Substrates | Versioned packages | Individually named | `sdp-{evidence,policy,modelgw,context,eval}-core` | Internal | No (contracts) | + +## Display vs Internal Namespace + +Marketing display names may evolve. Internal technical namespaces are locked when first named. + +| Surface | Display name (may change) | Internal namespace (locked) | Lock scope | +|---------|--------------------------|----------------------------|------------| +| ChangePassport | `ChangePassport` | `sdp-pr-gate` | Go packages, CLI slugs, env vars, semver tags, DB tables | +| Enterprise Delivery Governance | TBD | `sdp-edg-*` | Reserved | +| Operator Mode | Operator Mode | `sdp-operator-*` | Go packages, CLI slugs | +| Substrates | individual | `sdp-*-core` | Go packages, semver tags | + +## IIP Flag Mechanism + +Tools inside SDP Toolbox with value outside SDP carry `standalone: true` and follow Incubated Independent Product rules: + +- No `sdp-` prefix from inception +- Standalone `go.mod` (zero `replace` directives, zero `internal/sdp-*` imports) +- Module `AGENTS.md` ≤60 lines, written as if SDP did not exist (no `sdp-` references in cold-start text) +- Named IIP lead (individual, not team) required +- `commercial_hypothesis.md` required (target non-SDP ICPs, top 3 competitors, willingness-to-pay range, kill criteria) +- At least 3 documented customer-discovery interviews before earning `standalone: true` +- Founder/owner approval required for IIP promotion +- Permissive license (Apache-2.0 / MIT) +- `BRAND.md` with trademark transfer plan + +Current IIP hypotheses (neither has earned `standalone: true`; no code yet): `arch-snap`, `doc-tracer`. Each requires named lead + hypothesis doc + discovery interviews before IIP status. + +--- + +## Naming Policy + +### When `sdp-` Prefix Is Required + +| Category | Rule | Examples | +|----------|------|---------| +| Toolkit CLI | Always `sdp` | `sdp scout`, `sdp metrics` | +| Toolbox tools (SDP-funnel) | `sdp-` prefix | `sdp-scout`, `sdp-metrics`, `sdp-index` | +| Internal namespaces | `sdp-` prefix | `sdp-pr-gate`, `sdp-operator`, `sdp-edg-*` | +| Shared Substrates | `sdp-*-core` | `sdp-evidence-core`, `sdp-policy-core` | +| CLI subcommands | `sdp ` | `sdp orchestrate`, `sdp ready` | + +### When `sdp-` Prefix Is Forbidden + +| Category | Rule | Examples | +|----------|------|---------| +| IIP candidates | No `sdp-` prefix from inception | `arch-snap`, NOT `sdp-arch-snap` | +| IIP module names | Bare name only | `doc-tracer`, NOT `sdp-doc-tracer` | +| IIP AGENTS.md | Written as if SDP did not exist | No `sdp-` references in cold-start text | + +### When `sdp-` Prefix Is Optional + +| Category | Rule | Notes | +|----------|------|-------| +| Display names | Decoupled from namespace | `ChangePassport` (display) vs `sdp-pr-gate` (internal) | +| Working names | Stay working until rename criteria met | `Enterprise Delivery Governance` is a category, not a final name | + +### Working-Name Rename Criteria + +A working name becomes a final name when ALL four criteria are met: + +1. **Domain available** — primary TLD (.com or relevant) is available or acquired +2. **No trademark collision** — USPTO and common-law search returns clear +3. **ICP recognizes the name** — target buyer understands it without explanation +4. **Council/buyer language test passes** — at least 2 external buyers confirm the name fits the product + +Until all four are met, the name stays "working" and may change without migration cost. + +### Display-vs-Internal Namespace Rules + +1. **Display names** live in: README, product-surface docs, marketing pages, blog posts, buyer-facing UI strings. +2. **Internal namespaces** live in: Go package paths, CLI slugs, GitHub App IDs, webhook paths, database tables, environment variables, semver tags. +3. **Lock scope**: once an internal namespace is named, it is locked. Changes require a versioned migration with semver bump and deprecation window. +4. **Display name changes** do NOT trigger internal namespace changes (decoupled by design). + +### Toolbox Tool Naming Rules + +1. Tool name must survive without `sdp-` prefix in case the tool is extracted to its own repo. +2. CLI subcommand format: `sdp ` (prefix handled by CLI routing, not tool name). +3. Module `AGENTS.md` uses tool name without prefix. +4. If a Toolbox tool is promoted to IIP (`standalone: true`), it MUST already have been named without `sdp-` from inception (rule 1). Retroactive renaming is not an allowed path — tools that acquired an `sdp-` prefix cannot become IIPs without a full name change. + +### IIP Naming Rules + +1. No `sdp-` prefix in: module name, repo path, README banners, AGENTS.md cold-start text. +2. Standalone `go.mod` from day one. +3. Independent semver tag prefix (`arch-snap/v0.1.0`, `doc-tracer/v0.1.0`). +4. `BRAND.md` in module root documents trademark transfer plan. +5. Permissive license (Apache-2.0 or MIT) by default. + +## Names to Avoid + +Per competitive research and council consensus: + +- "AI software engineer" — forces a feature war +- "local Copilot" — positions as knockoff +- "on-prem coding assistant" — wrong category +- "sovereign coding agent" — ambiguous geopolitics +- "Perimeter Control Plane" — wrong category (network appliance, not delivery governance) + +## Sources + +- [SDP Product Layering 4D Memo](2026-04-27-sdp-product-layering-4d.md) (v3, authoritative) +- [F150 Product Layering Design](../plans/2026-04-27-f150-product-layering-release-readiness-design.md) +- [Product Surface Reference](../reference/product-surface.md) +- [REPO-BOUNDARY](../architecture/REPO-BOUNDARY.md) +- Memo council synthesis: `council/2026-04-27/synthesis.md` +- IIP council synthesis: `council/2026-04-27-iip/synthesis.md` + +## Trademark & Domain Evidence + +Per-name trademark and domain availability checks: +- [ChangePassport](naming/changepassport.md) — TM medium-high, .com taken (broker) +- [arch-snap](naming/arch-snap.md) — TM low, all hyphenated domains free +- [doc-tracer](naming/doc-tracer.md) — TM low-medium, doctracer.com taken since 2010 +- [sdp-pr-gate](naming/sdp-pr-gate.md) — TM low, all 4 domains free +- [Enterprise Delivery Governance](naming/enterprise-delivery-governance.md) — TM high (descriptive), all free diff --git a/docs/workstreams/backlog/00-153-01.md b/docs/workstreams/backlog/00-153-01.md new file mode 100644 index 00000000..63926d8c --- /dev/null +++ b/docs/workstreams/backlog/00-153-01.md @@ -0,0 +1,37 @@ +--- +ws_id: 00-153-01 +feature_id: F153 +status: done +priority: P2 +size: S +depends_on: [] +--- + +# 00-153-01: Brand Family Map Artifact + +Feature: F153 (sdplab-mbhg) + +## Goal + +Create a one-page brand family map showing all SDP product surfaces with names, target audience, and paid status. Output: `docs/strategy/sdp-brand-architecture.md`. + +## Beads + +- sdplab-mbhg.1 + +## Scope Files + +- `docs/strategy/sdp-brand-architecture.md` — brand family map (new file) + +## Acceptance Criteria + +- [x] Brand family map includes all 7 taxonomy rows: Lab, Toolbox (with IIP flag), Toolkit, Operator Mode, ChangePassport/sdp-pr-gate, Enterprise Delivery Governance, Shared Substrates +- [x] Each surface has: working name, internal namespace, target audience, paid status +- [x] Display-vs-internal namespace decoupling documented (e.g. ChangePassport vs sdp-pr-gate) +- [x] IIP flag mechanism explained (standalone: true/false inside Toolbox) +- [x] References product-layering-4d memo as authoritative source + +## Out of Scope + +- Naming policy (00-153-02) +- Trademark/domain checks (00-153-03) diff --git a/docs/workstreams/backlog/00-153-02.md b/docs/workstreams/backlog/00-153-02.md new file mode 100644 index 00000000..9c2aebe3 --- /dev/null +++ b/docs/workstreams/backlog/00-153-02.md @@ -0,0 +1,37 @@ +--- +ws_id: 00-153-02 +feature_id: F153 +status: done +priority: P2 +size: S +depends_on: ["00-153-01"] +--- + +# 00-153-02: Naming Policy + +Feature: F153 (sdplab-mbhg) + +## Goal + +Define when `sdp-` prefix is required vs forbidden, working-name rename criteria, display-vs-internal namespace decoupling rules, and naming rules for Toolbox tools and IIP candidates. + +## Beads + +- sdplab-mbhg.2 + +## Scope Files + +- `docs/strategy/sdp-brand-architecture.md` — naming policy section (added to existing file) + +## Acceptance Criteria + +- [x] `sdp-` prefix rules: required for Toolkit/Toolbox/substrates, forbidden for IIP candidates, reserved for internal namespaces +- [x] Working-name rename criteria: domain available, no trademark collision, ICP recognizes the name, council/buyer language test passes +- [x] Display-vs-internal namespace decoupling rules with lock scope (Go packages, CLI slugs, env vars, semver tags) +- [x] Toolbox tool naming rules: must survive without `sdp-` prefix if extracted +- [x] IIP naming rules: no `sdp-` prefix from inception, standalone go.mod, AGENTS.md as if SDP did not exist + +## Out of Scope + +- Brand family map (00-153-01) +- Trademark/domain checks (00-153-03) diff --git a/docs/workstreams/backlog/00-153-03.md b/docs/workstreams/backlog/00-153-03.md new file mode 100644 index 00000000..f51bb826 --- /dev/null +++ b/docs/workstreams/backlog/00-153-03.md @@ -0,0 +1,40 @@ +--- +ws_id: 00-153-03 +feature_id: F153 +status: done +priority: P2 +size: S +depends_on: ["00-153-01", "00-153-02"] +--- + +# 00-153-03: Trademark and Domain Check on Key Working Names + +Feature: F153 (sdplab-mbhg) + +## Goal + +Check `ChangePassport`, `arch-snap`, `doc-tracer`, `sdp-pr-gate`, `Enterprise Delivery Governance` for trademark collisions and domain availability (.com, .ai, .io, .dev). + +## Beads + +- sdplab-mbhg.3 + +## Scope Files + +- `docs/strategy/naming/changepassport.md` — trademark + domain check results +- `docs/strategy/naming/arch-snap.md` — trademark + domain check results +- `docs/strategy/naming/doc-tracer.md` — trademark + domain check results +- `docs/strategy/naming/sdp-pr-gate.md` — trademark + domain check results +- `docs/strategy/naming/enterprise-delivery-governance.md` — trademark + domain check results + +## Acceptance Criteria + +- [x] Each name checked for USPTO trademark collisions (live search or database) +- [x] Each name checked for domain availability across .com, .ai, .io, .dev +- [x] Results captured in per-name files under `docs/strategy/naming/` +- [x] Red flags (collisions, taken domains) surfaced with recommendation + +## Out of Scope + +- Brand family map (00-153-01) +- Naming policy (00-153-02)