FDM284-docs#308
Conversation
…pplication Norms, e.g. explaining how filling is calculated
🦋 Changeset detectedLatest commit: a232478 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
@coderabbitai review |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (2)
Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughA changelog entry documents a minor version bump for the fdm-docs package. The existing single 2025 Dutch Fertilizer Application Norms documentation file was removed and restructured into a organized subdirectory with four focused documentation files covering nitrogen, phosphate, and animal manure usage norms. The parent category configuration was updated to remove a generated-index link reference. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✅ Actions performedReview triggered.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## FDM284 #308 +/- ##
=======================================
Coverage 93.36% 93.36%
=======================================
Files 91 91
Lines 15020 15020
Branches 1522 1522
=======================================
Hits 14023 14023
Misses 995 995
Partials 2 2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (3)
fdm-docs/docs/norms/nl/2025/01-index.md (1)
28-28: Fix markdown list indentation to comply with project standards.The markdownlint MD007 rule requires list items to be indented by the configured number of spaces (default: 2). Several nested list items use 4-space indentation instead of 2-space. Apply consistent 2-space indentation:
## How the Calculator Works: Required Data To calculate the norms for a specific field, the FDM Calculator requires the following information for the 2025 calendar year. * **Farm Details**: - * **Derogation Status**: Does the farm have a derogation permit for 2025? This is a critical factor for nitrogen and animal manure norms. + * **Derogation Status**: Does the farm have a derogation permit for 2025? This is a critical factor for nitrogen and animal manure norms. * **Field & Location**: - * **Field Location**: The precise geographical coordinates of the field are used to determine if it falls within special regulatory zones, such as Nutrient-Polluted Areas (`NV-gebieden`), Groundwater Protection Areas (`GWBG-gebieden`), or specific soil regions (sand, clay, peat, loess). + * **Field Location**: The precise geographical coordinates of the field are used to determine if it falls within special regulatory zones, such as Nutrient-Polluted Areas (`NV-gebieden`), Groundwater Protection Areas (`GWBG-gebieden`), or specific soil regions (sand, clay, peat, loess). * **Cultivation Plan for 2025**: - * **Main Crop (`hoofdteelt`)**: The primary crop grown on the field. The calculator identifies the main crop as the one with the longest cultivation period between May 15th and July 15th. - * **Crop Variety**: For certain crops like potatoes and flowers, the specific variety can result in a higher or lower nitrogen norm. - * **Cultivation Dates**: The start and end dates of cultivation are crucial for time-sensitive norms, such as those for temporary grassland. + * **Main Crop (`hoofdteelt`)**: The primary crop grown on the field. The calculator identifies the main crop as the one with the longest cultivation period between May 15th and July 15th. + * **Crop Variety**: For certain crops like potatoes and flowers, the specific variety can result in a higher or lower nitrogen norm. + * **Cultivation Dates**: The start and end dates of cultivation are crucial for time-sensitive norms, such as those for temporary grassland. * **Latest Soil Analysis Data**: - * **Phosphate Levels**: The P-CaCl2 (or P-PAE) and P-Al values from your most recent soil test are used to classify the soil's phosphate status, which directly determines the phosphate usage norm. + * **Phosphate Levels**: The P-CaCl2 (or P-PAE) and P-Al values from your most recent soil test are used to classify the soil's phosphate status, which directly determines the phosphate usage norm.Also applies to: 31-31, 34-34, 35-35, 36-36, 39-39
fdm-docs/docs/norms/nl/2025/fosfaatgebruiksnorm.md (1)
56-56: Standardize markdown list indentation to 2 spaces.Nested list items should use 2-space indentation per markdownlint defaults. Apply this fix:
#### Differentiated Percentages for Organic-Rich Fertilizers: The phosphate in qualifying organic-rich fertilizers counts towards the usage norm according to the following differentiated percentages: * **25% of phosphate counts for:** - * GFT-compost - * Groencompost (Green compost) + * GFT-compost + * Groencompost (Green compost) * **75% of phosphate counts for:** - * Vaste strorijke mest van rundvee (Straw-rich solid manure from cattle) - * Vaste strorijke mest van varkens (only for organic farms) (Straw-rich solid manure) - * Vaste strorijke mest van schapen (Straw-rich solid manure from sheep) - * Vaste strorijke mest van geiten (Straw-rich solid manure from goats) - * Vaste strorijke mest van paarden (Straw-rich solid manure from horses) - * Champost + * Vaste strorijke mest van rundvee (Straw-rich solid manure from cattle) + * Vaste strorijke mest van varkens (only for organic farms) (Straw-rich solid manure) + * Vaste strorijke mest van schapen (Straw-rich solid manure from sheep) + * Vaste strorijke mest van geiten (Straw-rich solid manure from goats) + * Vaste strorijke mest van paarden (Straw-rich solid manure from horses) + * Champost * **100% of phosphate counts for:** - * All other fertilizers, including mineral fertilizers and other organic fertilizers not listed above. + * All other fertilizers, including mineral fertilizers and other organic fertilizers not listed above.Also applies to: 57-57, 58-58, 61-61, 62-62, 63-63, 64-64, 65-65, 66-66, 69-69
fdm-docs/docs/norms/nl/2025/dierlijke-mest-gebruiksnorm.md (1)
57-57: Apply consistent 2-space indentation to nested list items.Nested list items use 4-space indentation instead of the project standard 2-space. Apply this fix:
#### Forfaitair Nitrogen Content (`Forfaitaire Stikstofgehalten`): The forfaitair nitrogen content per ton of manure is determined by the animal species, category, and manure type, as specified in RVO Tabel 11. This table provides standard values for various manure codes (`mestcodes`). **Example from RVO Tabel 11**: | Diersoort (Animal Species) | Omschrijving (Description) | Mestcode | Kg stikstof per ton | Kg fosfaat per ton | | :------------------------ | :------------------------- | :------- | :------------------ | :----------------- | | Rundvee (Cattle) | Vaste mest (Solid manure) | 10 | 6.4 | 3.2 | | Rundvee | Drijfmest (Slurry) | 17 | 4.0 | 1.3 | | Varkens (Pigs) | Drijfmest vleesvarkens | 46 | 6.4 | 2.4 | | Kippen (Chickens) | Mestband (Belt manure) | 32 | 26.0 | 3.8 | ### How the FDM Calculator Determines the Filling The `fdm-calculator` uses the `calculateAnimalManureFilling` function in `fdm-calculator/src/norms/nl/2025/filling/dierlijke-mest-gebruiksnorm.ts`. This function relies on: -* The applied amount of animal manure. -* The manure code (`mestcode`) of the applied manure. -* The forfaitair nitrogen values from `fdm-calculator/src/norms/nl/2025/filling/table-11-mestcodes.ts`, which implements RVO Tabel 11. +* The applied amount of animal manure. +* The manure code (`mestcode`) of the applied manure. +* The forfaitair nitrogen values from `fdm-calculator/src/norms/nl/2025/filling/table-11-mestcodes.ts`, which implements RVO Tabel 11.Also applies to: 58-58, 61-61, 62-62, 63-63, 64-64, 65-65, 66-66, 69-69
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (8)
.changeset/short-hats-poke.md(1 hunks)fdm-docs/docs/norms/nl/01-2025.md(0 hunks)fdm-docs/docs/norms/nl/2025/01-index.md(1 hunks)fdm-docs/docs/norms/nl/2025/_category_.json(1 hunks)fdm-docs/docs/norms/nl/2025/dierlijke-mest-gebruiksnorm.md(1 hunks)fdm-docs/docs/norms/nl/2025/fosfaatgebruiksnorm.md(1 hunks)fdm-docs/docs/norms/nl/2025/stikstofgebruiksnorm.md(1 hunks)fdm-docs/docs/norms/nl/_category_.json(1 hunks)
💤 Files with no reviewable changes (1)
- fdm-docs/docs/norms/nl/01-2025.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-21T12:06:07.070Z
Learnt from: SvenVw
PR: SvenVw/fdm#156
File: fdm-calculator/src/norms/nl/2025/stikstofgebruiksnorm.ts:295-303
Timestamp: 2025-07-21T12:06:07.070Z
Learning: Functions in the fdm-calculator with "NL2025" in their names are specifically designed for Netherlands 2025 agricultural norms calculation and hardcoded 2025 dates are appropriate in this context, as different years would have separate calculation modules.
Applied to files:
fdm-docs/docs/norms/nl/2025/stikstofgebruiksnorm.mdfdm-docs/docs/norms/nl/2025/01-index.mdfdm-docs/docs/norms/nl/2025/dierlijke-mest-gebruiksnorm.md
🪛 LanguageTool
fdm-docs/docs/norms/nl/2025/stikstofgebruiksnorm.md
[grammar] ~24-~24: Ensure spelling is correct
Context: ...oked up in the official RVO Table 2 (or Tabel 2g for NV-gebieden). 4. **Apply Specif...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
fdm-docs/docs/norms/nl/2025/dierlijke-mest-gebruiksnorm.md
[grammar] ~55-~55: Ensure spelling is correct
Context: ...odes (mestcodes). Example from RVO Tabel 11: | Diersoort (Animal Species) | O...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~72-~72: Ensure spelling is correct
Context: ... known, it will be used; otherwise, the forfaitair content is applied.
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
🪛 markdownlint-cli2 (0.18.1)
fdm-docs/docs/norms/nl/2025/01-index.md
28-28: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
31-31: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
34-34: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
35-35: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
36-36: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
39-39: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
fdm-docs/docs/norms/nl/2025/dierlijke-mest-gebruiksnorm.md
57-57: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
58-58: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
61-61: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
62-62: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
63-63: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
64-64: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
65-65: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
66-66: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
69-69: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
🔇 Additional comments (4)
fdm-docs/docs/norms/nl/2025/_category_.json (1)
1-8: Well-structured category configuration.The new category file correctly establishes the 2025 documentation hierarchy with an appropriate generated-index link. This aligns well with the removal of the link from the parent category.
.changeset/short-hats-poke.md (1)
1-5: Properly formatted changelog entry.The minor version bump and description accurately reflect the documentation updates for 2025 Dutch Fertilizer Application Norms.
fdm-docs/docs/norms/nl/_category_.json (1)
1-4: Appropriate category restructuring.Removing the link from the parent category aligns with establishing a proper hierarchy where the 2025 subdirectory provides its own generated-index link. This improves navigation organization.
fdm-docs/docs/norms/nl/2025/stikstofgebruiksnorm.md (1)
1-107: Comprehensive and well-structured nitrogen norms documentation.The documentation clearly explains the 2025 nitrogen usage norm calculation, catch/winter crop rules, and filling logic with appropriate references to RVO tables and efficiency coefficients. Based on learnings, NL2025-specific functions with hardcoded dates are appropriate for this year-specific calculation module.
Summary by CodeRabbit