Load the rules for this repository
Use the supplied root AGENTS.md for the pinned JHipster application and a thin adapter such as CLAUDE.md when the selected agent requires it.
Meridian Engineering / Lab 3 / 120 minutes
JHipster’s sample can store an account operation without changing the account balance. Both records can be edited independently.
Work against the pinned JHipster repository from first trace to final review. Turn what its React, Java, database and test sources establish into a specification, a tested build and a decision you can defend.
Debit operation / account 42
amount = -25.00 · 201 Created100.00 · unchangedoperationRepository.save(operation)The response confirms that the operation was saved. It does not prove balance consistency.
01 / The course premise
Participants learn how repository evidence becomes intent, how intent becomes testable expectations and how those expectations govern planning, execution and review.
Course rule Participants create the artifact at each stage. That artifact supplies evidence or decisions required by the next stage.
Before Stage 1 / Repository prerequisites
Begin from the same JHipster revision, repository instructions and recorded session profile. This setup stays outside the 120-minute instructional clock.
Use the supplied root AGENTS.md for the pinned JHipster application and a thin adapter such as CLAUDE.md when the selected agent requires it.
Record the repository root, revision, branch and working tree alongside the visible session, memory, model, tools and permissions. Identify how each item was established.
Give the agent the pinned repository, accepted prior artifact, allowed actions, evidence expectations, success criteria and stopping conditions for this stage.
02 / Course map
The outcome dimension states what participants carry into their work. The lifecycle dimension shows where they practice it.
Recognize where AI can help, where it can fail and when its output needs verification.
Explain intent, evidence, limits and decisions in terms that teammates can review.
Carry context, specifications, evidence and review into routine engineering work.
03 / Why this repository fits
The sample is large enough to require context judgment. One operation journey crosses the front end, API, domain, database and three test levels.
React, Redux, DTOs, mappers, resources, entities, repositories, schema and tests all participate. Participants must decide which sources explain balance behavior.
Participants name the rules for signs, precision, ownership, insufficient funds, atomicity, retries and changes to posted operations.
Tests must show the operation and balance change together, or remain unchanged together, while the React UI reports the server result.
04 / The learning sequence
Each activity begins with its purpose and ends with a test for readiness. The facilitator manages time and the gates. Participants do the work.
Trace an operation from the React form through Redux and HTTP, the Java DTO and mapper, the REST resource, both repositories, the account relationship, Liquibase and the existing tests. Separate sources on that journey from unrelated generated infrastructure.
Why this step: The issue names a balance symptom. The repository shows two records that can be edited independently, along with transaction boundaries, authorization behavior and tests that verify CRUD behavior instead of balance consistency.
You produceContext brief with facts, source links, exclusions, assumptions and open questions.
Ready to continue whenA second pair can explain why an operation can be stored while its account balance stays unchanged.
Open the stage guideDefine credit and debit semantics, amount precision, insufficient-funds behavior, account ownership, atomicity, retry expectations and what update or deletion means after posting. Describe observable behavior before choosing code.
Why this step: “Update the balance” leaves critical decisions unstated. A coding agent could apply an operation twice, permit an overdraft or preserve CRUD paths that later invalidate the balance.
You produceChange specification with claims, acceptance examples, exclusions and unresolved decisions.
Ready to continue whenThe specification addresses create, retry, overdraw, cross-account access, update, patch, delete and failure cases.
Open the stage guideDefine evidence for each claim through Java integration tests, React tests and one end-to-end journey. Observe both the operation and the account balance before and after success and failure.
Why this step: A saved operation and a changed balance form one business outcome. A test that observes only one record cannot establish consistency.
You produceTest specification that maps every claim to a stimulus, observation, expected result and covered risk.
Ready to continue whenThe proposed tests could reveal partial writes, double application, overdrafts, unauthorized posting and a misleading UI result.
Open the stage guideExchange the context brief and specifications with another pair. Challenge sign conventions, rounding, ownership, transaction claims, concurrent requests, operation mutability and conclusions that exceed what H2 can support.
Why this step: Independent review exposes contradictions before they enter the code. It also separates evidence from the lab profile from claims about production databases.
You produceAudit record with the finding, impact, disposition, rationale and owner.
Ready to continue whenEvery material finding is resolved, accepted as a limitation or escalated.
Open the stage guideMap each accepted claim to the smallest required Java, React, schema and test changes in the pinned source. Write the tests before the behavior and identify discoveries that must return to the specification.
Why this step: The plan makes scope visible and prevents a framework-wide rewrite. It also reveals whether the specification can be implemented during the lab.
You produceImplementation plan linked to claim and test-specification identifiers.
Ready to continue whenEvery planned edit supports an accepted claim. The plan excludes unrelated generated infrastructure and administration code with stated reasons.
Open the stage guideGive the coding agent the audited specifications and plan. Inspect each change, run focused back-end and front-end tests, and record deviations, discoveries and command results.
Why this step: The specifications set the boundaries for the agent. When the team finds a new fact, it updates the specification instead of allowing that fact to become unreviewed product behavior.
You produceScoped code and tests, command evidence and a deviation log.
Ready to continue whenFocused checks pass, success and failure leave consistent state, and every deviation has a disposition.
Open the stage guideCompare the specification with the code, the specification with the tests, and the tests with the code. Inspect transaction placement, repository observations, UI state, untested CRUD paths and the limits of H2 evidence.
Why this step: Passing checks establish only what those checks observed. A person must decide whether the implementation and evidence support a decision to accept, revise or stop.
You produceAcceptance decision with a claim-to-test-to-code trace, results, limitations and owners.
Ready to continue whenThe decision addresses every material claim and does not extend local evidence to untested production conditions.
Open the stage guideSynthesize the seven-stage evidence chain, explain what each course goal now means in practice and choose the next real repository where you will use the method.
Why this step: A completed exercise is not yet a transferable habit. The closing section turns the JHipster experience into a reusable operating model for agent-assisted delivery.
You produceA three-goal synthesis and one concrete commitment to apply the method at work.
Ready to continue whenYou can explain the method without the stage prompts and name where, when and with what evidence you will use it next.
Open the stage guide05 / What we provide
The course supplies material an engineer could receive at work. Participants create the supporting artifacts during the lab.
“Posting an operation must leave its bank account balance consistent. Failed or rejected requests must change neither record. Define and prove the remaining behavior.”
JHipster’s official React sample at commit 8c9d248, with its generated structure and Apache 2.0 license retained.
H2 seed data and existing Java integration, Vitest and Cypress tests. The course supplies readiness commands, without solution tests or prepared specifications.
06 / What participants create
Six short records make the reasoning open to review. Teams can keep them in Markdown, a pull request, Jira or the Workbench.
Shows what exists and how the team knows.
Facts · sources · assumptions · questionsStates what must become true.
Behavior · boundaries · acceptance · exclusionsStates how the team will challenge each claim.
Example · level · expected result · covered riskRecords what independent review found.
Finding · impact · disposition · ownerTurns accepted intent into a scoped change.
Files · seams · sequence · tests · rollbackStates whether the result is acceptable.
Specification ↔ test ↔ code · results · limits · decisionWorkbench role The Workbench can store, route or automate these records after participants understand their purpose. Participants can apply the same records through tools they already use.
07 / Review the build
Each comparison can fail even when the build passes. Reviewers must state what the evidence proves and where it stops.
Shared intuition / Judge
Do transaction, amount, ownership and immutability rules appear at the correct boundaries without unrelated changes to generated code?
Common language / Judge
Does the evidence observe operation and balance state after success, rejection, retry and failure at the required test levels?
Everyday habits / Learn
Could mocks or automatic rollback make the tests pass while a real request still permits a partial or repeated update?
08 / Assessment
We assess the work participants create and the decision they make. Confidence ratings provide a secondary measure.
Followed Completes a step but cannot connect it to a source or decision.
Explained Connects the artifact to evidence and identifies a limitation.
Transferred Applies the method to new work and defends the trade-off.
09 / Progression to Lab 4
Lab 3 makes the reasoning visible. Lab 4 gives teams a different consistency boundary and asks them to rebuild and automate the method.
One official full-stack sample, one consistency problem and seven participant-led stages.
Apply the method to repeated delivery, then automate one recurring evidence check.
10 / Delivery
Pin and test the course branch, cache Maven dependencies, run a readiness check and provide a browser workspace fallback.
Use one page for all eight sections. Demonstrate one context trace, then give the work to participants. Move environment failures to a separate support channel.
Return feedback on the artifact chain and sample one use at work. Report skill transfer separately from Workbench adoption.
Three outcomes / Five lifecycle stages