Why Selection Fades With Age

Build an auditable selection curve from 2022 U.S. demographic data.

Introduction

30 Second Summary

A polished chart can feel trustworthy at a glance. Its real strength comes from evidence you can inspect.

In this project, you will reproduce an age-specific selection curve from official birth-rate and female-survivorship tables. You will direct an AI agent to produce traceable files while you keep the theory, prediction, source checks, and scientific verdict under your control.

What You'll Build

You'll open report.html to see why selection fades with age through a curve whose claims lead back to evidence you can inspect.

By the end of this project, you'll have:

  • A reproducible selection curve in selection.html that shows s falling from 1 toward 0 across age boundaries.
  • A browser report with file-level provenance that lets you compare every claim against job-sheet.csv, selection.csv, and data.csv.
  • A local Git history that preserves your theory and prediction before agent output can influence them.
  • Secret Mission: Package the report as a PDF. Trace every sentence to a source file. Record a two-minute defense of the population-level conclusion.

Are there any prerequisites?

You need access to the two named NCHS reports plus a browser, spreadsheet, Git, voice recorder, and agentic AI client that can open web pages and return files. All resources stay local or use free access, so the project costs nothing.

Before We Start

This project reproduces a population-level demographic result. Before the research begins, commit to keeping your final interpretation about population survival and births without identifying an individual aging mechanism or start date.

Set Up the Research Track

Research files can drift across downloads and folders. That drift can consume the research hour before the science starts.

A fixed local structure gives every artifact one home. A local Git repository records later changes without sending your work anywhere.

In this step, get ready to:
  • Create the local research repository.
  • Prepare the blank research records.
  • Check every tool needed for the research hour.
Create the track folders and repository

The aging-track folder keeps this project separate from unrelated files. The projects/04 folder becomes the destination for Rank 4 evidence.

Windows

  • Press the Windows key to open search.
  • Type File Explorer and press Enter.
  • Go to your home folder in File Explorer.
  • Create aging-track inside your home folder with the new-folder control.
  • Open the aging-track folder.
  • Create projects inside aging-track.
  • Open the projects folder.
  • Create 04 inside projects.

macOS

  • Press Cmd+Space to open Spotlight.
  • Type Finder and press Enter.
  • Go to your home folder in Finder.
  • Create aging-track inside your home folder with the new-folder control.
  • Open the aging-track folder.
  • Create projects inside aging-track.
  • Open the projects folder.
  • Create 04 inside projects.

Linux

  • Open your application search.
  • Search for your installed file manager.
  • Open your home folder in the file manager.
  • Create aging-track inside your home folder with the new-folder control.
  • Open the aging-track folder.
  • Create projects inside aging-track.
  • Open the projects folder.
  • Create 04 inside projects.

Your evidence now has a fixed destination at aging-track/projects/04.

A repository stores local history in the folder it tracks. Initializing it here keeps every future commit tied to the complete research package.

Windows

  • Press the Windows key to open search.
  • Type PowerShell and press Enter.
  • Target aging-track for repository initialization by running these commands:
cd $HOME\aging-track
git init

What do these commands do?

The first command moves the terminal into aging-track. The second command creates the hidden repository data in that folder.

The initialization creates no commit. It also adds no remote.

  • Confirm PowerShell reports that repository initialization completed.

macOS

  • Press Cmd+Space to open Spotlight.
  • Type Terminal and press Enter.
  • Target aging-track for repository initialization by running these commands:
cd ~/aging-track
git init

What do these commands do?

The first command moves the terminal into aging-track. The second command creates the hidden repository data in that folder.

The initialization creates no commit. It also adds no remote.

  • Confirm Terminal reports that repository initialization completed.

Linux

  • Open your application search.
  • Search for your installed terminal application.
  • Open the terminal application.
  • Target aging-track for repository initialization by running these commands:
cd ~/aging-track
git init

What do these commands do?

The first command moves the terminal into aging-track. The second command creates the hidden repository data in that folder.

The initialization creates no commit. It also adds no remote.

  • Confirm the terminal reports that repository initialization completed.

That is the repository ready. Your later prediction and evidence changes now have a local history waiting for them.

Git command unavailable?

Close the terminal after confirming that Git is installed on your computer. Open a fresh terminal before trying again.

Use this help if the new terminal still cannot run Git: Help me check why Git is unavailable in my terminal.

Build the blank workbook and logs

The workbook separates your research checklist from the later calculation. You can use Google Sheets or LibreOffice Calc.

Google Sheets

  • Use your installed browser to open Google Sheets.
  • Create a blank workbook.
  • Rename the first tab to Job sheet.
  • Add a second tab named Selection.

LibreOffice Calc

  • Press Cmd+Space on macOS or the Windows key on Windows to open search.
  • Type LibreOffice Calc and press Enter.
  • Create a blank workbook.
  • Rename the first tab to Job sheet.
  • Add a second tab named Selection.

The Job sheet holds your plan and later verdicts. The Selection tab stays blank until you build the curve.

  • Switch to the Job sheet tab.
  • Select cell A1.
  • Create the fixed two-column checklist by pasting this tab-separated block into the selected cell:
Item	Entry
Case: What population result are you reproducing?	
Concept 1: Does the result appear with age, or does it directly identify an individual aging mechanism?	
Concept 2: Does the sentence about a person's aging contain the words population, survival, and births?	
Concept 3: If 90,000 become 89,100, what fraction was lost? Show the arithmetic.	
Research question	
Theory: Why should selection fade with age?	
Prediction range	
Prediction call: below, inside, or above the range	
Method and source scope	
Manual source check: 2022 rate for ages 25 to 29	
Manual source check: female l(x) at age 45	
Candidate claim a: s summarizes future weighted reproduction after each age	
Candidate claim b: the age where s halves is when a person starts to age	
Candidate claim c: shifting births later can shift the halving age	
Halving-age call	
Net reproduction-rate call	
Artifact check	
Reasoning check	
Calibration check	
Retention check	
Limits	
Next question	
Memo to the analyst	
Unsupported sentence count	
Agent error count	
Defense score	

How is the job sheet structured?

