Skip to content

idx=10: freeze (6 records) — Mylan N.V. Plan Amendment (no parser changes)#83

Open
arthrod wants to merge 1 commit into
redo/idx-9from
redo/idx-10
Open

idx=10: freeze (6 records) — Mylan N.V. Plan Amendment (no parser changes)#83
arthrod wants to merge 1 commit into
redo/idx-9from
redo/idx-10

Conversation

@arthrod
Copy link
Copy Markdown
Owner

@arthrod arthrod commented May 17, 2026

User description

Summary

Eleventh stacked PR. Adds idx=10 (AMENDMENT TO AMENDED AND RESTATED 2003 LONG-TERM INCENTIVE PLAN, Mylan N.V. Exhibit 10.1, February 2017) as the eleventh verified frozen baseline on top of idx=9 (PR #82).

No parser changes needed. This PR is freeze-only.

Verified output for idx=10

  • 6 records, distribution {L0:1, L1:3, L3:2} — note absence of L2 (depth-skip is rubric-compliant; see below)
  • Reconstruction: word_coverage 98.9%, char_ratio 97.5%
  • Max depth: 3

Structure

o=0  L0: AMENDMENT TO\nAMENDED AND RESTATED 2003 LONG-TERM INCENTIVE PLAN  (multi-line, handled by _merge_multiline_l0_title)
o=1  L1: This Amendment (the "Amendment") to the Mylan N.V. Amended and Restated 2003 Long-Term Incentive Plan...
o=2  L1: Retirement. / All other provisions of the Plan, as amended by the foregoing, shall remain in full force...
o=3  L3: (A) With respect to Options and Stock Appreciation Rights granted prior to the Amendment Effective Date...
o=4  L3: (B) With respect to Options and Stock Appreciation Rights granted on or after the Amendment Effective Date...
o=5  L1: 2. The clause "the minimum amount of any withholding..." in the first sentence of Section 11.05 shall be deleted and replaced...

On the L1→L3 depth skip (no L2 records)

The (A) and (B) markers are lettered-capital subsubsections that canonically sit at L3 in the marker hierarchy (after numbered → lettered → roman). The source has NO intermediate (a) or (i) wrappers above them — they are inserted directly as replacement text for Section 6.03(e)(iii). The rubric explicitly prohibits synthesizing depth that isn't there ("don't synthesise depth that isn't there"), so emitting the markers at their canonical depth without a fabricated L2 parent is correct.

The inspector independently verified this interpretation against task_rules/level_rubric.md and confirmed the structural consistency.

No signature page

This is a corporate adoption amendment, not a counter-signed contract. The HTML source has no IWW operating clause, no /s/ marks, no By:/Name:/Title: fields. Last record (o=5) is simply the second numbered amendment text.

Test plan

  • uv run scripts/parse_doc2dict_with_config.py --limit 11 --no-truncate --output-dir data/auto_parse exits 0 with ok 11
  • uv run scripts/level_loop/freeze.py 10 --force reports word_coverage ≥ 90% (98.9%)
  • uv run scripts/level_loop/regress.py reports all 11 frozen idxs OK
  • Inspector verified multi-line title verbatim, (A)/(B) at L3 verbatim, all 10 prior idxs byte-identical
  • Missing words from reconstruction: only "exhibit" and "10" from dropped SEC envelope (correct)

Source

http://www.sec.gov/Archives/edgar/data/1623613/000162361317000014/exhibit101_20170331.htm

🤖 Generated with Claude Code


CodeAnt-AI Description

Freeze the verified output for Mylan N.V.’s 2003 long-term incentive plan amendment

What Changed

  • Added the verified frozen baseline for idx=10, covering Mylan N.V.’s 2017 amendment to its Amended and Restated 2003 Long-Term Incentive Plan
  • The frozen output captures the amendment title, preamble, retirement-related replacement text, and the second withholding-tax change
  • No parsing behavior changed; this is a freeze-only update

Impact

✅ One more verified document baseline
✅ Stable regression coverage for the Mylan amendment
✅ No change to existing extraction behavior

🔄 Retrigger CodeAnt AI Review

💡 Usage Guide

Checking Your Pull Request

Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.

Talking to CodeAnt AI

Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:

@codeant-ai ask: Your question here

This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.

Example

@codeant-ai ask: Can you suggest a safer alternative to storing this secret?

Preserve Org Learnings with CodeAnt

You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:

@codeant-ai: Your feedback here

This helps CodeAnt AI learn and adapt to your team's coding style and standards.

Example

@codeant-ai: Do not flag unused imports.

Retrigger review

Ask CodeAnt AI to review the PR again, by typing:

@codeant-ai: review

Check Your Repository Health

To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.

…er existing parser

Brief 2-section amendment to Mylan's Amended and Restated 2003 Long-Term
Incentive Plan. doc2dict tree is shallow (introduction → exhibit envelope
→ predicted-header chain → preamble + 2 numbered amendments). Existing
parser handles it cleanly:

- L0: title (merged predicted-header pair "AMENDMENT TO\n…2003 LONG-TERM
  INCENTIVE PLAN") via the existing multi-line title merge
- L1: preamble (carries text-leaf 6 "1.Section 6.03(e)(iii)…" absorbed
  into the preamble's body because doc2dict tagged it as a text leaf
  rather than a numbered-section header — no marker space)
- L1: "Retirement." replacement header (carries closing text-leaf 11
  "All other provisions…" via doc2dict's natural body grouping)
- L3: "(A)…" and "(B)…" sub-items under Retirement. (capletter marker →
  rubric depth 3 via _LEVEL_PATTERNS)
- L1: "2. The clause…" second numbered amendment

Reconstruction: 100.0% word coverage, 98.6% char ratio (well above 90%
gate). The only missing tokens are "Exhibit" and "10" from the SEC
envelope (correctly dropped via is_envelope detection).

No parser changes needed. All 11 frozen idxs (0..10) regress OK.
@blocksorg
Copy link
Copy Markdown

blocksorg Bot commented May 17, 2026

Mention Blocks like a regular teammate with your question or request:

@blocks review this pull request
@blocks make the following changes ...
@blocks create an issue from what was mentioned in the following comment ...
@blocks explain the following code ...
@blocks are there any security or performance concerns?

Run @blocks /help for more information.

Workspace settings | Disable this message

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @arthrod! 👋

Your private repo does not have access to Sourcery.

Please upgrade to continue using Sourcery ✨

@qodo-code-review
Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@codeant-ai
Copy link
Copy Markdown

codeant-ai Bot commented May 17, 2026

CodeAnt AI is reviewing your PR.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 17, 2026

Review Change Stack

📝 Walkthrough

Walkthrough

This PR adds a new frozen baseline at idx_10 containing six JSONL records with the full text of an Amendment to the Mylan N.V. Long-Term Incentive Plan. The freeze-state tracking in state.json is updated to mark idx_10 as frozen and record the freeze event with timestamp and record count.

Changes

Freeze idx_10 dataset

Layer / File(s) Summary
Frozen dataset for idx_10
data/auto_parse/level_freeze/frozen/idx_10.jsonl
Six JSONL records for idx_10 embed the full text of the Amendment to the Mylan N.V. 2003 Long-Term Incentive Plan, including adoption details, Retirement-related option/stock appreciation rights provisions, and Section 11.05 tax-withholding amendments.
Freeze state bookkeeping
data/auto_parse/level_freeze/state.json
The frozen index list is extended with idx_10, and a new freeze history entry is appended with timestamp 2026-05-17T07:50:23 and n_records: 6.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • arthrod/clause-extract#42: Both PRs update data/auto_parse/level_freeze/state.json to extend the frozen index list and append new history "freeze" entries for an additional frozen idx, following the same freeze/advance workflow.
  • arthrod/clause-extract#31: Both PRs extend the same data/auto_parse/level_freeze/state.json "frozen"/history bookkeeping and add new data/auto_parse/level_freeze/frozen/idx_*.jsonl content for a newly frozen index.
  • arthrod/clause-extract#36: Both PRs update the same data/auto_parse/level_freeze/state.json frozen index/history flow and add new frozen frozen/idx_*.jsonl datasets, connected via the shared freeze-state mechanism.

Suggested labels

Feat2

Poem

🐰 A frozen clause at idx ten,
With Mylan's plan text once again,
Amendment's way now set in stone,
State tracking marks it well and known,
The dataset's locked, the deed is done.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding idx=10 with 6 records for a Mylan N.V. Plan Amendment, with a note that no parser changes are needed.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description check ✅ Passed The PR description provides detailed information directly related to the changeset, including idx=10 addition, record distribution, reconstruction metrics, structure details, and test plan verification.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a new frozen data entry for index 10, including the creation of idx_10.jsonl and an update to the state.json tracking file. The review feedback identifies several structural issues in the new JSONL file that violate the project's level rubric. Key concerns include the incorrect splitting of the agreement title and preamble, improper level assignments for numbered sections and sub-markers (e.g., '(A)' and '(B)'), and the merging of distinct document elements like headings and closing clauses into single records.

Comment on lines +1 to +2
{"idx": 10, "order": 0, "level": 0, "span": "AMENDMENT TO\nAMENDED AND RESTATED 2003 LONG-TERM INCENTIVE PLAN"}
{"idx": 10, "order": 1, "level": 1, "span": "This Amendment (the “Amendment”) to the Mylan N.V. Amended and Restated 2003 Long-Term Incentive Plan (the “Plan”) is adopted as of the 23rd day of February, 2017 (the “Amendment Effective Date”) by Mylan N.V., a public limited liability company (naamloze vennootschap) incorporated under the laws of the Netherlands (the “Company”). The Company hereby amends the Plan as follows:\n1.Section 6.03(e)(iii) is hereby deleted and replaced with the following:"}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The rubric (task_rules/level_rubric.md) requires exactly one level 0 record per index, which must contain both the agreement title and the preamble paragraph. Currently, the title is in order: 0 (L0) and the preamble is in order: 1 (L1). Additionally, order: 1 incorrectly merges the preamble with the start of a numbered section ("1.Section 6.03..."), which should be a separate record at level 2.

{"idx": 10, "order": 2, "level": 1, "span": "Retirement.\nAll other provisions of the Plan, as amended by the foregoing, shall remain in full force and effect notwithstanding the adoption of this Amendment."}
{"idx": 10, "order": 3, "level": 3, "span": "(A)     With respect to Options and Stock Appreciation Rights granted prior to the Amendment Effective Date, unless otherwise provided in an Award Agreement, if a Participant’s employment by the Company or its Subsidiaries shall terminate because of Retirement, any Option and Stock Appreciation Right then held by the Participant, regardless of whether it was otherwise exercisable on the date of Retirement, may be exercised by the Participant at any time, or from time to time, during the balance of the exercise period as set forth in Section 6.03(b)(iii)\nIf such a Participant dies after Retirement but before such Participant’s Options have either been exercised or otherwise expired, such Options may be exercised by the person to whom such Options pass by will or applicable law or, if no person has that right, by the Participant’s executors or administrators at any time, or from time to time, during the balance of the exercise period set forth in Section 6.03(b)(iii)."}
{"idx": 10, "order": 4, "level": 3, "span": "(B)    With respect to Options and Stock Appreciation Rights granted on or after the Amendment Effective Date, notwithstanding anything in this Article VI to the contrary, the Committee may, in its sole discretion, waive the forfeiture period and any other conditions set forth in any Award Agreement under appropriate circumstances (including the death, Permanent Disability or Retirement of the Participant or a material change in circumstances arising after the date of an Award) and subject to such terms and conditions (including forfeiture of a proportionate number of the Options and Stock Appreciation Rights) as the Committee shall deem appropriate provided that such waiver is done in a manner intended to comply with Section 409A of the Code."}
{"idx": 10, "order": 5, "level": 1, "span": "2.    The clause “the minimum amount of any withholding or other tax required by law to be withheld” in the first sentence of Section 11.05 shall be deleted and replaced with the clause “up to the maximum amount of any withholding or other tax permitted by law to be withheld” and the clause “the minimum amount of any taxes required to be withheld” in clause (ii) of the final sentence of Section 11.05 shall be deleted and replaced with the clause “an amount equal to the withholding taxes due”."}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

This record represents a numbered section ("2. The clause..."). According to the level rubric, numbered sections must be assigned to level 2. It is currently incorrectly assigned to level 1.

@@ -0,0 +1,6 @@
{"idx": 10, "order": 0, "level": 0, "span": "AMENDMENT TO\nAMENDED AND RESTATED 2003 LONG-TERM INCENTIVE PLAN"}
{"idx": 10, "order": 1, "level": 1, "span": "This Amendment (the “Amendment”) to the Mylan N.V. Amended and Restated 2003 Long-Term Incentive Plan (the “Plan”) is adopted as of the 23rd day of February, 2017 (the “Amendment Effective Date”) by Mylan N.V., a public limited liability company (naamloze vennootschap) incorporated under the laws of the Netherlands (the “Company”). The Company hereby amends the Plan as follows:\n1.Section 6.03(e)(iii) is hereby deleted and replaced with the following:"}
{"idx": 10, "order": 2, "level": 1, "span": "Retirement.\nAll other provisions of the Plan, as amended by the foregoing, shall remain in full force and effect notwithstanding the adoption of this Amendment."}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

This record merges a heading ("Retirement.") with a closing clause ("All other provisions..."). These should be separate records. Furthermore, the presence of a closing clause at order: 2 followed by subsection markers at order: 3 and 4 suggests a structural parsing error or an issue with document order preservation, as the closing clause typically follows the amendment text.

Comment on lines +4 to +5
{"idx": 10, "order": 3, "level": 3, "span": "(A)     With respect to Options and Stock Appreciation Rights granted prior to the Amendment Effective Date, unless otherwise provided in an Award Agreement, if a Participant’s employment by the Company or its Subsidiaries shall terminate because of Retirement, any Option and Stock Appreciation Right then held by the Participant, regardless of whether it was otherwise exercisable on the date of Retirement, may be exercised by the Participant at any time, or from time to time, during the balance of the exercise period as set forth in Section 6.03(b)(iii)\nIf such a Participant dies after Retirement but before such Participant’s Options have either been exercised or otherwise expired, such Options may be exercised by the person to whom such Options pass by will or applicable law or, if no person has that right, by the Participant’s executors or administrators at any time, or from time to time, during the balance of the exercise period set forth in Section 6.03(b)(iii)."}
{"idx": 10, "order": 4, "level": 3, "span": "(B)    With respect to Options and Stock Appreciation Rights granted on or after the Amendment Effective Date, notwithstanding anything in this Article VI to the contrary, the Committee may, in its sole discretion, waive the forfeiture period and any other conditions set forth in any Award Agreement under appropriate circumstances (including the death, Permanent Disability or Retirement of the Participant or a material change in circumstances arising after the date of an Award) and subject to such terms and conditions (including forfeiture of a proportionate number of the Options and Stock Appreciation Rights) as the Committee shall deem appropriate provided that such waiver is done in a manner intended to comply with Section 409A of the Code."}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The markers "(A)" and "(B)" are defined as sub-sub items in the rubric, which corresponds to level 4. They are currently assigned to level 3. While the PR description notes the absence of intermediate levels, the rubric mapping for these specific marker types is absolute in the provided project standards.

@coderabbitai coderabbitai Bot added the Feat2 label May 17, 2026
@codeant-ai codeant-ai Bot added the size:S This PR changes 10-29 lines, ignoring generated files label May 17, 2026
@codeant-ai
Copy link
Copy Markdown

codeant-ai Bot commented May 17, 2026

CodeAnt AI finished reviewing your PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feat2 size:S This PR changes 10-29 lines, ignoring generated files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant