Add series support and publish "ai didn't break the laws of physics"#13
Merged
Conversation
# Problem The build pipeline had no way to express ordered multi-part series. Posts inside a theme folder all sorted newest-first with no concept of reading order, and there was no mechanism for a theme to surface a human-readable series title or per-post part numbers. # Solution Extended `build.js` to recognize a theme folder as a "series" when every post in it declares an integer `part` frontmatter field. Series themes sort ascending by part number instead of descending by date, use the `series` frontmatter string as their section heading on the homepage and listing page, and render a small "Part N" kicker above each post title in every listing context. A helper `isSeriesPosts` drives all of this so the logic stays in one place. The homepage sort also promotes series sections above regular topic buckets so a curated reading path sits above unordered tag groupings. Added a `.post-part` CSS rule to render the kicker as a small, muted, uppercase label that sits cleanly above the post title without competing with it. With the infrastructure in place, published the first post in the "understanding clients in the age of ai" series: "ai didn't break the laws of physics," which covers the Entity Knowledge Base Engine rebuild at Table22, the scope-cutting discipline that made it shippable in a week, and why de-risking in throwaway prototypes was the real prerequisite for committing to permanent architecture. # Notes The series heading on the listing page and homepage is pulled from `posts[0].series`, so all posts in a series folder must carry the same `series` value. A mismatch won't error today; it will silently use whatever the first (lowest part number) post declares.
81af831 to
c8ee606
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The build pipeline had no way to express ordered multi-part series. Posts inside a theme folder all sorted newest-first with no concept of reading order, and there was no mechanism for a theme to surface a human-readable series title or per-post part numbers.
Solution
Extended
build.jsto recognize a theme folder as a "series" when every post in it declares an integerpartfrontmatter field. Series themes sort ascending by part number instead of descending by date, use theseriesfrontmatter string as their section heading on the homepage and listing page, and render a small "Part N" kicker above each post title in every listing context. A helperisSeriesPostsdrives all of this so the logic stays in one place. The homepage sort also promotes series sections above regular topic buckets so a curated reading path sits above unordered tag groupings.Added a
.post-partCSS rule to render the kicker as a small, muted, uppercase label that sits cleanly above the post title without competing with it.With the infrastructure in place, published the first post in the "understanding clients in the age of ai" series: "ai didn't break the laws of physics," which covers the Entity Knowledge Base Engine rebuild at Table22, the scope-cutting discipline that made it shippable in a week, and why de-risking in throwaway prototypes was the real prerequisite for committing to permanent architecture.
Notes
The series heading on the listing page and homepage is pulled from
posts[0].series, so all posts in a series folder must carry the sameseriesvalue. A mismatch won't error today; it will silently use whatever the first (lowest part number) post declares.