Column A holds the fixed research items. Column B holds the entries you make during later phases.

Every cell below Entry starts blank. This preserves the boundary between a planned check and a completed judgment.

  • Confirm the Item values fill column A.
  • Confirm every cell below Entry is blank.
  • Confirm the Selection tab is blank.
  • Keep the workbook open.

Checklist pasted into one cell?

Undo the paste if the complete block appears in one cell. Select A1 before pasting it again.

Use this help if the spreadsheet still does not separate the columns: Help me split the checklist into two columns.

Three CSV logs capture progress across the research track. Each file starts with one exact header row.

  • Switch back to the terminal inside aging-track.
  • Create the three tracking files by running the commands for your operating system:

Windows

Set-Content -Path ledger.csv -Value 'Project,Date,Skills,Level,Defense score'
Set-Content -Path progress.csv -Value 'Date,Project,Prediction,Confidence,Right?,Planted claim caught,Minutes,Agent errors,Day-30 right?'
Set-Content -Path error-log.csv -Value 'Date,Project,What I got wrong,Rule now'
Get-Content -Path ledger.csv
Get-Content -Path progress.csv
Get-Content -Path error-log.csv

What do these commands create?

The first three commands create one file per log. Each supplied value becomes that file's only header row.

The final three commands print the stored headers. This gives you an immediate check against the required text.

You should see the three exact header rows printed in the terminal.

macOS

printf '%s\n' 'Project,Date,Skills,Level,Defense score' > ledger.csv
printf '%s\n' 'Date,Project,Prediction,Confidence,Right?,Planted claim caught,Minutes,Agent errors,Day-30 right?' > progress.csv
printf '%s\n' 'Date,Project,What I got wrong,Rule now' > error-log.csv
cat ledger.csv
cat progress.csv
cat error-log.csv

What do these commands create?

The first three commands create one file per log. Each command writes its supplied header as one line.

The final three commands print the stored headers. This gives you an immediate check against the required text.

You should see the three exact header rows printed in the terminal.

Linux

printf '%s\n' 'Project,Date,Skills,Level,Defense score' > ledger.csv
printf '%s\n' 'Date,Project,Prediction,Confidence,Right?,Planted claim caught,Minutes,Agent errors,Day-30 right?' > progress.csv
printf '%s\n' 'Date,Project,What I got wrong,Rule now' > error-log.csv
cat ledger.csv
cat progress.csv
cat error-log.csv

What do these commands create?

The first three commands create one file per log. Each command writes its supplied header as one line.

The final three commands print the stored headers. This gives you an immediate check against the required text.

You should see the three exact header rows printed in the terminal.

Tracking file missing?

Check that the terminal is inside aging-track. A different terminal location places the files in a different folder.

Use this help if the files are still missing: Help me locate my tracking CSV files.

Check the tools and export rule

The research hour depends on working source access and spreadsheet access. It also depends on audio recording plus file-return access from your agentic AI client.

Both source reports are now available beside your blank research structure. The next phase can begin with the scientific question instead of file hunting.

Use Sound Recorder on Windows or Voice Memos on macOS. Linux uses the recorder already installed on your system.

Windows

  • Press the Windows key to open search.
  • Type Sound Recorder and press Enter.
  • Allow microphone access if Windows requests it.
  • Start a short test recording.
  • Stop the test recording.
  • Play the saved test recording.
  • Confirm you can hear your voice.

macOS

  • Press Cmd+Space to open Spotlight.
  • Type Voice Memos and press Enter.
  • Allow microphone access if macOS requests it.
  • Start a short test recording.
  • Stop the test recording.
  • Play the saved test recording.
  • Confirm you can hear your voice.

Linux

  • Open your application search.
  • Search for your installed recorder.
  • Open the recorder.
  • Allow microphone access if your system requests it.
  • Start a short test recording.
  • Stop the test recording.
  • Play the saved test recording.
  • Confirm you can hear your voice.

The playback check proves the recorder can capture your later defense.

  • Open your learner-supplied agentic AI client with its usual launcher.
  • Copy the birth report URL from the browser address bar.
  • Supply the copied URL to the client.
  • Ask the client to open the supplied page.
  • Allow web access if the client requests permission.
  • Ask the client to return a small test file.
  • Confirm the returned file is available from the client.

Agent cannot return a file?

Check that the client has permission to open supplied web pages. Check that its file-return feature is enabled.

Use this help if either capability remains unavailable: Help me check the client's access settings.

Every agent brief needs fresh copies of both spreadsheet tabs. Every commit needs the same fresh copies.

Google Sheets

  • Activate the Job sheet tab before an agent brief or commit.
  • Open File.
  • Select Download.
  • Select Comma-separated values.
  • Save the downloaded file inside projects/04 as job-sheet.csv.
  • Activate the Selection tab.
  • Repeat the same download path.
  • Save the second file inside projects/04 as selection.csv.

LibreOffice Calc

  • Activate the Job sheet tab before an agent brief or commit.
  • Open File.
  • Select Save as.
  • Choose Text CSV.
  • Save the active sheet inside projects/04 as job-sheet.csv.
  • Activate the Selection tab.
  • Repeat the export using selection.csv as the file name.

Why export both tabs?

The later agent briefs read job-sheet.csv plus selection.csv as separate inputs. Fresh exports keep those files aligned with your latest decisions.

Repeat the export before every agent brief. Repeat it again before every commit.

Before you run the final check, do you expect this new repository to contain a commit yet?

  • Switch back to the terminal from earlier.
  • Check the local repository state by running this command:
git status

What does this check prove?

The command reports the current local repository state. You should see that the repository has no commits yet.

The setup files appear as local changes. Nothing has been pushed.

You have reached the setup checkpoint. The folders and blank records are ready for the research hour.

✔️ My research track matches

Your local setup is ready. Keep the workbook plus both NCHS report tabs available for the next phase.

ⓧ I'd like to double check every artifact

