Automattic / Automattic/docspress

[Feature] Allow Publishing several repositories to one site: Either Sharing or supporting more robust root-slug

Open
#36 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
27
Forks
7
PR merge metrics
No merged PRs in 30d

Description

What we're trying to do:

Current root-slug is both the URL prefix and the ownership boundary

Maintain several WordPress plugins in separate repos under 1 parent page and publish each's repos docs all to one self-hosted DocsPress site under a common parent (/wordpress-plugins/mantle/, /wordpress-plugins/linchpin-blocks/). Each repo runs the Action independently. I couldn't find a configuration would support this fully even passing a "root-slug" because of validation. So it kind of works(ish) out of the box where you can.

The underlying issue :

root-slug serves two purposes at once: the URL prefix, and the ownership boundary that scopes deletion (src/sync.js:129-135). Grouping repositories needs those to differ: a shared prefix with separate ownership.

Then five findings, each with output:
1. Multi-segment root-slug is flattened — slugify()
2. Pre-creating the parent page doesn't help — flattening precedes any WP call
3. Re-parenting doesn't survive — parentKey: null + absolute links baked into content
4. Sharing one root-slug deletes pages
5. _docspress_docs_root collapses both products into one root based on the current implementation

Tested against wordpress-0.10.5

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with src/sync.js:129-135, then trace slugify(), parentKey handling, and _docspress_docs_root to understand how URL prefixes and ownership are coupled. Compare the behavior against the five findings in the issue; done should allow independently published repositories to share a parent URL without deleting or collapsing each other's pages.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, wordpress
Domain
devtools, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.