Client Library for the Activity Master.
- GuicedEE-based client services for Activity Master FSDM operations
- CRTP-style fluent builders and DTOs for type-safe request composition
- Reactive integrations (Vert.x 5 + Mutiny) for async flows
- Token cache helpers and secure propagation of SecurityToken metadata
- JPMS-friendly with ServiceLoader discovery for modules and binders
Add the dependency to your Maven project. Versions are managed via the parent/BOM.
<dependency>
<groupId>com.activity-master</groupId>
<artifactId>activity-master-client</artifactId>
</dependency>- Add the dependency above to your app.
- Register the client module in your GuicedEE bootstrap (e.g., include
ActivityMasterClientModuleInclusion). - Copy
.env.exampleto.envand fill in required values. - Build and run tests:
mvn -B clean verifyEnvironment variables follow the Rules Repository guidance (rules/generative/platform/secrets-config/env-variables.md). Common keys used in local/CI contexts:
- POSTGRES_APP_PASSWORD
- KEYCLOAK_ADMIN_PASSWORD
- JWT_TEST_TOKEN
- USERNAME, USER_TOKEN (for automation/publishing flows where applicable)
Keep secrets out of version control. Use .env locally and GitHub Actions Secrets in CI.
- JPMS-ready; ServiceLoader is used for module/binder discovery.
- Follow RULES and the architecture docs to wire the module correctly within host apps.
This repository consumes the rules/ submodule as the canonical set of enterprise RULES, GUIDES, and GLOSSARY artifacts; host-specific docs (PACT/RULES/GUIDES/IMPLEMENTATION/GLOSSARY) live at the repo root and link back to the submodule.
- PACT -
PACT.mddefines this collaboration and stage gates. - RULES -
RULES.mddeclares scope, stack references, and traceability mandates. - GLOSSARY -
GLOSSARY.mdfollows the topic-first precedence policy and links to every referenced topic glossary. - GUIDES -
GUIDES.mdexplains how to apply the RULES and maps the API surface to the submodule topics. - IMPLEMENTATION -
IMPLEMENTATION.mdcaptures the module layout, diagrams, and commit-ready traceability. - Architecture -
docs/architecture/README.mdindexes the C4/sequence/ERD diagrams produced via the Mermaid MCP server.
- Use the rules index at
rules/generative/data/activity-master/README.mdand the client topic index atrules/generative/data/activity-master/client/README.mdwhen crafting prompts or adding features. - Follow the modular rule files (lifecycle, builders, token cache, configuration, testing) under
rules/generative/data/activity-master/client/and cross-link back to RULES/GUIDES/IMPLEMENTATION. - Keep host docs and glossaries outside
rules/; treat the submodule as read-only rules source material.
- Topic-first: use the Activity Master glossary at
rules/generative/data/activity-master/GLOSSARY.mdas the authoritative list for this library; link from the hostGLOSSARY.mdinstead of duplicating terms. - Preserve canonical names (Activity Master Client, System token cache, CRTP query builders, Mutiny Session, Token Cache) in prompts and code comments.
- Reference Mermaid MCP-rendered diagrams under
docs/architecture/to maintain traceability when describing flows.
Use the diagrams in docs/architecture/ (context + container + component plus sequences/ERD) to understand the system boundaries before editing code. Every diagram is a Mermaid source rendered via https://mcp.mermaidchart.com/mcp. The prompt/tracing anchor lives in docs/PROMPT_REFERENCE.md.
- Add the Maven artifact
com.guicedee.activitymaster:activity-master-client(seepom.xml) to your GuicedEE module. - Register the client via
ActivityMasterClientModuleInclusionand rely onIActivityMasterServiceplus the supporting service APIs (ISystemsService,IEnterpriseService, etc.). - Cache tokens through the built-in
SYSTEM_TOKEN_CACHEhelper and respect CRTP fluent setters when chaining builders.
- Copy
.env.exampleas your local.envfile; keep the keys and prefixes aligned withrules/generative/platform/secrets-config/env-variables.md. - Inject PostgreSQL credentials, token secrets, and logging toggles via Terraform or GitHub Actions secrets before deployment.
- GitHub Actions (see
.github/workflows/ci.yml) wires the shared GuicedEE workflow and expects secrets such asUSERNAME,USER_TOKEN,SONA_USERNAME,SONA_PASSWORD,POSTGRES_APP_PASSWORD,KEYCLOAK_ADMIN_PASSWORD, andJWT_TEST_TOKEN. - Jacoco/BrowserStack coverage, health endpoints, and Log4j2 configuration all follow their respective rule guide links inside
rules/generative/platform/.
- Ensure
.envis present for local runs and that all required variables are set. - Initialize the
rules/submodule if you need to navigate referenced docs. - Keep Stage 1/2 documentation updated before changing implementation code.
- GitHub: https://github.com/Activity-Master/Client
- Issues: https://github.com/Activity-Master/Client/issues
- Pull Requests: https://github.com/Activity-Master/Client/pulls
Blanket approval was granted for this run, so documentation stages proceed without STOP waits. Always reference the Mermaid MCP server when discussing diagrams to maintain traceability from PACT + RULES + GUIDES + IMPLEMENTATION + docs/architecture/*.