Repository and files
  • Confirm aging-track is a local Git repository in your home folder.
  • Confirm no remote was configured.
  • Confirm the repository has no commits.
  • Confirm aging-track/projects/04 exists.
  • Confirm ledger.csv contains exactly Project,Date,Skills,Level,Defense score.
  • Confirm progress.csv contains exactly Date,Project,Prediction,Confidence,Right?,Planted claim caught,Minutes,Agent errors,Day-30 right?.
  • Confirm error-log.csv contains exactly Date,Project,What I got wrong,Rule now.
Workbook structure
  • Confirm the workbook has tabs named Job sheet and Selection.
  • Confirm the Job sheet contains every required Item row.
  • Confirm every cell below Entry is blank.
  • Confirm the Selection tab is blank.
Tool checks
  • Confirm both named NCHS reports are open in the browser.
  • Confirm the spreadsheet application remains open.
  • Confirm the recorder passed the playback test.
  • Confirm the agentic AI client opened the supplied URL.
  • Confirm the agentic AI client returned a file.

Your research track now has a fixed local structure. Next, you can establish the scientific frame before any agent touches the evidence.

Set the Scientific Frame

Your local research workspace is ready. The source reports plus the blank job sheet are available in the tools you checked.

A selection curve can look precise while carrying an invalid personal interpretation. This step separates an age-patterned population quantity from a claim about one person's body before any calculation or agent run.

In this step, get ready to:
  • Write your own answers for all three Concept rows.
  • Compare your answers with the drill check.
  • Frame the Case as a population-level demographic reproduction.
Write the concept answers yourself

Your unaided answers create a baseline for your scientific reasoning. The drill check can then test that reasoning before the agent influences it.

  • Return to the spreadsheet from the setup step.
  • Select the Job sheet tab.
  • Keep the agentic AI client unused during this exercise.
  • Write one sentence in the Concept 1 Entry cell that classifies the result as an age-patterned observation or an individual aging mechanism.
  • Write one sentence in the Concept 2 Entry cell that checks the three words shown in its Item cell.
  • Show the full loss-fraction arithmetic in the Concept 3 Entry cell.
  • Predict whether all three answers will match before you read the drill check.
Compare your answers with the drill check

The drill check tests the boundary between population evidence and personal inference. It also checks whether your fraction calculation uses the original population as its denominator.

Drill check

  • Concept 1: It appears with age. It is an observation.
  • Concept 2: No. None of the three key words appears.
  • Concept 3: Subtract 89,100 from 90,000 to get 900. Divide 900 by 90,000 to get 0.01.
  • Compare each Concept Entry cell with its matching drill answer.
  • Correct any Entry cell that differs from the drill check.
  • Add one short reason after each corrected answer.
  • Leave error-log.csv unchanged.

Good work. Your scientific baseline has now survived its first check.

Frame the case as demographic research

Hamilton's 1966 work gives Hamilton's age-specific force of selection its name. In this project, s is a population quantity built from survival plus births.

What does s describe?

  • The s curve describes a population pattern formed from survivorship plus birth timing.
  • A biomarker claim sits outside this result.
  • A diagnosis claim sits outside this result.
  • A treatment claim sits outside this result.
  • An intervention claim sits outside this result.
  • An individual aging date sits outside this result.
  • Locate the Case row on the Job sheet tab.
  • Write one sentence framing the work as a reproduction of a population-level demographic result.
  • State that the final interpretation stays with population survival plus births.
  • Exclude claims about an individual aging mechanism or start date.
  • Exclude every intervention or dose from the Case sentence.
  • Save the workbook in your spreadsheet application.

Your Case entry now sets the boundary for every later calculation. Any final claim must remain inside that boundary.

  • Predict which completed row is most likely to drift into a personal claim.
  • Review the four completed Entry cells on the Job sheet tab.
  • Confirm that Concept 1 describes an age-patterned population observation.
  • Confirm that Concept 2 checks the required words.
  • Confirm that Concept 3 shows arithmetic ending in 0.01.
  • Confirm that the Case names a population-level demographic result.
  • Confirm that the Selection tab remains blank.

You should see learner-written entries in exactly the three Concept rows plus the Case row. The Selection tab should still contain no entries.

That scientific guardrail is now in place. Next, you will turn it into a theory plus a prediction before the agent runs.

Commit the Theory and Prediction

You already separated Hamilton's age-specific force of selection from a claim about one person's body. Now you will turn that scientific frame into a testable commitment.

An AI agent's finished result can pull your judgment toward what already happened. You will lock a prediction for the net reproduction rate before the first agent run.

In this step, get ready to:
  • Write a population-level theory plus a pre-agent prediction.
  • Trace two manual source checks to the NCHS tables.
  • Export both spreadsheet tabs into the first local commit.
Write the theory and prediction

Your research question defines the result you want to reproduce. Your theory must explain that result through population survival plus the timing of births.

  • Return to the Job sheet tab from the previous step.
  • Enter one question in the Research question Entry cell.
  • Enter your explanation in the Theory: Why should selection fade with age? Entry cell.
  • Include population survival in your theory.
  • Include the timing of births in your theory.
  • Enter 0.75 to 0.85 in the Prediction range Entry cell.
  • Choose below, inside, or above in the Prediction call: below, inside, or above the range Entry cell.
  • Add a confidence value to the same prediction-call Entry cell.

Why Predict Before the Agent?

A pre-agent prediction preserves the call you made without knowing the result. You can later compare that call with the calculated value through calibration.

The agent will handle narrow extraction tasks later. You remain responsible for the theory plus every scientific call.

  • Lock your prediction by leaving the range plus the call unchanged after you inspect later results.

Good work: your theory and prediction now preserve your judgment before any agent run.

Inspect the NCHS source tables

A manual source check gives you a reference point for judging the agent's later extraction. Provenance records the exact report location behind each copied value.

What Does Female l(x) Measure?

NCHS defines Number surviving (lx) as the number from an original hypothetical cohort of 100,000 live births that survives to the beginning of an age interval.

This project uses female survivorship l(x) at exact age boundaries. It remains a population quantity.

  • Switch back to NCHS National Vital Statistics Reports 73-02 in the browser from earlier.
  • Go to Table 2 on numbered page 15.
  • Find the 2022 All races and origins row under the ages 25 to 29 column.
  • Record the birth rate in the Manual source check: 2022 rate for ages 25 to 29 Entry cell.
  • Add the report plus the table plus the row plus the column to the same Entry cell.

