Skip to content
Historical revision — this record as it stood on 1 July 2026, not the current version. View the current record →

How to federate archives via content mounts

Content mounts allow one knowledge instance to read article content from a second instance's local path without copying files. The reading instance renders the mounted content as if it were native, with wikilinks resolving within their source graph. This guide covers declaring a secondary mount in knowledge.toml, verifying the mount is live, and accessing articles from the federated source.

For the federation architecture, see federation-via-content-mounts. For the knowledge engine that processes mount declarations, see app-mediakit-knowledge.

Before you begin

You need:

  • Two running app-mediakit-knowledge instances on the same host or on hosts with a shared filesystem (NFS or equivalent)
  • Read access from the primary instance's process user to the secondary instance's content directory
  • knowledge.toml write access on the primary instance

Step 1: Confirm the secondary content path

On the host running the secondary instance, locate its content directory. The path is the content_root value in the secondary instance's knowledge.toml:

grep content_root /path/to/secondary/knowledge.toml
# example output: content_root = "/srv/wiki/media-knowledge-projects"

Confirm the primary instance's process user can read the path:

sudo -u <wiki-process-user> ls /srv/wiki/media-knowledge-projects

If the path is on a remote host, mount it before proceeding. The engine reads mount sources at startup; a path that is absent at that point causes the mount to be skipped with a warning in the log.

Step 2: Declare the mount in knowledge.toml

Open the primary instance's knowledge.toml and add a [mount](/wiki/mount) entry:

[mount](/wiki/mount)
source = "/srv/wiki/media-knowledge-projects"
prefix = "projects"

source is the absolute path to the secondary content directory. prefix is an optional namespace string that prevents slug collisions when both instances define articles with the same slug. With prefix = "projects", an article with slug topic-co-location-methodology in the secondary archive resolves as projects/topic-co-location-methodology in the primary.

Omit prefix only when you are certain no slug appears in both instances.

Step 3: Restart the wiki engine

Apply the configuration by restarting the service:

sudo systemctl restart app-mediakit-knowledge

The engine reads knowledge.toml once at startup. A [mount](/wiki/mount) entry added after initial start has no effect until the service restarts.

Step 4: Verify the mount is live

Check the startup log for the mount confirmation line:

journalctl -u app-mediakit-knowledge --since "1 minute ago" | grep -i mount
# expected: Mounted secondary archive at prefix=projects (N articles)

If the output shows 0 articles, confirm that the source path is readable and contains .md files at the expected depth. If the path is absent, the log line reads Mount source not found — skipping rather than a startup error.

Step 5: Access mounted articles

Navigate the primary instance to confirm articles from the secondary archive are available. With prefix = "projects" and a secondary article at slug topic-co-location-methodology, the URL is:

https://<primary-domain>/how-to/projects/topic-co-location-methodology

Wikilinks within mounted articles resolve against the secondary archive's own link graph. A [topic-regional-markets-system](/wiki/topic-regional-markets-system) link inside a mounted article resolves within the secondary graph, not the primary — cross-graph links render as red links.

See also

Important Information

Important Information

Corporate structure. PointSav Digital Systems ("PointSav") is a trade name of Woodfine Capital Projects Inc. ("Woodfine"). PointSav does not itself offer, sell, or solicit any security. Any securities offering associated with Woodfine's real-property direct-hold solutions is made exclusively by Woodfine, and only by means of the applicable Private Placement Memorandum.

No investment advice. This wiki's content is provided for engineering, operational, research, and development purposes. Nothing on this wiki constitutes investment advice or a solicitation to invest in any Woodfine partnership or direct-hold solution.

Intellectual property. The PointSav name, trade name, wordmark, and marks, together with all current and future PointSav- and Totebox-branded products, services, and offerings — and the software, source code, documentation, design system, and all related materials — are proprietary to Woodfine and its affiliates, except for components identified as open source. No rights are granted except as expressly set out in a written license or agreement. See TRADEMARK.md in this repository for the full trademark notice.

Open source components. Portions of the platform are made available under permissive open-source licenses identified in the accompanying repository. Use of those components is governed by their respective license terms.

No warranty; informational use. Content on this wiki is provided for general informational purposes only and does not constitute a representation, warranty, or commitment with respect to product functionality, availability, pricing, or roadmap. Some articles describe planned or intended features, capabilities, and milestones — language such as "planned," "intended," "targeted," "may," and "expected" marks this forward-looking content, which is subject to change and does not constitute a commitment regarding future performance.

Confidentiality. Where an article describes an operational or deployment detail that is not intended for public disclosure, that article is not published on this wiki. Content here is general-purpose engineering documentation, not customer-specific configuration.

Jurisdiction. Woodfine Capital Projects Inc. is organized in British Columbia, Canada. References to the Sovereign Data Foundation on this wiki describe a planned or intended initiative only, not a current equity holder or active governance body.

Changes to this notice. PointSav may update this notice from time to time; the version posted on this page governs.

Not a filing system. This wiki is not a securities filing system, an electronic disclosure repository, or a substitute for SEDAR+ or any other regulatory filing system. Formal securities filings are made through the applicable regulatory filing system, not through this wiki.

Full disclaimer. This notice supplements, and does not replace, the full Disclaimers article. In the event of any conflict, the full Disclaimers article governs.

Read the full disclaimer →