Skip to content

feat: publish application-ready resume system - #22

Merged
szmyty merged 4 commits into
mainfrom
feat/application-ready-resume-v2
Aug 21, 2026
Merged

szmyty merged 4 commits into
mainfrom
feat/application-ready-resume-v2

Conversation

@szmyty

@szmyty szmyty commented Aug 21, 2026 •

Copy link
Copy Markdown
Owner

Summary

Publishes a cohesive, application-ready résumé system from a single verified career ledger:

  • makes content/career.json the canonical source for chronology, claims, education, research, skills, provenance, and audience policy;
  • produces a recruiter-facing Platform/DevEx baseline plus platform, research/AI-systems, and mobile/geospatial derivatives;
  • separates permanently public artifacts from local, owner-approved application-contact overlays;
  • adds deterministic ATS/PDF/privacy/link gates and a nine-artifact CI matrix;
  • removes stale duplicated LaTeX career copy so profiles can select facts without forking them.

Canonical facts and content

  • Locks the verified MIT Lincoln Laboratory and Incompris chronology, education history, bounded funding language, and Reflector concept DOI.
  • Models Incompris as independent engineering/research without inventing an employment-status qualifier.
  • Documents Greater Boston, MA as the intentionally approved permanent-public regional label.
  • Removes the unsupported AI-infrastructure profile and adds an evidenced mobile/geospatial lane.

Public and application publication model

  • Public builds contain only the broad public location and allowlisted HTTPS destinations.
  • Application builds require an ignored local contact overlay and fail closed on unknown fields.
  • CI uses synthetic contact data only, validates application PDFs, and uploads only public PDFs/renders.
  • Generated application artifacts and local contact values are never committed or uploaded.

Rendering and pagination

  • The canonical public baseline keeps all four Incompris bullets together on page 1.
  • Page 2 begins cleanly at Research Artifact and continues through Education and Skills.
  • The public research CV uses a deliberate section boundary: page 1 contains Summary, Experience, and Independent Engineering & Research; page 2 begins at Research Artifact and continues through Education and Skills.
  • Canonical Artifact year and Concept DOI labels keep the page-2 metadata explicit and preserve the application baseline's page-share safety margin under the longer synthetic CI header.
  • The near-empty spill-page word floor is 30%; the independent vertical-occupancy gate remains unchanged at 58%.
  • Every intended public/application résumé and the public research CV renders as two pages with embedded fonts, safe PDF actions, intentional metadata, and en-US language.

Build-path regression prerequisites

This PR also includes two narrowly scoped CI/build prerequisites:

  1. latexmk emits <basename>.generated.pdf, while the prior publisher looked for <basename>.pdf. The publisher now locates the generated suffix correctly, and a regression test covers the behavior. It also normalizes CV filename casing.
  2. Ubuntu requires the lmodern Debian package for lmodern.sty; CI now installs it explicitly in addition to the existing TeX/font packages.

Validation

  • python -m compileall -q scripts tests
  • poetry check --lock (passes; Poetry reports existing schema-deprecation warnings only)
  • 32/32 pytest tests
  • canonical ledger: 2 roles, 11 claims, 2 education records
  • 2 document manifests and 4 role profiles validated
  • no unresolved placeholders
  • 4 public and 4 application destinations validated online
  • exactly 9 intended PDFs: 4 public résumés, 4 application résumés, and 1 public research CV
  • Poppler + pypdf ATS extraction passed for all 9 artifacts
  • PDF metadata, filename, privacy, allowlisted links, embedded fonts, page count, word-share, and 58% occupancy gates passed for all 9 artifacts
  • all 18 pages rendered with Poppler and visually inspected; no clipping, overlap, broken glyphs, malformed rules, accidental orphan blocks, or excessive dead area
  • public/application comparison passed: public artifacts expose only the documented public projection; application artifacts contain only the approved overlay and are not uploaded

Artifact matrix (application rows use CI's synthetic contact overlay so their extraction counts match the reproducible workflow):

Lane Audience Artifact Pages Poppler / pypdf chars Words by page Vertical occupancy
General baseline Public dist/resume/general/public/Alan-Szmyt-Resume.pdf 2 3975 / 3313 255 / 117 68% / 59%
General baseline Application dist/resume/general/application/Alan-Szmyt-Resume-Platform-DevEx.pdf 2 4103 / 3464 270 / 117 68% / 59%
Platform / DevEx Public dist/resume/platform/public/Alan-Szmyt-Resume-Platform-DevEx-Public.pdf 2 4131 / 3359 208 / 169 58% / 66%
Platform / DevEx Application dist/resume/platform/application/Alan-Szmyt-Resume-Platform-DevEx.pdf 2 4265 / 3510 223 / 169 58% / 66%
Research / AI systems Public dist/resume/research/public/Alan-Szmyt-Resume-Research-AI-Systems-Public.pdf 2 4085 / 3299 198 / 172 58% / 66%
Research / AI systems Application dist/resume/research/application/Alan-Szmyt-Resume-Research-AI-Systems.pdf 2 4256 / 3487 216 / 172 58% / 66%
Mobile / geospatial Public dist/resume/mobile-geospatial/public/Alan-Szmyt-Resume-Mobile-Geospatial-Public.pdf 2 3714 / 2931 171 / 149 59% / 63%
Mobile / geospatial Application dist/resume/mobile-geospatial/application/Alan-Szmyt-Resume-Mobile-Geospatial.pdf 2 3835 / 3069 186 / 149 59% / 63%
Research CV Public dist/cv/research/public/Alan-Szmyt-CV-Research-AI-Systems-Public.pdf 2 3984 / 3216 244 / 118 82% / 82%

The rebalanced public research CV passes both ATS parsers, the 30% per-page word-share floor, the unchanged 58% vertical-occupancy gate, privacy/link/metadata/font checks, and page-by-page visual QA. Generated PDFs remain uncommitted.

Closes #18
Closes #19
Closes #20
Closes #21

@szmyty
szmyty marked this pull request as ready for review August 21, 2026 20:41
@szmyty
szmyty merged commit 1860cde into main Aug 21, 2026
2 checks passed
@szmyty
szmyty deleted the feat/application-ready-resume-v2 branch August 21, 2026 20:41
@devactivity-app

Copy link
Copy Markdown

Pull Request Summary by devActivity

Metrics

Cycle Time: 3h 3m Coding Time: < 1 min

Achievements

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

Labels

None yet

Projects

None yet

1 participant