Your First Reference Value

This hand-copied value becomes an independent check for the agent's later file. A disagreement sends you back to the named source location.

  • Go to Table 11 on numbered page 31 of the same report.
  • Inspect the first All races and origins sex ratio to identify the source for the later girls-share input.
  • Record in the Method and source scope Entry cell that the 45 to 49 rate includes births to women age 45 and older.
  • Switch back to NCHS National Vital Statistics Reports 74-02 in the browser from earlier.
  • Go to Table 3 on numbered page 18.
  • Find female l(x) at exact age 45.
  • Record the value in the Manual source check: female l(x) at age 45 Entry cell.
  • Add the report plus the table plus the row plus the column to the same Entry cell.

Two Checks Are Ready

You now have one birth-rate check plus one survivorship check. Each value carries a report-level trail back to its source.

  • Compare both recorded values with their original table cells one more time.

Your Job sheet now shows the values plus the source locations needed to verify them independently.

Export the tabs and commit the prediction

A CSV export freezes each tab as a file that you can inspect outside the spreadsheet. The blank Selection tab stays blank in this snapshot.

A local Git commit preserves your theory plus prediction before the agent reads any source data. Nothing in this step is pushed.

The export path depends on the spreadsheet application you checked during setup.

Google Sheets

Google Sheets exports the active tab. Export each tab separately into projects/04.

  • Activate the Job sheet tab.
  • Click File.
  • Select Download.
  • Choose Comma-separated values.
  • Save the downloaded file in projects/04 with the filename job-sheet.csv.

The Job Sheet Is Captured

The first export now contains your scientific frame plus the prediction plus the manual source checks.

  • Activate the Selection tab.
  • Click File.
  • Select Download.
  • Choose Comma-separated values.
  • Save the downloaded file in projects/04 with the filename selection.csv.

LibreOffice Calc

LibreOffice Calc exports only the active sheet as CSV. Export each tab separately into projects/04.

  • Activate the Job sheet tab.
  • Click File.
  • Select Save as.
  • Choose Text CSV.
  • Name the export job-sheet.csv inside projects/04.
  • Confirm the CSV format in any format prompt.

The Active Sheet Matters

Only the active sheet is exported. Activating each tab before saving keeps the Job sheet separate from the blank Selection tab.

  • Activate the Selection tab.
  • Click File.
  • Select Save as.
  • Choose Text CSV.
  • Name the export selection.csv inside projects/04.
  • Confirm the CSV format in any format prompt.
  • Return to projects/04 in File Explorer on Windows, Finder on macOS, or your Linux file manager.

You should see job-sheet.csv plus selection.csv in the folder. The first file contains your current Job sheet while the second represents the blank Selection tab.

  • Return to the terminal from earlier at the aging-track repository.
  • Stage the current repository snapshot by running:
git add -A

What Did Staging Do?

This stages all current changes across the local repository. The staged snapshot now includes both exported CSV files.

  • Create the first local commit by running:
git commit -m "Rank 4: theory and prediction"

What Did the Commit Preserve?

This records the staged snapshot in your local repository. It preserves the prediction before any agent-generated result can influence it.

The commit stays on your computer. No remote copy is created.

Before the final check, what commit message do you expect to see at the top of the local history?

  • Check the newest local commit by running:
git log -1

What Should I See?

You should see one local commit with the message Rank 4: theory and prediction.

That commit proves the theory plus prediction existed before the agent run.

Commit Missing?

  • Confirm that your terminal is still at the aging-track repository.
  • Use the Git identity commands from Pre-Hour Setup if Git asks for your name or email.
  • Run the commit command again after resolving the identity request.
  • Help me diagnose why my first local Git commit is missing.

Your prediction is frozen in a local commit with two source checks behind it. Next, you will build the evidence files plus the selection curve without handing the scientific judgment to the agent.

Build the Selection Curve

Your research question is written. Your prediction is fixed before any agent work begins.

An AI agent can read repetitive tables. It can also render local pages from your files.

You remain responsible for transferring values into the spreadsheet. You also inspect every formula before deciding what the curve means.

A polished page can still contain unsupported values. Provenance checks connect every displayed result to an inspectable CSV or HTML file.

In this step, get ready to:
  • Verify Brief 1's source-traceable data against your manual checks.
  • Build the Selection formulas plus the line chart in your spreadsheet.
  • Audit Brief 2's page against the exported files.
Extract source rows with Brief 1

Brief 1 limits the agent to three named NCHS tables. Its job is extraction with file-level provenance.

  • Switch back to the agentic AI client from setup.
  • Send only the following Brief 1 text:
Brief 1: Data reader

Goal
Read the named NCHS report tables and return a traceable data file plus a matching browser view.

Inputs
1. NCHS National Vital Statistics Reports 73-02, Births: Final Data for 2022, Table 2 and Table 11 only.
2. NCHS National Vital Statistics Reports 74-02, United States Life Tables, 2022, Table 3 only.

Output
Return data.csv with columns Value name, Value, Report, Table, Row.
Include the eight 2022 All races and origins birth rates for age groups 10-14 through 45-49, the first All races and origins sex ratio from Table 11, and female l(x) at exact ages 10, 15, 20, 25, 30, 35, 40, 45, and 50.
Return data.html showing the same rows.

Checks
Copy each value exactly with its report, table, and row.
The CSV and HTML rows must match.
Use only the named reports and tables.

Refusals
Never compute a value.
Write not found rather than guess.
Never name a planted claim or a sealed value.

How Brief 1 Protects Provenance

  • The input section restricts the search to the reports you already inspected.
  • The output requires a report plus a table plus a row for each value.
  • The checks require matching rows in data.csv plus data.html.
  • The refusals prevent the agent from filling gaps with calculations or guesses.
  • Give the extraction up to 5 minutes.
  • Save the returned data.csv inside projects/04.
  • Save the returned data.html inside projects/04.
  • Return to the spreadsheet application from earlier.
  • Open projects/04/data.csv.
  • Return to the browser from earlier.
  • Open projects/04/data.html.

You should see the requested source rows in both files. Each row should name its report plus its table plus its source row.

No Usable Data After 5 Minutes?

If a report page fails to load in the client, paste only the named table text into the same brief. If Brief 1 still returns no usable data after 5 minutes, copy the values by hand from the named tables.

Use the manual-data fallback for this project. Drop only reader parity check 6 during validation.

Ask for help with the blocked extraction:

Your two manual source checks now act as calibration points for the extraction.

  • Locate the ages 25 to 29 birth-rate row in data.csv.
  • Compare that row with your manual Job sheet entry.
  • Locate the exact-age-45 female l(x) row in data.csv.
  • Compare that row with your second manual Job sheet entry.

Manual Check Does Not Match?

  • Inspect the report row named by the agent.
  • Make the source decision yourself.
  • Add the confirmed agent mistake to error-log.csv.
  • Keep the returned evidence unchanged after recording the mistake.
  • Get help tracing the mismatch:

Strong start. You have tested the extraction against values you found before the agent ran.

The source blocks place the extracted values beside the formulas that use them. This keeps the calculation inspectable inside the workbook.

  • Switch back to the research workbook from earlier.
  • Enter Age group plus 2022 birth rate across A2:B2 on Job sheet.
  • Fill A3:A10 with 10-14, 15-19, 20-24, 25-29, 30-34, 35-39, 40-44, plus 45-49.
  • Copy the eight matching rates from data.csv into B3:B10.
  • Compare A2:B10 with the eight birth-rate rows in data.csv.

What Do the Birth Rates Represent?

These age-specific birth rates count births per 1,000 women in each specified age group. The oldest rate includes births to women age 45 or older.

Your terminal boundary remains age 50. Its contribution is set to zero later in this step.

  • Enter Age boundary plus Female lx across D2:E2.
  • Fill D3:D11 with 10, 15, 20, 25, 30, 35, 40, 45, plus 50.
  • Copy the nine matching female l(x) values from data.csv into E3:E11.
  • Confirm that E10 matches your manual exact-age-45 source check.

What Does Female l(x) Mean?

Female survivorship starts with a hypothetical cohort of 100,000 live births. Each l(x) value counts those surviving to the beginning of that age interval.

The contribution formulas use this population survival pattern. They do not describe one person's body.

  • Enter Sex ratio in G3.
  • Copy the first All races and origins Table 11 value into H3.
  • Confirm that H3 matches the corresponding data.csv row.
  • Enter Girls share in G4.
  • Enter =100/(100+H3) in H4.
  • Confirm that H4 displays a calculated fraction.
  • Save the workbook.

Why Calculate Girls' Share?

The first Table 11 value uses the report's per-100-female-birth scale. The formula converts that ratio into the share of births that are girls.

That share converts total expected reproduction into the net reproduction rate used by your prediction.

Calculate s and chart the curve

The Hamilton age-specific force of selection changes as future weighted reproduction falls behind each age boundary. Your s column expresses that remaining contribution as a fraction of the total.

The formulas link back to the source blocks. This keeps the agent outside the calculation.

  • Switch to the Selection tab.
  • Enter Age, lx, Contribution, plus s across A2:D2.
  • Fill A3:A11 with 10, 15, 20, 25, 30, 35, 40, 45, plus 50.
  • Confirm that the nine age boundaries end at 50.
  • Enter ='Job sheet'!E3 in B3.
  • Fill the B3 formula through B11.
  • Compare B3:B11 with Job sheet!E3:E11.

The linked values should match the female survivorship source block from age 10 through age 50.

  • Enter =(B3/100000)*'Job sheet'!B3*5/1000 in C3.
  • Fill the C3 formula through C10.
  • Enter 0 in C11.
  • Confirm that C3:C10 contains calculated contributions.
  • Confirm that C11 remains 0.

What Does the Contribution Formula Do?

  • The survivorship term converts l(x) into a surviving fraction of the original cohort.
  • The birth-rate term contributes expected births for that age group.
  • The factor of 5 represents the five-year age interval.
  • The final division converts births per 1,000 women into births per woman.
  • Enter Total contributions in F3.
  • Enter =SUM(C3:C10) in G3.
  • Confirm that G3 displays a calculated total.
  • Enter Net reproduction rate in F4.
  • Enter =G3*'Job sheet'!$H$4 in G4.
  • Confirm that G4 displays a calculated rate.

Before you calculate s, what pattern do you expect as fewer future births remain after each age boundary?

  • Enter =SUM(C3:$C$10)/SUM($C$3:$C$10) in D3.
  • Fill the D3 formula through D10.
  • Enter 0 in D11.
  • Inspect D3:D11 from top to bottom.

You should see s begin at 1 before declining toward 0.

The chart turns that column into a visible age pattern. Choose the instructions for your spreadsheet application.

Google Sheets

  • Select A2:A11.
  • Hold Ctrl on Windows or Cmd on macOS while selecting D2:D11.
  • Click Insert in the top menu.
  • Click Chart.
  • Choose Line chart under Chart type in Setup.
  • Confirm that Age supplies the horizontal axis.
  • Confirm that s is the only plotted series.

LibreOffice Calc

  • Select A2:A11.
  • Hold Ctrl on Windows or Linux or Cmd on macOS while selecting D2:D11.
  • Click Insert in the top menu.
  • Click Chart.
  • Choose Line as the chart type.
  • Choose Data series in columns.
  • Select First row as label.
  • Click Finish.
  • Save the workbook.
  • Inspect the finished line chart on the Selection tab.

You should see age on the horizontal axis. The s line should fall from 1 toward 0.

Chart Does Not Show Age Against s?

  • Confirm that the chart uses only A2:A11 plus D2:D11.
  • Confirm that the chart type is a line chart.
  • Confirm that the first selected column supplies the age labels.
  • Get help correcting the chart ranges:
Render and audit the selection page

Brief 2 turns your exported workbook tabs into a local browser page. Fresh exports are essential because the earlier files still represent the blank Selection tab.

Choose the export path for the spreadsheet application you already use.

Google Sheets

Google Sheets downloads the active tab. Export each tab separately into projects/04.

  • Activate the Job sheet tab.
  • Click File.
  • Select Download.
  • Select Comma-separated values.
  • Save the download as projects/04/job-sheet.csv by replacing the earlier file.
  • Activate the Selection tab.
  • Repeat the same download path.
  • Save the download as projects/04/selection.csv by replacing the earlier file.

LibreOffice Calc

LibreOffice Calc exports only the active sheet to CSV. Export each tab separately into projects/04.

  • Activate the Job sheet tab.
  • Click File.
  • Select Save as.
  • Choose Text CSV.
  • Save the sheet as projects/04/job-sheet.csv by replacing the earlier file.
  • Keep the current CSV format settings if a confirmation dialog appears.
  • Activate the Selection tab.
  • Repeat the export as projects/04/selection.csv by replacing the earlier file.

Both CSV files now represent the completed workbook. Brief 2 must render those files without repairing or replacing any value.

  • Switch back to the agentic AI client.
  • Send only the following Brief 2 text:
Brief 2: Selection page

Goal
Render the learner's completed Selection tab without changing or choosing any value.

Inputs
1. selection.csv
2. job-sheet.csv

Output
Return selection.html.
Show s against age as a line chart.
Mark only the halving age already recorded by the learner in job-sheet.csv. Never choose it.
Show the contributions and the net reproduction rate as a table.

Checks
Every displayed number must come from selection.csv or job-sheet.csv.
The page must open locally in a browser.
The table and chart must agree with the source files.

Refusals
Never calculate, repair, round, replace, or invent a number.
Write not found rather than guess.
Never name a planted claim or a sealed value.

How Brief 2 Keeps You in Control

  • The page receives only your two current CSV exports.
  • The agent renders the curve plus the tables.
  • The agent cannot choose a halving age.
  • Every displayed number must already exist in an input file.
  • Give Brief 2 up to 3 minutes.
  • Save the returned selection.html inside projects/04.

No Page After 3 Minutes?

Use the spreadsheet chart as the selection artifact if Brief 2 returns no page within 3 minutes. Keep both current CSV exports for the later evidence checks.

Get help diagnosing the rendering delay:

Before you open the page, do you think visual polish alone proves that every value stayed unchanged?

  • Return to the browser from earlier.
  • Open projects/04/selection.html.

You should see a line chart of s against age. You should also see contributions plus the net reproduction rate in a table.

The polished rendering proves only that the page opens locally. Source fidelity still requires a direct file comparison.

  • Compare every plotted age with selection.csv.
  • Compare every plotted s value with selection.csv.
  • Compare every contribution in the page table with selection.csv.
  • Compare the displayed net reproduction rate with selection.csv.
  • Confirm that the page contains no halving-age marker because the Job sheet does not contain that call yet.

Page Value Does Not Match?

  • Record the mismatch in error-log.csv.
  • Keep the learner-controlled CSV value unchanged.
  • Reject the mismatched page as unsupported evidence.
  • Get help tracing the mismatch:

Before the final audit, which evidence do you expect to matter more: visual polish or exact file parity?

  • Return to data.html.
  • Compare every displayed row with data.csv.
  • Return to selection.html.
  • Compare its chart plus its table with selection.csv.
  • Return to the Selection tab.
  • Confirm that the spreadsheet chart falls from 1 toward 0.

You should find matching rows across each HTML and CSV pair. The spreadsheet chart should show the same downward direction as selection.html.

That is the key result of this step. Your agent rendered the evidence while your exported files retained control of every number.

✔️ Awesome, I've got everything!

Your source rows are checked. Your spreadsheet now calculates plus charts the selection curve.

Double check that the workbook is saved. Confirm that all five project files are inside projects/04.

ⓧ I'd like to double check the spreadsheet

Compare your workbook with this exact checkpoint.

  • Confirm that Job sheet!A2:B10 contains the headers plus eight age-group birth-rate rows.
  • Confirm that Job sheet!D2:E11 contains the headers plus nine female l(x) boundary rows.
  • Confirm that Job sheet!G3 says Sex ratio.
  • Confirm that Job sheet!H3 contains the copied Table 11 value.
  • Confirm that Job sheet!G4 says Girls share.
  • Confirm that Job sheet!H4 contains =100/(100+H3).
  • Confirm that Selection!A2:D2 contains Age, lx, Contribution, plus s.
  • Confirm that Selection!A3:A11 contains age boundaries 10 through 50 in five-year steps.
  • Confirm that Selection!B3 contains ='Job sheet'!E3 filled through B11.
  • Confirm that Selection!C3 contains =(B3/100000)*'Job sheet'!B3*5/1000 filled through C10.
  • Confirm that Selection!C11 contains 0.
  • Confirm that Selection!F3 says Total contributions.
  • Confirm that Selection!G3 contains =SUM(C3:C10).
  • Confirm that Selection!F4 says Net reproduction rate.
  • Confirm that Selection!G4 contains =G3*'Job sheet'!$H$4.
  • Confirm that Selection!D3 contains =SUM(C3:$C$10)/SUM($C$3:$C$10) filled through D10.
  • Confirm that Selection!D11 contains 0.
  • Confirm that the line chart plots Age against s.
  • Confirm that projects/04 contains job-sheet.csv, selection.csv, data.csv, data.html, plus selection.html.
  • Confirm that selection.html shows the curve plus the contributions table plus the net reproduction rate.
  • Confirm that selection.html does not contain an agent-chosen halving age.

Your selection curve now runs from traceable source rows to a checked browser page. Next, you will test its reasoning plus calibration plus robustness before consulting the sealed key.

Validate the Result

Your selection curve now connects the source tables to a visible result. The supporting CSV and HTML files also preserve where each value came from.

A plausible curve can still hide an unsupported claim. This step separates artifact quality from scientific reasoning through calibration and robustness checks.

In this step, get ready to:
  • Verify the generated files against their spreadsheet inputs.
  • Test the formulas plus the scientific interpretation.
  • Record your verdicts before consulting the sealed key.
Check the artifacts and formulas

