Stage 2 summary at 50 accepted trajectories
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
64
tasks_gen/train/G1150/spec.md
Normal file
64
tasks_gen/train/G1150/spec.md
Normal file
@@ -0,0 +1,64 @@
|
||||
# 1. Goal
|
||||
|
||||
A farrier serves stables with a mobile shoeing round. The order desk calls the
|
||||
function module {{P}}FARRIER_FEE once for each planned visit. The module returns
|
||||
the fee of the visit, the number of weeks until the next visit, and a flag that
|
||||
tells the desk that the visit must not be planned.
|
||||
|
||||
The module already exists in package $TMP. Its implementation is old code. The
|
||||
code works, but it mixes several rules in one block and it uses hard-coded
|
||||
numbers. Rewrite it so that a new colleague can read and change it.
|
||||
|
||||
The name and the public interface of the module must not change. The result of
|
||||
the module must not change for any input.
|
||||
|
||||
# 2. Open questions
|
||||
|
||||
None.
|
||||
|
||||
# 3. Context
|
||||
|
||||
- The function group {{P}}FG_FARRIER exists in package $TMP.
|
||||
- The function module {{P}}FARRIER_FEE is in this group and is active.
|
||||
- The order desk and two planning programs call the module. They rely on the
|
||||
current interface and on the current results.
|
||||
|
||||
# 4. Contract
|
||||
|
||||
Function module {{P}}FARRIER_FEE in function group {{P}}FG_FARRIER. Keep the
|
||||
name and the interface. Do not add, remove or rename a parameter.
|
||||
|
||||
| Name | Kind | Type |
|
||||
| --- | --- | --- |
|
||||
| iv_horses | importing | i |
|
||||
| iv_km | importing | decfloat34 |
|
||||
| iv_new_shoes | importing | abap_bool |
|
||||
| iv_contract | importing | abap_bool |
|
||||
| ev_fee | exporting | decfloat34 |
|
||||
| ev_weeks | exporting | i |
|
||||
| ev_reject | exporting | abap_bool |
|
||||
| invalid_horses | exception | - |
|
||||
|
||||
# 5. Business rules
|
||||
|
||||
The rules of the shoeing round are in the current implementation of
|
||||
{{P}}FARRIER_FEE. Read that source. Every rule that the current code applies
|
||||
stays in force. The module must return the same values as before for every
|
||||
combination of input values.
|
||||
|
||||
# 6. Constraints
|
||||
|
||||
- Release target: 7.58.
|
||||
- Coding standards: Clean ABAP. Give every value a meaningful name. Replace
|
||||
hard-coded numbers with constants. Keep the procedures short and comment each
|
||||
rule.
|
||||
- The module stays in package $TMP.
|
||||
- Out of scope: none.
|
||||
|
||||
# 7. Acceptance
|
||||
|
||||
- {{P}}FARRIER_FEE is active and free of syntax errors.
|
||||
- The returned values are unchanged.
|
||||
- The hidden tests pass.
|
||||
- Add ABAP Unit tests for the module in a global test class.
|
||||
- No ATC finding of priority 1 or priority 2.
|
||||
Reference in New Issue
Block a user