Skip to content

Commit 39415ef

Browse files
louis-preclaude
andcommitted
Expand step 1 plan with technical concerns
Covers: directory structure, cross-section links, codegen changes, shared assets, sandbox data, misplaced files, git sync, and redirects. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 430dad8 commit 39415ef

1 file changed

Lines changed: 84 additions & 3 deletions

File tree

plan/step_1/README.md

Lines changed: 84 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
Split the single SUMMARY.md into 3 GitBook site sections without reorganizing content within each section. The sidebar within each section preserves the current structure.
44

5-
## Guides
5+
## Sections
6+
7+
### Guides
68

79
Current SUMMARY.md sections that stay in Guides:
810

@@ -13,16 +15,95 @@ Current SUMMARY.md sections that stay in Guides:
1315
- Developer Tools
1416
- Industry Guides
1517

16-
## API Reference
18+
### API Reference
1719

1820
Current SUMMARY.md section that moves to API Reference:
1921

2022
- API Reference (auto-generated endpoint docs, installation, authentication, pagination)
2123

22-
## Brand Guides
24+
### Brand Guides
2325

2426
Current SUMMARY.md sections that move to Brand Guides:
2527

2628
- Device and System Integration Guides
2729
- Device Manufacturer Guidance
2830
- Sandbox data (currently scattered across device-guides/ and developer-tools/)
31+
32+
---
33+
34+
## Technical concerns
35+
36+
### 1. Each GitBook section needs its own root directory
37+
38+
GitBook site sections map to separate spaces, and each space requires its own root directory with its own SUMMARY.md. Files cannot be referenced outside a space's root. The repo would need to look like:
39+
40+
```
41+
repo-root/
42+
├── guides/
43+
│ ├── .gitbook.yaml
44+
│ ├── SUMMARY.md
45+
│ └── (all guide content)
46+
├── api-reference/
47+
│ ├── .gitbook.yaml
48+
│ ├── SUMMARY.md
49+
│ └── (all API endpoint docs)
50+
└── brand-guides/
51+
├── .gitbook.yaml
52+
├── SUMMARY.md
53+
└── (all integration/device docs)
54+
```
55+
56+
This means files must physically move into separate directories — even for step 1.
57+
58+
### 2. Cross-section links become absolute URLs
59+
60+
Within a GitBook space, links use relative markdown paths. Between spaces, links must use absolute URLs (e.g., `https://docs.seam.co/api-reference/access_codes/create`). GitBook's broken link detection does not work across spaces.
61+
62+
Pages that will need link updates:
63+
- Guides link heavily to API Reference endpoints (e.g., "see the `access_codes.create` endpoint")
64+
- Brand Guides link back to Capability Guides (e.g., "see the Access Codes guide")
65+
- API Reference links to Guides for conceptual context
66+
67+
### 3. Codegen pipeline needs updating
68+
69+
The current codegen (`npm run generate``codegen/smith.ts`) assumes a single `docs/` root:
70+
- `summary.ts` splices generated API content into the single SUMMARY.md between anchors (`[Pagination]` and `## Developer Tools`)
71+
- `postprocess.ts` converts absolute URLs to relative paths (assumes single-space structure)
72+
- Generated files are written to `docs/api/`
73+
74+
For step 1, the codegen needs to:
75+
- Write API files to `api-reference/` instead of `docs/api/`
76+
- Generate a standalone SUMMARY.md for the API Reference space
77+
- Update `postprocess.ts` to handle cross-space links (keep absolute URLs for links to Guides/Brand Guides)
78+
79+
### 4. Shared assets must be duplicated
80+
81+
GitBook spaces cannot share assets. Currently all images live in `docs/.gitbook/assets/` and reusable snippets in `docs/.gitbook/includes/`. Each space would need its own copy of any shared assets.
82+
83+
Options:
84+
- Duplicate assets into each space that uses them
85+
- Use a build step to copy shared assets into each space directory
86+
- Audit which assets are used by which section and split accordingly
87+
88+
### 5. Sandbox data lives in the wrong directories
89+
90+
Sandbox pages are currently scattered across `device-guides/sandbox-and-sample-data/` and `developer-tools/sandbox-and-sample-data/`. In step 1, these need to move to the Brand Guides space. Some are referenced from the Developer Tools section in Guides — those references would become cross-section absolute links.
91+
92+
### 6. Files referenced across sections
93+
94+
Some files currently live in one directory but are listed in a different sidebar section:
95+
- `device-guides/reconnecting-an-account.md` is listed under Core Concepts > Connected Accounts
96+
- `device-guides/rate-limits-and-guardrails.md` is listed under Developer Tools
97+
- Various `products/` files appear in Capability Guides
98+
99+
These files need to either move to the correct space or be replaced with cross-section links.
100+
101+
### 7. Git Sync is per-space
102+
103+
Each GitBook space has its own independent Git Sync configuration. With 3 spaces, you configure sync 3 times — each pointing at a different project directory in the same repo and branch. A commit touching files in `api-reference/` only triggers sync for that space.
104+
105+
### 8. Redirects
106+
107+
Every page that changes URL needs a redirect for backward compatibility. The current site publishes under `docs.seam.co/latest/`. If the new sections publish under different URL prefixes (e.g., `/api-reference/`, `/brand-guides/`), all existing URLs need redirects.
108+
109+
Each space's `.gitbook.yaml` can define redirects, but only for pages within that space. Cross-space redirects (old URL in one space, new URL in another) may need to be handled at the DNS/proxy level or via GitBook's site-level redirect settings.

0 commit comments

Comments
 (0)