Artifact validation asks whether every rendered value still matches its source file. This protects the result from a polished page that quietly changes the evidence.

  • In your browser from earlier, switch back to data.csv plus data.html.
  • Compare every heading in data.html with the corresponding heading in data.csv.
  • Compare every data row in data.html with the corresponding row in data.csv.
  • Switch back to selection.html from earlier.
  • Compare its contribution table with selection.csv.
  • Compare its net reproduction rate with selection.csv.
  • Compare its halving-age marker with the learner-recorded call in job-sheet.csv.
  • Record the reader-parity result in the Job sheet tab.

What does reader parity prove?

Reader parity means the browser view tells the same story as its source file. Matching rows establish file-level provenance for the rendered evidence.

Record any missing row or changed value as an agent error. Preserve the returned evidence so the error remains auditable.

  • Return to the Selection tab in your research spreadsheet.
  • Inspect the links in B3:B11 against the fill pattern that starts with ='Job sheet'!E3.
  • Inspect C3:C10 against the contribution formula that starts with =(B3/100000)*'Job sheet'!B3*5/1000.
  • Confirm that C11 contains 0.
  • Inspect G3 for =SUM(C3:C10).
  • Inspect G4 for =G3*'Job sheet'!$H$4.
  • Inspect D3:D10 against the cumulative formula that starts with =SUM(C3:$C$10)/SUM($C$3:$C$10).
  • Confirm that D11 contains 0.

The chart should show s falling from 1 toward 0 as age increases. That direction is the first visible scientific check.

  • Record the formula-check result in the Job sheet tab.
  • Record whether the curve falls from 1 to 0.
  • Read the net reproduction rate from G4.
  • Calculate whether that result is within 5 percent of your original prediction target.
  • Compare the result with your written range of 0.75 to 0.85.
  • Record whether the result falls below the range.
  • Record whether the result falls inside the range.
  • Record whether the result falls above the range.

How does the tolerance rule work?

A rate matches the sealed value when another tool computes it from the same data within 5 percent. The selection curve uses a direction check because its required pattern is a fall from 1 to 0.

Keep the original prediction range plus its original call unchanged. A miss belongs in the error log.

Test the scientific reasoning

The value of s summarizes future weighted reproduction after an age boundary. Its inputs describe population survival plus the timing of births.

  • Scan D3:D11 for the value closest to 0.5.
  • Record its age boundary as your halving-age call.
  • Review candidate claims a, b, plus c in the Job sheet tab.
  • Record which candidate turns the population result into a claim about one person's aging.
  • Record that s is a population survival-and-births quantity.

Why run a robustness check?

A robustness check changes one assumption while holding the remaining inputs fixed. Here you shift the timing of births to test whether the halving boundary moves with that timing.

The original table remains your primary result. The temporary table tests the interpretation.

  • On the Job sheet tab, move each age-specific birth rate one group later.
  • Enter 0 for the temporary 10-14 birth rate.
  • Switch to the Selection tab.
  • Identify the temporary s value closest to 0.5.
  • Record the new closest-to-half boundary in the robustness row.
  • Return to the Job sheet tab.
  • Restore all eight original birth rates from data.csv.
  • Confirm that the original selection curve returns in the Selection tab.

The restored chart preserves your primary result. The recorded temporary boundary shows whether the timing of births changes where selection reaches half strength.

  • Return to the female l(x) source block on the Job sheet tab.
  • Subtract the age-45 survivor value from the age-25 survivor value.
  • Divide the difference by the age-25 survivor value.
  • Multiply the result by 100.
  • Record the percentage change in the reasoning-check entry.
  • Record whether the change is under 3 percent.
Record verdicts and consult the sealed key

Separate verdicts stop one successful check from hiding a failure elsewhere. Each verdict answers a different question about the result.

  • In the Artifact check row, record whether the files open correctly.
  • In the Artifact check row, record whether the rendered files match their inputs.
  • In the Reasoning check row, record whether the interpretation stays at the population level.
  • In the Calibration check row, record whether the written range contains the result.
  • In the Calibration check row, record whether your original call was right.
  • In the Retention check row, schedule the day-30 ratio item without answering it today.

What does retention test?

A retention check tests whether you can apply the ratio rule after time has passed. Leaving today's answer blank protects that future test.

  • In your spreadsheet application, open progress.csv from the aging-track folder.
  • Add a new row for Rank 4.
  • Enter the date that falls 30 days after today in the Date column.
  • Enter 0.10 / 0.40 as the scheduled ratio item.
  • Leave the Day-30 right? entry blank.
  • Save progress.csv in the aging-track folder.
  • Return to the Job sheet tab.
  • Enter This is a training exercise, not medical advice. in the Limits row.

Before you read the sealed key, do you expect every pre-key call to match the supplied calculations?

  • Read the sealed key below after confirming that your original calls are saved.

Sealed key

  • The sealed net reproduction rate is 0.796. The total contributions value is 1.628. The girls' share is 0.489.
  • The written range of 0.75 to 0.85 contains the sealed result. The value 0.80 is the sealed result rounded.
  • The s values are 1 at age 10, 1.00 at age 15, 0.96 at age 20, 0.78 at age 25, 0.500 at age 30, 0.21 at age 35, 0.04 at age 40, plus 0.00 at ages 45 plus 50.
  • The closest-to-half boundary is age 30.
  • The planted claim is candidate b. A population rate is not a person's rate.
  • The one-group-later check gives s = 0.78 at age 30 plus s = 0.4975 at age 35. The closest-to-half boundary moves to age 35.
  • Female survivors fall from 98,822 at age 25 to 96,143 at age 45. The percentage change is under 3 percent.
  • The published United Nations comparison is 0.80 daughters per woman for the United States in 2022. A small difference is expected because the United Nations uses its own estimates.
  • Keep the day-30 ratio answer sealed until the scheduled date.

A mismatch is useful evidence about the original prediction or checking process. Preserve the call that existed before the key was visible.

  • Compare each pre-key call with the sealed value.
  • Leave the original prediction range unchanged.
  • Leave the original prediction call unchanged.
  • Open error-log.csv from the aging-track folder if any call differs.
  • Add one row for each validation mismatch.
  • Add one row for each unrecorded agent error.
  • Save error-log.csv in the aging-track folder.

