Authentication
Goals
Reporting
Instructions for downloading reports
Moderne architecture
To help you understand how the Moderne Platform works and how it interacts with your environment and services, this document will:
Sensitive data flow
To give you a better understanding of how sensitive artifacts flow through Moderne services and the services they connect to, this document will:
User roles
| Action | Everyone | Administrators |
GitHub permissions
Moderne uses a GitHub OAuth application to perform various actions on your behalf. Below is an explanation of those permissions and how they're used by Moderne.
Interactions with git when applying changes
The Moderne Platform consists of a set of serialized Lossless Semantic Trees (LSTs). Inside each LST is a record of the repository that the LST was produced from as well as the branch and commit that it was produced from.
Routing requests to agents
In most enterprise environments, deployments of developer tooling like source control management (SCM) systems and artifact repositories are complex and varied. There may be multiple SCM systems on isolated network segments.
How LST artifacts are produced
Moderne operates on a format-preserving and type-attributed Lossless Semantic Tree (LST) which is an intermediate, compiler-produced representation of the code. This LST can be projected losslessly back to the original source code (including all of its original formatting) but contains far more information than the text of the original code.
Supported source code managers (SCMs)
Moderne currently supports most Git-based SCMs:
Lossless semantic trees
A Lossless Semantic Tree (LST) is a tree representation of code. Unlike the traditional Abstract Syntax Tree (AST), OpenRewrite's LST offers a unique set of characteristics that make it possible to perform accurate transformations and searches across a repository: