Skip to content

Lesson 6 · boundaries

Monorepos, services and IPC

Communication semantics matter alongside transport.

A monorepo is a way to organize files. It does not decide whether separately licensed components form a combined work, and moving files to another repository does not change what a program actually does.

Independent programs often communicate through pipes, command arguments or network APIs. But a tightly coupled exchange of complex internal structures can undermine a simple separate-process claim. Shared memory and linked plug-ins need particular care.

The supplied refactor permits changing the implementation into a general-purpose utility with plain input and output. Choose the transport and semantics of that new architecture together. A REST label applied to the same intimate integration is not a complete repair.

When important semantics are not known, the solver reports needs review and identifies the missing boundary evidence. It does not manufacture certainty from an edge label.

Try it: Refactor the integration

A GPL utility is currently bundled into a proprietary application. You may replace the integration with an independent subprocess using plain input/output, or a separate REST service. Preserve the utility and its source offer.

Before inspecting the result

What does this supplied release need before its modeled requirements are met?

Prediction

Project boundary

2 components
bundleappLicenseRef-ProprietarylibraryGPL-3.0-only
Dependency relationships
From → toConnectionSemantics
app → libraryintimate

Supplied facts

Distribution
binary
Network interaction
No
Intended use
internal
Evaluation date
2026-10-24
Policy
learning

These facts define the simulation. Evidence declarations stand in for actual corresponding source, relinkable objects and release materials.

Components

Declared license
LicenseRef-Proprietary
Modified files
None
Artifact
code

Third-party grants remain fixed unless this scenario supplies authority to change them.

Project artifacts

Evidence artifact format

Source offers contain “component: id” and “source: https://…” on separate lines. Covered-file offers also list the covered paths. Relinking declarations contain “replace-compatible-library” for dynamic linking or “relink-object-files” for static linking, and “reverse-engineering-permitted”. These declarations model supplied release artifacts.

License reference

permissions
commercial-use, modifications, distribution, private-use
conditions
include-copyright, include-license
limitations
liability, warranty
Read authoritative terms ↗

Expression builder

Each row is one selectable alternative. AND retains every term in a row.
AlternativeRequired licenses
1MIT AND LGPL-3.0-only
2Apache-2.0 AND LGPL-3.0-only
Results appear after submission.