Your final exports must capture the restored original curve plus every validation verdict. Choose the spreadsheet application you have used throughout the project.

Google Sheets

  • Switch back to the research workbook.
  • Activate the Job sheet tab.
  • Click File.
  • Select Download.
  • Choose Comma-separated values.
  • Save the export as job-sheet.csv in aging-track/projects/04.
  • Activate the Selection tab.
  • Repeat the same download path for the active tab.
  • Save the second export as selection.csv in aging-track/projects/04.

LibreOffice Calc

LibreOffice exports only the active sheet to a CSV file. Activate each tab before saving its export.

  • Switch back to the research workbook.
  • Activate the Job sheet tab.
  • Click File.
  • Select Save as.
  • Choose Text CSV.
  • Save the export as job-sheet.csv in aging-track/projects/04.
  • Activate the Selection tab.
  • Repeat the same export for the active tab.
  • Save the second export as selection.csv in aging-track/projects/04.

Before you inspect the exports, do you expect them to preserve the validation verdicts plus the restored original curve?

  • In your file manager, return to aging-track/projects/04.
  • Open the updated job-sheet.csv.
  • Confirm that it contains the original prediction plus the completed validation verdicts.
  • Confirm that it contains the halving-age call plus the robustness result.
  • Confirm that it contains This is a training exercise, not medical advice. in the limits entry.
  • Open the updated selection.csv.
  • Confirm that it contains the restored original birth-rate result.
  • Confirm that its final age boundary remains 0 for the contribution plus s values.

That is the hard part complete: your curve now has recorded artifact checks plus a population-level interpretation that survived calibration and robustness testing.

Missing checks from an export?

  • Return to the workbook to confirm that you entered the verdicts in the Job sheet tab before exporting.
  • Confirm that you restored the eight original birth rates before exporting selection.csv.
  • Export each active tab separately if both files contain the same sheet.
  • Replace the older files in aging-track/projects/04 with the corrected exports.
  • Help me diagnose why my spreadsheet CSV exports do not contain the completed validation entries.

Secret mission

Phase V - Close Out and Defend

Turn your checked selection curve into a report where every sentence points to its supporting file. Then package the result as a PDF before defending the population-level conclusion in a two-minute recording.

Clean Up Your Resources

Clean Up Your Resources

All project resources stay on your machine, so no cloud resource or paid service keeps running. Choose whether to keep the evidence package, pause your work until the scheduled checks, or delete the local repository.

Resources you used:

  • Local evidence package in aging-track/projects/04 with job-sheet.csv, selection.csv, data.csv, data.html, selection.html, report.html, report.pdf, plus defense-04.
  • Track logs in aging-track: ledger.csv, progress.csv, plus error-log.csv.
  • Local Git repository in aging-track with two commits and no remote copy.

Keep everything running

No action is needed. Choose this option if you want the complete evidence package available for the scheduled defense score and retention check.

  • Keep the aging-track repository so its files and local commit history remain together.
  • Return to defense-04 after one week to score the recorded defense.
  • Complete the blank Day-30 right? field in progress.csv after the scheduled retention check.

Pause - I'll come back to this later

Close the tools you used while keeping every local artifact. No process needs to remain active because the files and commits persist on disk.

  • Close the research spreadsheet.
  • Close the NCHS report tabs in your browser.
  • Exit the agentic AI client.
  • Exit the local recorder.
  • Keep the aging-track folder unchanged until the week-one and day-30 checks.

Delete - I don't want to use this again

Deleting aging-track permanently removes the evidence package, logs, and both local commits. There is no remote copy to restore.

  • Copy any report.html, report.pdf, or defense-04 file you want to keep into a folder outside aging-track.
  • Close the research spreadsheet before deleting its exported files.
  • Close any terminal that is currently using a folder inside aging-track.

macOS

  • Remove the complete local repository from your home folder by running these commands in Terminal:
cd ~
rm -rf aging-track
ls ~
What do these commands do?
  • The first line moves the terminal to your home folder.
  • The second line permanently removes the local project folder plus its contents.
  • The final line lists your home folder so you can verify the deletion.

You should no longer see aging-track in the list.

Still see the folder?

Confirm that the folder name is exactly aging-track. Check that no application still has a file from that folder open.

Help me remove the local aging-track folder safely.

Windows

  • Press the Windows key to open system search.
  • Type Command Prompt into the search field.
  • Press Enter to open Command Prompt.
  • Remove the complete local repository from your home folder by running these commands:
rmdir /s /q "%USERPROFILE%\aging-track"
dir "%USERPROFILE%"
What do these commands do?
  • The first line permanently removes the local project folder plus its contents.
  • The second line lists your home folder so you can verify the deletion.

You should no longer see aging-track in the list.

Still see the folder?

Confirm that you opened Command Prompt. Close any spreadsheet or browser window that still uses a file from aging-track.

Help me remove the local aging-track folder safely.

Linux

  • Remove the complete local repository from your home folder by running these commands in your terminal:
cd ~
rm -rf aging-track
ls ~
What do these commands do?
  • The first line moves the terminal to your home folder.
  • The second line permanently removes the local project folder plus its contents.
  • The final line lists your home folder so you can verify the deletion.

You should no longer see aging-track in the list.

Still see the folder?

Confirm that the folder name is exactly aging-track. Check that no application still has a file from that folder open.

Help me remove the local aging-track folder safely.

Nice Work!

Nice Work!

Rank 4 is complete. Your local evidence package now shows why selection fades with age at the population level.

What you learned:

  • Reproduce a population-level selection curve from official birth-rate data plus female-survivorship data. Your spreadsheet shows how selection fades across age boundaries.
  • Protect scientific judgment by recording the theory plus prediction before the AI agent runs. Manual source checks keep the result separate from a claim about one person's aging.
  • Audit agent-built CSV plus HTML artifacts through file-level provenance. Test the result with calibration plus robustness checks. Record every miss without rewriting your original call.
  • Secret Mission: Trace every report sentence to its supporting file. Package the checked result as a local PDF plus a two-minute audio defense. Preserve the audit trail in logs plus two local Git commits.

Ready to quiz yourself?