Cycle stories
Story Survey — c5 to c147

Source: c124 cycle-stories, survey (2026-10-26). Each card is an auto draft in option E's shape: a short why and result, a hero pair found by the rule (before → after, else early → final, else new), the people credited, and what's missing. Open any one to read it as a story.

Where the story lives (adopted 2026-10-26)

One cycle, two views, same address: Story becomes the default at /cycles/<project>/<id>, and today's page becomes Record at …/record. A Story · Record · Report strip sits under the header.

Thin cycles still get a Story view with an honest "not finished yet". If even that can't be drafted, the address falls through to Record. Clicking any cycle below opens its story on the real cycle page.

139
cycles surveyed
16
strong stories
53
with a hero pair
26
credit someone outside
37
active cycles that should close
139 of 139 shown
View
Size
Sort
Group by
c147—open
Findings, a Common Tongue

Why: A rule that stops something on your laptop gives you no explanation, and an inbox for it would be one more thing to check.

Result: One record, the finding, is shared by your laptop and the company: it goes up whole, follow-ups come down onto it, and what was stopped in time stays the gentlest case.

Mark PetersonMark ParsonRob Genova

Next: The Peterson conversation from peterson.md; then qnative's cycle from qnative-brief.md, whose step 0 is design's (each policy's configuration in the sidecar). Committed in 81f3ee59ee, unpushed; c149 builds the simulation's prevented rows against it. · waiting on Mark Peterson

c146—open
Config File

Why: qcontrol's settings file had no page, and people will ask their agents to change it.

Result: A Config page with three sources and one check, and an agent that drafts the whole file for the person to apply. In the eval, 9 of 12 plain instructions got a correct first draft, and three one-line wording fixes brought the rest; the stand-in check still drifts from qcontrol's own.

Mark Parson

Next: Phase 6: Guide 05 rewritten from a proposal into a contract, c145's configure step pointed at this page, the Outcome. Then F1 (link qconfig as the app's check) as a qnative cycle of its own, and the managed-machine instruction once C9 is answered. · waiting on Mark Peterson on C9; Tyler on Q6; engineering on the check, the write and the reload

c144—closed Nov 13
Theatre Mode, now Simulation mode

Why: People learn security by seeing an incident, nobody can afford a real one, and an unlabelled pretend one is a hazard of its own.

Result: Six disaster stories that play in the lab's real dashboard, beat by beat on the person's Next, between one click on and one click off, with the findings worked out by the dashboard's own rules and pointed at one by one. Replaying them with one policy at Enforce shows what would have stopped each, and corrected the first draft in eight places. A show mode plays them unattended; the first story also plays in the native app.

Mark Parson
Read as story →RecordNov 12 → Nov 13
c139—open
Updates

Why: The desktop app will update often, and the part that installs updates had no screen, no choice and no notes.

Result: One Settings screen that says where an update stands, three ways to let it happen, a quiet trace after it does, and the same screen ready for a bigger rollout later. Eleven choices wait for Mark.

Mark Parson

Next: Mark rules the eleven calls in review-1 (the preference's default, what invisible means, inline notes, skip, who owns the notes, one update or two, when an automatic install restarts, the version string, Settings' seat, the clock and the age line, the era as data). Then Phase 4: the rulings applied to the mocks, and the states pushed into qnative as stories through /gpui-story. · waiting on Mark's rulings; Tyler on signing, the updater, the feed's fields, qcontrol's update, package-manager detection and restart mechanics (T1–T6)

c138—open
Developer Mode

Why: The two tools our engineers use to watch the sensor are losing their home, and customers who measure every megabyte must not pay for them.

Result: A plan and nine rulings, then the first four phases built: the locks, the stream underneath, a page that picks fake or real data, and the live list itself, held to the web version by shared tests. The guide for hooking up a real sensor now asks for each thing once.

Kamal NasserMark Parson

Next: Mark walks review stop 3's thirteen calls (qnative c3 review-3.md) and takes the 4-a-second readings of Live Activity; then Phase 4, Events, which needs his brief and mock first, and Phase 5, the Monitor, on the reconciled shapes. Still to be said: who gives the gate its expert review. · waiting on Mark's design for Events; Kamal's answers (the Guide's questions, page 4 for the Monitor feed); a Rust expert's review of the gate

c137—closed Nov 13
App Messaging, Overseer and Citizen

Why: When a rule blocks something on your laptop you get no explanation, and the fix could flood you with alerts from every direction.

Result: Every message from head office now has one shape and three sentences, and you decide which kinds reach you and how; the first release carries only the connection receipt.

Mark PetersonMark ParsonTyler Flint
Read as story →RecordNov 9 → Nov 13
c136—open
Mechanic Access

Why: Partners will run Qpoint on their own servers, and when we need to get in to fix something, there has to be a safer way than sharing a password or a screen.

Result: A partner opens a time-limited door for a stated reason, picks how much we may touch, sees everything we do, and the door closes on its own.

Mark Parson

Next: Phase 0, prior art, can run now; Phase 1, the model as data, once the plane's identity model is ruled. · waiting on c134 D2 (the plane's identity model) and Tyler's say on where grants live

c135—open
Component Cleanup

Why: Our shared parts box grew fast while we built, and nobody has checked it for doubles, missing labels or thin instructions.

Result: Every part gets a scorecard against five checks, doubles are merged or retired, and the parts the dashboard built for itself move into the box, so the next app starts with a full one.

Mark ParsonTyler Flint

Next: Phase 0 on Mark's word: the scorecard script and the annotation standard; then the census and its review stop.

c134—open
Control Plane Web App

Why: The company dashboard is stuck inside the program on each laptop, and its sign-in cannot be run by a customer on their own servers.

Result: The dashboard becomes its own web app, shipped as one package we can run or a company can run itself; both apps are mapped and the backend's 30 gaps are listed.

Tyler FlintRob GenovaMark Parson

Next: Phase 1, the shell mock (sign-in, org, the qdash home with the global filter); Phase 2, the contract written for Kamal after the call. · waiting on Tyler's repo decision and Kamal's availability

→
c133—open
Remediation Training

Why: When a laptop blocks something risky, the person sees a block and no explanation.

Result: A finding becomes a short lesson, sent as a message to the small app and recorded as proof. The shape is drawn, the model is data, and the first lesson, about an unapproved MCP server on one real finding, can be taken end to end in the lab. The trainings are now files the design site publishes, and all three pilots (unapproved MCP servers, personal accounts, secrets in prompts) run end to end from real findings. The hand-off to the web app and the native app is written, and a library lets a person take any of them on their own; the brief is still in flight.

Mark PetersonRob GenovaMark Parson

Next: The next topic trainings from the guide's list (D50, D53): Finding and Severity, Sanctioned, Exception and Scope, Endpoint and Harness, then the operator terms, each through the /training skill's topic section; c134 and c131 take handoff.md (the training page, the record, the library, topics and the operator's send); Tyler to validate D22–D27 with training.completed.self and D55; Peterson on personnel data and the self-report. · waiting on Tyler on D22–D27 and D55; c134's person frame, the plane repo, the copy at release and the operator's send; Peterson

→
c132—open
Native Design Prototyping

Why: The way we sketch and review screens today depends on web pages, and the new desktop app is not a web page.

Result: The five-step loop stays. The bake-off put a web look-alike of three screens beside the real desktop app on the same sample data: the look-alike took an agent twelve minutes, the real screens an hour on a day of groundwork, and the two agree row for row. Mark picks which one is the medium.

Mark ParsonTyler Flint

Next: qnative c5 lands D21 in B (Status as the landing, Sensor, Activity) and the bake-off page wipes A over the new B; c131 D17's routes replace the bridge; a world per state retires the knob and the story parameter; Events, Config and Connect next through the same loop. · waiting on qnative c5 for B; c131 D17 for the routes

c131—open
Native App V1

Why: The small program that watches a computer's AI traffic could not carry the web dashboard without getting heavy.

Result: A small desktop app will show what was found on this machine; a first test version runs on a Mac with very little memory, and the second phase shows it can look and read like our web pages.

Mark PetersonTyler FlintRob GenovaMark Parson

Next: Phase 2 is complete (qnative c2 closed 2026-11-11). The V1 build starts from c130's shape.md and c0's name; the violation tour comes with qnative c4 (c137 Phase 3), the Status page with c132 Phase 4, D17's routes with engineering (c134). · waiting on c130 shape.md and c0's name

c130—open
Native App (program)

Why: The dashboard lived inside the sensor and made it heavier than the sensor's promise; the team decided to split them.

Result: A program with a researched primer, a measured spike, and seven cycles each with a plan, so the native app and the control plane can be built in parallel without losing the thread.

Mark PetersonTyler FlintRob GenovaMark Parson

Next: Phase 2, the shape (shape.md), fed by the primer and the spike; then the pitch for Tyler's requirements session and c0's naming walk. · waiting on the date of Tyler's session

No image — a story told in words
c128goodno imageopen
Reports

Data without the controls: one window, three reports, and every number honest about the time it covers.

Why: The Reports page was a placeholder. C-level people, auditors and IT need what the dashboard shows without access to the controls, and the pages disagree about what time they cover.

Result: In progress. One shared time window, a Reports catalog and a fully drawn Posture report are live in the lab. Deployment status and Inventory have their outlines. None of it is in qdash yet.

Mark PetersonMark Parson
3 gaps
  • No captures yet.
  • Deployment status and Inventory are outlines.
  • Mark's review of Posture is still to come.

Next: Work through the open calls in c123's intents-pr5-review.md, then port to qdash. · waiting on Mark's review of the four reports

→
c124goodbefore → afteropen
Cycle Stories

Cycle pages now tell a story, credit outside helpers first, and an explorer shows every cycle at once.

Why: A cycle's page showed its full record. You couldn't see at a glance why it happened, what changed or who helped, and the people outside Qpoint who shaped the work went uncredited.

Result: Every cycle now opens on a short story with pictures and credits, people outside Qpoint first. A new explorer shows them all, and open ones say what they're waiting on.

Mark Parson
3 gaps
  • Not yet reviewed by Mark
  • Collaborator pages still live in the _meta options
  • The /document-cycle story step isn't built

Next: Mark reviews the explorer and the stories, then rules on the review list: which cycles close and which outside credits stand. · waiting on Mark's review

c123goodopen
Compliance Frameworks

Evidence, not compliance: the frameworks get one page and one verb, and a close reading of OWASP becomes a tour of what Qpoint can actually do.

Why: This week is about compliance frameworks, and our CISO advisor Mark Peterson is leading what they should mean in Qpoint.

Result: In progress. Framework detail is composed in the lab, with one Track verb on the listing and the detail, and five product tours are live, one of them built from a close reading of OWASP's agentic paper. Policies' frameworks strip, the listing's percentage and tracking that stages policies are still to do.

Mark PetersonMark Parson
4 gaps
  • No after captures of framework detail or the final tour panel
  • Policies' frameworks strip still says Activate (X1, X2), and Compliance still shows a percentage (X5)
  • Track doesn't stage policies at Observe yet (F8), and SOC 2 has no mappings
  • The Oct 26 session with Mark Peterson isn't extracted in market-analyst yet

Next: Finish the frameworks cleanup page by page: Policies' frameworks strip (X1, X2), Compliance's percentage (X5), tracking that stages policies at Observe (F8), SOC 2's mappings. Take after captures. Check Peterson's revised intents against intents-redline.md §5 when they land. · waiting on Mark's read of the pages; Peterson's revised intents

→
c122goodearly → finalopen
Early-Stage Documentation

Taming our own history: a box of unlabeled drawings, from the first Q sketch in 2023 to last week, made findable without moving a file.

Why: Years of sketches, boards and decks sat in a shared drive with no dates or links, so finding anything old was a struggle.

Result: All 1,137 files in the design drive can now be found, previewed and opened from one page, including 3,627 Illustrator artboards. Tying them to cycles is not done yet.

Mark Parson
4 gaps
  • No capture of the /library page
  • Outcome section is empty
  • Association (tying files to cycles), the ingestion skill and the first stories are not done
  • Many sketches carry a batch-copy date, not the real drawing date

Next: Start Phase 3: tag each library file with its cycle, startup phase and design generation, reviewing with Mark one folder at a time.

→
c121strongbefore → afteropenshould close
Governance v1 Scope

A week of advisor conversations reshaped the governance model, and every lab screen was rebuilt to match.

Why: Our security advisor showed us how real security teams think about rules, and our screens still showed the old ideas.

Result: Now every rule has one simple switch, you see who a change affects before you make it, and all changes go live together. Seven screens changed.

Mark PetersonRob GenovaTyler FlintMark Parson

Next: Close it once Mark confirms frameworks belong to c123, moving the carried-forward items there. · waiting on c123

No image — a story told in words
c120goodno imageclosed Oct 21
AI Pivot — Methodology

Six drafts to one sentence: the method kept its shape and changed the problem it points at.

Why: Qpoint now works on AI governance, but our design method still used data governance as its main example.

Result: The method now names AI governance as its hard problem, and the /method page opens with a sentence Mark wrote himself after six drafts.

Mark Parson
2 gaps
  • No capture of /method before or after the callout change
  • Lesson about self-praising copy is in HISTORY.md, not on the page
Read as story →RecordOct 21 → Oct 21
c119goodnew onlyopenshould close
Logo Downloads

A small, finished favor: the logo page stopped describing the logo and started handing it over.

Why: The logo page described our logo but had nothing to download, so anyone without Figma had to ask for a file.

Result: Now anyone can pick a logo, a format, a size and a color, and download a ready-made file: 195 files from five masters.

Mark Parson
3 gaps
  • No capture of the logo page with its new Download section
  • No 'before' capture of the old logo page
  • Outcome section in CYCLE.md is empty

Next: Nothing left to build; write the Outcome and close it.

→
c118goodbefore → afterclosed Oct 21
Policy Structure and Publishing

The day the policy model collapsed into one page: an advisor's Oct 19 session, proven in the lab overnight, half of it overturned two days later.

Why: An Oct 19 session with our security advisor changed how policies work, and we had one day to see if the new idea held together.

Result: The new model ran end to end in the lab within a day: one policy page holds the switch and every exception. Ten of eleven questions were answered Wednesday morning.

Mark PetersonTyler FlintMark Parson
3 gaps
  • No captures taken during c118 itself; the after images are c121's first-morning shots
  • Decisions are not numbered in the record; ids here are drafted from its 'Ruled on Oct 19' list
  • Several record steps (R1, R2, R5, R6, L6b) never done
Read as story →RecordOct 20 → Oct 21
No image — a story told in words
c117thinno imageopen
Prometheus

Before telling the story of AI as Prometheus's fire, we made sure every quote is real; the talk is still to come.

Why: We want to give a talk comparing AI to the myth of Prometheus bringing fire, and every quote in it has to be true.

Result: Not a talk yet: a checked library of sources on the myth, on learning from mistakes, and on what people now say about AI, plus a sources page on the design site.

Mark Parson
4 gaps
  • It is an ideas cycle: no product change, so no before/after is possible.
  • Outcome is "in progress"; the talk itself is not shaped.
  • The outside thinkers (Rittel, Webber, Roesler, Deutsch, Popper) are sources, not collaborators, so they are not credited as people here.
  • Capture /sources and /method for at least a "new" image.

Next: Run the two pending research tasks (Christopher Alexander and the people overviews), commit them with the held Roesler edits, then close it. · waiting on GitHub access for the two cloud tasks

→
c116goodearly → finalclosed Oct 19
Policy Changesets

A proposal overtaken in hours: we designed shopping carts with approvals, the advisor and team said one shared cart is enough, and the cart idea is what shipped.

Why: Every policy edit took effect the moment it was made. Mark wanted to edit freely across pages, then deploy, discard or send for approval as one unit.

Result: The full proposal was overtaken within hours. Its core idea, making a change separate from publishing it, became the one shared draft we built two cycles later.

Mark PetersonTyler FlintRob GenovaMark Parson
3 gaps
  • Capture the M1 and M2 mocks; they are the proposal's own images.
  • The CYCLE.md was written after the fact (2026-10-26), so Key Changes are thin.
  • The Oct 21 "single draft" quote lives in the call's session decisions, not its observations; cited here as 5c8785e2#d1.
Read as story →RecordOct 19 → Oct 19
→
c115goodearly → finalopenshould close
Briefs

An outside illustrator got one page per blog post, and the first one shipped from sketch to published hero.

Why: Sarah draws the pictures for our blog, but she can't open our code or private notes.

Result: Each blog post now gets a page Sarah can open, with the idea and the deadline. The first one became the picture on a published post.

Sarah ParsonMark Parson
1 gap
  • Outcome section unfilled in the record

Next: Write the Outcome and close it; new briefs are content now, not cycle work.

→
c114strongbefore → afteropen
Governance Phase II

Our advisor's fourteen notes turned out to be one machine; we drew it on eight screens, then spent two weeks of sessions taking parts out until the simplest version was left.

Why: Our advisor wrote fourteen ideas for governing AI, and our screens described the same things in older, mismatched words across separate pages.

Result: The fourteen ideas became one model and eight connected screens to try it on. Two weeks of advisor sessions then made the model smaller, and later cycles built that.

Mark PetersonMark Parson
5 gaps
  • No captures after October 9, so the composed pages built from Mark's Illustrator designs have no image.
  • The cycle has no Outcome of its own yet; its model moved on in c118 and c121, and object-model.md still describes October 9.
  • Most decisions were ruled before the October sessions, so their sources are the record itself, not a call.
  • The Oct 12 and Oct 14 links to the finding page are matched by topic and date, awaiting review.
  • The intents repo (Mark Peterson's main contribution) is not a market-analyst record, so it is cited from the record, not a quote.

Next: Update the pickup note and the object model with what the October product sessions decided, then keep building in the lab as c118, c121 and c123 need it.

No image — a story told in words
c113goodno imageopen
qdash Baked Demo

From cooking to order to cooking ahead: the demo stopped computing answers live and started serving them baked, and every page went from timing out to under a second.

Why: The live demo was too slow on small servers: busy pages timed out and showed "Can't reach qdash".

Result: Every answer the demo can show is now worked out ahead of time and served as files, so any page loads in under a second. The daily refresh is built but not running yet.

Mark Parson
4 gaps
  • Capture the world picker and one page per world (the scope asked for it); a c112-vs-c113 timing chart would make the strongest before/after.
  • Outcome section still says "filled in at completion".
  • The daily baker waits on an R2 token; not yet proven running on its own.
  • No conversation or outside person tied to this cycle.

Next: Add the storage token to the demo Worker, deploy the scheduled baker, run one bake by hand to time it, then close it. · waiting on Mark's R2 token

No image — a story told in words
c112goodno imageclosed Oct 7
qdash Demo Container

We built a fake company that never sleeps so the demo always looks alive; the world worked, the servers did not, and that failure is why c113 exists.

Why: Showing qdash meant running it on a laptop, and its made-up company was frozen in July, so the "active now" parts looked dead.

Result: We built a public demo whose fake company keeps working around the clock, in four sizes. It worked, but the servers were too slow, so the next cycle replaced how it is served.

Mark Parson
4 gaps
  • No image of the switcher pill, the control panel or any of the four worlds was ever captured.
  • The outside colleague who asked for a docker-compose copy is unnamed in the record, so no credit.
  • No market-analyst conversation is tied to this cycle.
  • The 72-hour soak and the deployed panel walk never ran.
No image — a story told in words
c111goodno imageopenshould close
Cycles by Week

The cycle numbers stopped telling time, so the work got a calendar: every week now has its own page.

Why: Cycles now overlap so much that their numbers no longer tell you what happened when.

Result: The cycles page gained a week-by-week view, and every week has its own page with what started, what closed, the code changes and the screenshots. The backfill and digest are still to come.

Mark Parson
3 gaps
  • No images at all: the week view and week page need a capture before this story can show them.
  • Phases 3–5 (backfill, digest rewire, close) aren't done, and the Outcome is open.
  • No outside input; the partner digest it rewires is for build partners, but none is recorded yet.

Next: Hand the records backfill and the digest rewire to c124 or the backlog, then write the Outcome and close it.

→
c110goodbefore → afteropenshould close
qdash TODOs — 2026-10-01 review

The Activity page stopped counting sessions and started answering who used how much, and what it cost.

Why: The Activity page counted sessions, but people ask about tokens and cost, and two of its cards weren't earning their place.

Result: Activity is now two rows of three: sessions, tokens and cost, then providers, models and harnesses. The cycle's write-up isn't finished.

Mark PetersonTyler FlintMark Parson
4 gaps
  • The Outcome section is still open.
  • Only two captures.
  • The outside ties (Mark Peterson, Tyler) are matched by topic, not cited in the record.
  • The decisions are summarised from the todos plan; the record doesn't number them.

Next: Nothing left to build; write the Outcome and close it.

→
c109strongbefore → afterclosed Oct 2
Index

After ten cycles of placeholder landing pages, the home page became a newspaper front page for the whole fleet.

Why: The Inventory and Organization landing pages had said "Design in progress" for about ten cycles, and the home page had nothing on it.

Result: Those two menu items now just open their lists, and the home page shows the whole fleet at a glance: 35 small summaries, each matching its own page.

AMZPhil ChenMark Parson
2 gaps
  • The outside ties (AMZ, Phil Chen) are matched by topic, not named in the record, and need review.
  • c100's bake-offs, which this answered, sit in their own cycle.
→
c108strongbefore → afterclosed Oct 2
Honest States

The dashboard stopped saying "all clear" when it simply hadn't heard back.

Why: While loading or offline, the dashboard showed comforting all-clears like "Fleet is clean" or a perfect score of 100, before it knew anything.

Result: Every page now tells loading, failed and truly empty apart. A failed save says so and undoes itself. The false all-clears are gone.

Mark Parson
2 gaps
  • The problem was spotted by an AI build track, which isn't credited (c124 D2), so the only human credit is Mark's rulings.
  • No outside conversation; advisors weren't shown it.
→
c107strongbefore → afteropenshould close
qdash Cutover

Three dashboards became one: the app everyone already used became the app the product ships, and nothing was lost on the way.

Why: The product still shipped an old dashboard nobody worked on, while the app everyone worked on shipped nowhere.

Result: The app everyone used became the one the product ships. The old apps were archived, not deleted, and their best fixes came across first. Tyler's review is still to come.

Mark ParsonDevin Bernosky
4 gaps
  • Tyler's review hasn't happened, so his part can't be credited yet.
  • No outside conversation shaped the cutover.
  • Before and after share seed data, so the visible change is layout and navigation, not numbers.
  • The harvest has no picture: it was bug fixes.

Next: Nothing left to build; move the Outcome to the history and close it, leaving the pull request review parked.

→
c106goodbefore → afterclosed Oct 2
Sticky Title

A long page used to lose its own name when you scrolled; now the name rides along at the top, and nothing on the page jumps.

Why: When you scrolled a long page, its name scrolled away with it, so you could lose track of where you were.

Result: The page name now stays pinned at the top beside the filter, shrinking out of the way as you scroll. It shipped on every qdash page.

Mark Parson
3 gaps
  • No outside input: no recorded conversation touches scrolling or page titles.
  • The before and after are different pages (provider detail vs harness detail).
  • The point is motion, and still images can't show it.
No image — a story told in words
c105thinno imageopen
Cost Center

A cost page that listed everything and answered nothing gets redrawn around the three questions real buyers ask.

Why: The cost page was built before the app knew much about cost, and it answered none of the questions managers, finance and the CFO actually ask.

Result: Not finished yet: a redrawn Cost Center mock answers spend, pace and rate first, with one table that breaks spend down eight ways.

Mark PetersonPhil ChenMark Parson
3 gaps
  • Capture /pages/cost-center: it would pair with the old page for a true before → after.
  • Unfinished: waiting on Mark's review, then the app port.
  • External credits are matched through the cited problem (unexplained AI spend), not named in the record.

Next: Commit the cycle and its mock, get Mark's review of mock round 2, then port the cost page to the app. · waiting on Mark's review

→
c104goodbefore → afterclosed Oct 1
Sticky Band

A one-line bug fix exposed three sticky bars that didn't know about each other, and the answer was to make them one.

Why: Long tables never kept their header in view, and fixing that made the header slide under the section tabs.

Result: One sticky bar now holds the section tabs and the filter together, and table headers stick right under it on eleven pages.

Mark Parson
2 gaps
  • A scroll interaction; stills only hint at the motion, and a short clip would tell it better.
  • No outside voice in the record.
→
c103strongbefore → afterclosed Oct 1
qdash TODOs — 2026-09-30 review

One review day reorganized the whole menu and taught three pages to show which way their numbers are heading.

Why: Mark's next review reorganized the app's menu and asked, page after page, how to show the trend next to today's number.

Result: The menu now groups pages by job, Sessions became Activity, Teams shows a spend trend per team, and Users leads with who needs attention.

Mark Parson
2 gaps
  • No outside voice is tied to the trend ask in market-analyst.
  • The trend lab is dense; one of its six shots would need a plain caption to read on its own.
→
c102goodbefore → afterclosed Oct 1
qdash TODOs — 2026-09-25 review

A page of review notes became thirteen careful page changes, each photographed before and after.

Why: Mark reviewed fourteen app pages and left a page of notes; each note needed to become a real change.

Result: Thirteen pages changed one at a time, each previewed and reviewed. Tiles say what they count, and Teams leads with coverage.

Mark Parson
2 gaps
  • Mostly small label and layout edits, so many pairs look alike at thumbnail size.
  • No outside voice behind the notes; the review was Mark's own.
Read as story →RecordSep 29 → Oct 1
No image — a story told in words
c101thinno imageopen
Qmap Surface

A renderer that never found a product home meets a question every detail page asks, and the cycle hands it to a designer instead of drawing it.

Why: Every detail page lists what a thing can reach, but lists hide the shape of the answer, and our 3D map tool had never found a real job.

Result: Not finished yet: nothing is in the product. A designer has the brief, six example sessions now tell the story of a broken rule in plain words, and qmap has started staging the first one.

Mark Parson
5 gaps
  • No capture of the published brief page.
  • The designer is not named in the record, so they can't be credited.
  • No external input is tied to this cycle in market-analyst.
  • The real "after" is the designer's first round.
  • The sessions page has no capture and isn't deployed yet.

Next: Keep staging the six stories in qmap c29, which so far has flows for the first one only. Then settle how tools are drawn, and which characters to draw next. Deploy when the sessions page should be readable off this laptop. · waiting on the designer's first round is still not on record, though the qmap work isn't waiting on it

→
c100strongearly → finalopen
Landing Pages

Ten false starts at "the landing" became one deliberate bake-off, and its best drawings became full pages, then the small cards on Home.

Why: The app's big overview pages had split into four empty placeholders, and ten earlier attempts at "the landing" never reached a pick.

Result: Eight bake-offs and composed mocks for Home, Inventory and Team, plus new library pieces. Later, Inventory and Team folded into Home's small cards.

Mark PetersonPhil ChenMark Parson
3 gaps
  • No capture of the four empty placeholder landings before the cycle, so the true "before" is missing.
  • The Home and Fleet findings were never written into an Outcome.
  • External credits are matched through the cited problems, not named in the record.

Next: Get Mark's picks on the Home and Fleet mocks; until he has time, park it with a pickup note. · waiting on Mark's picks

→
c99goodbefore → afteropenshould close
Nuxt Backend Interface

Every page checked, a rulebook written, and the whole app rebuilt on it twice, so the method could be judged, not just the result.

Why: Every page of the dashboard fetched its data its own way, and nobody had written down how pages, parts and data should fit together.

Result: A written rulebook for how pages get data, and every page rebuilt on it, twice, by two AI builds. One build became the product's app a few days later.

Tyler FlintMark Parson
4 gaps
  • Tyler's evaluation, the review the cycle was built for, is not recorded.
  • The rebuild in the hero is from the build that was archived; the build that shipped has no screenshot in the cycle folder.
  • The report page has no capture.
  • The Outcome is two track sections and a cutover note, never one close.

Next: Nothing left to build; write one closing Outcome that records the Fable app as the choice, and close it.

→
c98strongbefore → afterclosed Sep 26
Nav Submenu

The sidebar learned to say where you are, and its look was dialed live on the demo.

Why: Inventory had grown nine listing pages, but the sidebar listed nothing under it, so you couldn't tell where you were or reach them easily.

Result: On any Inventory page, the sidebar now opens to show its nine listings with the current one lit. The Fleet section moved up to second.

Mark Parson
2 gaps
  • The provisional gap control was to be removed once 1px held; the record never says it was.
  • The qdash half was left uncommitted at close, tangled with other sessions' work.
Read as story →RecordSep 26 → Sep 26
No image — a story told in words
c97-harness-chipthinno imageopen
Harness Chip

A real inconsistency, a careful plan, and no work yet.

Why: The same AI tool, like Claude Code or Cursor, is drawn differently on almost every page: different logos, sizes and labels.

Result: Not built. A plan exists to survey every place a tool is drawn, settle ten questions with Mark, then make one shared chip. Nothing has started.

Mark Parson
3 gaps
  • No CYCLE.md and no entry in CYCLES.md or HISTORY.md; the story is drawn from initial-prompt.md and plan.md.
  • Shares the number 97 with Gen-1 Origin.
  • Phase 1 research never started; the ten questions are unruled.

Next: Give it a new cycle number and decide whether one shared harness chip is still wanted; if not, close it.

→
c97strongbefore → afterclosed Sep 25
Gen-1 Origin

The page histories gained their true first chapter: Devin's June prototype, dug out and brought back to life.

Why: The page histories began at our first design mock-ups, but the product really began earlier, as a quick prototype Devin built in June, with almost no pictures left.

Result: Fifteen page histories now open with that prototype: six screenshots recovered from old code history, and fifteen new ones from rebuilding it and feeding it replayed activity.

Devin BernoskyMark Parson
2 gaps
  • The 21 prototype screenshots carry an origin instead of a cycle, so a strict cycle filter misses them; they are added to this story's captures by hand.
  • The June 30 Nuxt branch (Gen-1.5) was left for later and never added.
Read as story →RecordSep 25 → Sep 25
→
c96strongbefore → afterclosed Sep 25
Page Evolution

Screenshots learned which page they show, and a page's history became something you can scrub through.

Why: Screenshots of the same page piled up across cycles under different names, with nothing tying them together, so nobody could see how a page had changed.

Result: Every capture now names the page it shows. A new view lines up each page's history and compares any two moments by wipe, fade or side by side.

Mark Parson
2 gaps
  • The three new parts (image compare, lightbox, strip) were never moved to the shared layer, the follow-on the record names.
  • The hero pair shows what the view joins, not the view; the view itself is the second outcome.
Read as story →RecordSep 25 → Sep 25
→
c95goodbefore → afteropenshould close
Trigger-Bar Column Picker

Two finished tools fought over one spot; joined, they became the one strip above every table.

Why: Every listing had two controls fighting for the same spot above its table: the quick filter and the new column picker.

Result: One strip now holds both: filter keys on the left, Columns on the right, across every listing. Three known gaps and the promised visual design are still open.

Mark Parson
4 gaps
  • No capture tagged c95, and none of the DataListingBar demo on the design site.
  • The visual design it was waiting for never shows up in the record.
  • Outcome not written; three known gaps still open.
  • Mark Peterson's Sept 3 wish for clickable callouts that filter the list (09ecfede#3) is near the topic but not cited, so not credited.

Next: Write the Outcome, move the three known gaps to the backlog, decide whether the Figma design is still owed, and close it.

→
c94goodbefore → afteropenshould close
TODO Execution Process

Mark's meeting notes became a routine: one page, one plan, one preview, one review.

Why: Mark's page-by-page meeting notes became work by hand, and the hand-offs leaked: lost lines, misread fragments, and every helper briefed one by one.

Result: A todos skill now reads the notes straight from Logseq and writes one plan per page. Its first run made 17 plans, all carried out that day, one page at a time.

Mark PetersonMark Parson
3 gaps
  • The Outcome was never written, though the work finished the same day.
  • The hero pair belongs to c92, where the plans were carried out; the after also carries c95's listing bar.
  • Mark Peterson's credit comes from a line in Mark's review notes (quoted in c92-todos-review.md), not from a recorded call.

Next: Nothing left to build; write the Outcome, list the follow-ons, and close it.

→
c93goodearly → finalopenshould close
Table Column Picker

A small Columns button gave wide tables room to breathe, and the next cycle carried it into every listing.

Why: Listing tables were getting wide, and nothing let a person hide the columns they didn't need.

Result: A Columns button now opens a checklist that shows or hides table columns, with a badge counting what's visible. The next cycle moved it into the library and onto the app's listings.

Mark Parson
3 gaps
  • The extraction and rollout happened in c95, so this story stops at the prototype.
  • No capture of the picker on a real app listing in this cycle.
  • No outside conversation touched it.

Next: Nothing left to build; write the Outcome pointing at c95 for the extraction, and close it.

→
c92strongbefore → afteropenshould close
qcontrol New Pages

Nine days took the mocks off the film set and into the product, one shared part at a time.

Why: The new page designs lived only as mocks on made-up data, while the real app still had hand-made filters and older pages.

Result: Over nine days the mocks became real pages on real data: one filter with an always-on time window, a chart on every listing card, one frame for every detail page. Phase three stayed open.

Mark PetersonTyler FlintMark Parson
6 gaps
  • No Outcome yet: phase 3 (Sessions listing, Device Details) never closed here, and the gen 2 app it built on was archived at the c107 cutover.
  • Most threads were planned and run by AI tracks, which aren't credited; the human credits rest on Mark's rulings and the 2026-09-03 call notes.
  • The call notes are dated 2026-09-03 but name pages first built in c90 (2026-09-16); the call record's date may be off.
  • Rob Genova is named in the call notes (sort people by tokens) but that item didn't clearly land, so he isn't credited.
  • Thread captures before 2026-09-21 were kept in a scratch folder and lost, so early states are thin.
  • The live pages are in the qdash app, not on the design site, so most outcomes have no route.

Next: Write the Outcome of what each thread landed, hand the open items to the current app's backlog or drop them, and close it.

→
c91goodearly → finalclosed Sep 18
DataMachine

Two stat cards from a mockup became one flexible part, and the idea behind it got a name.

Why: A new stat-card design needed one flexible part, and Mark saw the pattern our map tool had found: a rich base with a few ready-made presets.

Result: DataMachine shipped in the shared library with two copyable presets. The base-plus-presets idea is now written into our design method.

Mark Parson
3 gaps
  • Only one capture; the presets themselves sit below the fold.
  • The record doesn't name who ruled on presets staying demos; attributed to Mark as the cycle's owner.
  • No outside conversation touched it.
Read as story →RecordSep 17 → Sep 18
→
c90goodbefore → afteropenshould close
qcontrol Preview

Separate mock rooms became one walk-through behind a front door, the last stop before the real app.

Why: Each page mock lived alone on the design site, and Team Details and a Devices list didn't exist, so nobody could click through the whole flow.

Result: Seven pages now sit behind an app-like sidebar and click through as one flow. Three were reworked against new annotated mockups. The record's Outcome was never written.

Mark Parson
3 gaps
  • Outcome never written.
  • The 2026-09-03 product call's notes name these pages (qcontrol teams, session, device), but the call is dated before this cycle began; it is credited on c92, whose folder holds the notes.
  • The record doesn't say who drew the annotated mockups.

Next: Nothing left to build; write the Outcome pointing at c92 for the real-app port, and close it.

→
c89thinbefore → afteropenshould close
Teams–Sessions Listings

A ring where there's a whole, a plain number where there isn't: two listing mocks taught one honesty rule.

Why: The Teams page showed coverage as bare fractions, and there was no page listing sessions at all, only one session at a time.

Result: Teams now shows coverage as rings and names the people who need attention. A new Sessions page puts the sessions worth a look first. Both were early mocks, later copied forward.

Mark Parson
4 gaps
  • The header idiom came from another designer's Users & Devices screenshot, which was never saved and doesn't name its author, so it can't be credited.
  • Key Changes were backfilled after the fact, and the record doesn't say who made the calls; decisions are attributed to Mark as the cycle's owner.
  • The planned phase1-registry flag for the Sessions route was never made.
  • No outside conversation touched it.

Next: Nothing left to build; move its finished Outcome to the history and close it.

→
c88goodearly → finalopenshould close
Global Filter

The filter left the one app it was stuck in and came back as a single bar the next cycles used everywhere.

Why: Our older web app had a working filter bar that no other project could reuse, and its redesign existed only as mockups.

Result: The old filter now lives in the shared library as a legacy set. A rebuilt bar and a new quick-filter strip follow the mockups, and both share one filter state.

Mark Parson
4 gaps
  • No capture of the filter inside the old app before extraction, so there's no true before.
  • The record doesn't say who drew the mockups or made the calls; decisions are attributed to Mark as the cycle's owner.
  • Still listed active; its last step, moving app.qpoint.io to the new bar, no longer applies since that app is unused.
  • No outside conversation touched it.

Next: Nothing left to build; drop the step for the unused app, move the leftovers to the backlog, and close it.

→
c87goodearly → finalclosed Sep 18
History Graph

A hand-drawn week of coloured squares became a chart that counts from seven days to sixty without growing too tall.

Why: We needed a chart of activity over days, like sessions per AI tool each day, that works for a week, a month or two months.

Result: A new shared chart draws each day as small stacked squares, one lane per series. It scales from a week to two months and is documented with many examples.

Mark Parson
4 gaps
  • Mark's corrected reference image (for side-by-side lanes) isn't on disk.
  • No capture of the chart in dark mode or in bar mode on its own.
  • Later work on the chart (c90's first page use, and later layer changes) isn't captured under the same subject, so there's no after-the-cycle view.
  • No outside conversation is tied to this cycle.
Read as story →RecordSep 11 → Sep 18
No image — a story told in words
c86thinno imageopenshould close
Machine Status

A name and a blank page: there is no story to tell.

Why: Unknown. The cycle was opened with a name and an empty prompt file, and nothing says what it was for.

Result: Nothing was done. No plan, no pages, no images. Any guess at its purpose would be made up.

3 gaps
  • initial-prompt.md is zero bytes; there is no CYCLE.md.
  • Not listed in CYCLES.md or HISTORY.md.
  • No person is named, so no one is credited.

Next: Ask Mark what Machine Status was meant to be; if nothing, close it as abandoned or delete the empty folder. · waiting on Mark's answer

→
c85goodearly → finalclosed Sep 18
Chat Transcript

Mark's labelled sketch of a chat became five shared parts, down to the little tail on each speech bubble.

Why: We needed to show what a person and an AI agent said to each other, and the earlier attempt was only sketch code on a demo page.

Result: Five shared components now show a chat session: speech bubbles, folding tool calls, and a small ruler for jumping between turns. They're documented and reusable.

Mark Parson
4 gaps
  • The record doesn't say who drew the reference design; it came with Mark's opening prompt, so the credit says he supplied it.
  • No true before: c77's earlier chat candidate was captured under a different subject (and the shot shows the Messenger grammar, not the spine version this cycle promoted).
  • The navigator's hover card and an expanded tool call aren't captured.
  • Mark Peterson's Sept 3 concern about showing full transcripts (privacy, bring-your-own-key) is on the same subject but didn't shape this build, so he isn't credited.
Read as story →RecordSep 11 → Sep 18
→
c84goodearly → finalopenshould close
Cycles Status Page

Four ways to ask "what is design doing right now?", and a grid that answered it on paper but never reached the real page.

Why: The cycles page was a good archive, but it couldn't say at a glance what design was working on, what was stuck, and what needed a decision.

Result: Four directions, rough then real, and one promoted design: a grid of every cycle by stage and need. The real cycles page never adopted it.

Mark Parson
3 gaps
  • No capture of the live /cycles page from this time to stand as a before (c71's atlas shot has no subject link).
  • The design brief in briefs/ isn't surfaced in the story.
  • No outside input; this is internal tooling.

Next: Write an Outcome saying the production slice was never built because later cycles took the page another way, then close it.

No image — a story told in words
c83thinno imageopenshould close
Layer Public

A worry written down in one paragraph, whose practical half was solved the same night by someone else.

Why: Our shared component library had just become public, which made cloud installs easier, and Mark had misgivings he wanted to explore.

Result: Not started. The cycle is one paragraph. The practical question, installing the library in the cloud, was answered the same night by c82's run.

Mark Parson
3 gaps
  • No CYCLE.md, no plan, no captures.
  • The misgivings themselves are never spelled out.
  • Not listed in CYCLES.md or HISTORY.md, so the cycles index can't place it.

Next: Ask Mark whether the worries about a public library need their own cycle; if not, close it as answered by c82. · waiting on Mark's answer

c82goodnew onlyopenshould close
Cloud Execution

Parked in the morning, run the same night: the cloud built seventeen pages unattended and taught us to save after every step.

Why: Mark wanted to know whether a whole design cycle could run in the cloud while his laptop was closed.

Result: It could. One overnight run built all seventeen Phase 1 pages unattended. But the cycle has no formal record yet, and the index still calls it parked.

Mark Parson
4 gaps
  • No CYCLE.md; the story is drawn from initial-prompt.md, PICKUP.md and first-run-notes.md.
  • The hero image belongs to c81, the cycle the run executed.
  • The work was done by AI agents, which aren't credited, so the only credit is Mark's question and go-ahead.
  • No outside conversation touches this cycle.

Next: Write a short record from the first-run notes, answer or retire its two open questions, and close it.

→
c81strongbefore → afteropenshould close
Phase 1 Pages

Seventeen pages drawn at once on one made-up company, then four of them drawn again after the advisor walked them.

Why: Phase 1 called for 17 dashboard pages about people, teams and their AI tools, and the product had only an early prototype.

Result: All 17 pages exist as mocks on one made-up company, each opening with a one-line verdict and a calm all-clear version. Four got a second pass after an advisor walkthrough.

Mark PetersonTyler FlintRob GenovaMark Parson
5 gaps
  • Outcome is a placeholder; CYCLES.md still says "No pages built yet" in its body.
  • The four v2 pages (2026-09-08) have no captures, so the second pass is told in words.
  • The truer before would be the gen-2 Nuxt app as of 2026-09-01; only the Gen-1 prototype was captured before this cycle.
  • Decisions live in execution-plan.md and the v2 brief, not in a Decisions section; ids here are assigned for this story.
  • Rob's lack-of-signal idea is cited from the v2 brief; the call extraction has no observation for it.

Next: Nothing left to build; write the Outcome, capture the four second-round pages, and close it.

No image — a story told in words
c73thinno imageopenshould close
Help Overlay

A two-word sticky note: there is no story to tell yet.

Why: Unknown beyond the title. The only note says a help overlay was "currently in design" somewhere else.

Result: Nothing was built or written here: no plan, no pages, no images.

4 gaps
  • No CYCLE.md; the prompt is six words.
  • Created date is the git commit (2026-09-01); the folder's file time and its number place it on 2026-08-15.
  • Not listed in CYCLES.md or HISTORY.md.
  • No person is named, so no one is credited.

Next: Ask Mark what the help overlay was; if nothing picked it up, close it as abandoned. · waiting on Mark's answer

No image — a story told in words
c80goodno imageopenshould close
Brotli Stream Termination

A confusing error in chat apps traced to one missing final step, handed to engineering, and fixed.

Why: Chat apps running under our sensor kept failing with a decompression error, and nothing showed that our own proxy was the cause.

Result: We traced it to our proxy never finishing one kind of compressed stream, and wrote down the fix and a missing test. Kamal fixed it three weeks later.

Kamal NasserMark Parson
3 gaps
  • Outcome placeholder never filled, though the fix landed 2026-09-22.
  • Kamal's credit is matched from qcontrol history (the commit message mirrors the handoff); the record does not name him.
  • Who first hit the error is inferred from the record (observed on the same machine as the design work), not stated.

Next: Nothing left to do; write the Outcome noting qcontrol's upstream fix, and close it.

→
c79strongbefore → afteropenshould close
Finding Lifecycle

An advisor's list of verbs and deadlines became the rules for a finding, and three days later the product's findings page ran on them.

Why: An advisor told us what security teams do with a finding and how fast they must fix it. Our reports assumed that workflow, but nothing in the product did it.

Result: Findings in the product now group under their rule, carry a status and a remediation clock, and can be ignored or accepted as risk with a reason. It shipped within three days.

Mark PetersonMark Parson
4 gaps
  • Outcome is "(pending)"; CYCLES.md still says the layer release is pending, though the record says 0.9.11 shipped.
  • The c79 captures carry no subject in the manifest; the before → after pairing is by route and topic.
  • The before is a design mock, not a capture of the product's findings page as it stood before the port.
  • Decision numbers follow the record's order (25 bullets); D26 is the status-column verdict from Key Changes.

Next: Nothing left to build; write the Outcome, hand its open threads to the governance cycles, and close it.

No image — a story told in words
c78goodno imageclosed Nov 3
Fleet Overview Reports

Four reports a CISO actually hands out, drawn in full, and a front page that is only their summary; the final card pick never came.

Why: Our advisor listed four reports a security team needs, and our founder framed the landing page as a summary of them. None of the four existed yet.

Result: All four reports were mocked in full on one shared shape, with a landing page of four summary cards. Mark never picked a card style, and on 2026-11-03 the work closed into c128 Reports, which carries on its report shape and the Board report's summary.

Mark PetersonTyler FlintMark Parson
4 gaps
  • No images: none of the eleven pages was ever captured.
  • Outcome unwritten; the card-treatment pick has waited since 2026-08-24.
  • Tyler's framing is credited from the record (CYCLE.md Why, background.md); the call extraction has no observation from him.
  • The double-counting finding came out of the build, not from a person, so it has no credit.
Read as story →RecordAug 20 → Nov 3
→
c77goodearly → finalopenshould close
Session View

A session became something you can read, first as a layered record and then as a chat, and the chat idea outlived the cycle.

Why: The product records everything an AI session does, but there was nowhere to read it: a link promised a session's full story and went nowhere.

Result: Two mocks: one session read at four levels, from receipt to raw events, and a bake-off reading it as a chat. Not finished yet: the timeline, footprint map and final page were never built.

Mark Parson
4 gaps
  • Outcome never written; the cycle stopped after its second mock on day one.
  • The seven rulings live in framing-plan.md, not CYCLE.md; decision numbers follow their order there (D3, D5, D6 left out as unused).
  • Outside voices in the framing (a March interview and Cisco teams) come from the archived phase-1 corpus, not the current call index, so they are not credited.
  • Mark Peterson's worry about who can read transcripts (2026-09-03) came after this cycle went quiet; it is credited on c81.

Next: Write the Outcome saying the chat idea went on to Session Details, mark the unbuilt mocks as dropped, and close it.

No image — a story told in words
c76thinno imageopenshould close
Simpler Light/Dark Mode Colors

A one-line wish that was never started; a later brief to Sarah takes up the job.

Why: The colors behind light and dark mode were harder to define than they needed to be, and the wish was to make them simpler.

Result: Not started: only a one-line note was ever written. The same job now sits in a dark-mode brief that asks Sarah to choose the dark colors by eye.

3 gaps
  • No CYCLE.md, no Why beyond the title, no work: the story is the stub and where its job went.
  • Created date is the prompt file's creation time (2026-08-16); it was first committed 2026-09-01.
  • Mark Peterson noted uneven dark-mode contrast on the 2026-08-20 call (2100ac03#19), after this note was written; not credited, since nothing here acted on it.

Next: Never started; close it as superseded by the dark-mode brief.

No image — a story told in words
c75thinno imageopen
Cycle Card Extraction

A hand-shaped card became a reusable piece on the design site, but never made it into the shared library.

Why: The cycle cards on the atlas listing were hand-written markup. Once Mark finished shaping them by hand, they were meant to become a reusable part.

Result: Half done. Mark's card became a local component the same morning and now serves three pages. It never moved into the shared library, and the archive's similar card was never switched.

Mark Parson
3 gaps
  • No CYCLE.md; the only evidence of the work is the 2026-08-16 commit that extracted the local card.
  • No capture of the customized card; it is not visible in the first frame of the cycles-status mock that uses it.
  • Not listed in CYCLES.md or HISTORY.md.

Next: Decide whether the cycle card moves into the shared layer; if not, write a short record of the local extraction and close it.

No image — a story told in words
c74thinno imageopen
Component Pragmatics

A good question about how we build parts, asked and not yet answered.

Why: We had principles for shared components, but no rules for the moment of making one: a reusable pattern or a one-off special part, shared or local?

Result: Not started. The question and where to look for answers were written down; no rules, skill or worked examples were produced.

Mark Parson
3 gaps
  • No CYCLE.md; only the initial prompt (306 words).
  • Not listed in CYCLES.md or HISTORY.md.
  • The named model codebase, app.qpoint.io, has since gone stale, so the plan's source needs rethinking.

Next: Add a pickup note and list it in the cycle index so it reads as parked, with the qdash app as its model when it resumes.

→
c72goodearly → finalopenshould close
Integrations Create & Manage

Adding an integration became a guided setup that shows you the message before anything is sent.

Why: Adding an integration led to a disabled form that said "not wired". Operators had no way to set one up, and no help finding the keys and IDs.

Result: A guided setup window for all 11 integrations, each with real fields and step-by-step instructions, reused for editing. Notification channels also preview the exact message they'll send.

Mark Parson
5 gaps
  • No Outcome written.
  • No before: the disabled stub form was never captured.
  • Built in the gen-2 qdash app; whether the setup window survived the c107 switch to the new app is unchecked.
  • Delivery stays projected: qdash sends nothing outbound.
  • The decisions come from Mark's prompts and his answers to clarifying questions, not a Decisions section.

Next: Check that the current app kept the setup modal, write the Outcome, and close it.

c71goodnew onlyclosed Aug 16
Cycle Atlas

Cycle notes from eight repositories became one browsable album, with the missing photos taken.

Why: Cycle records were scattered across eight repositories, and many earlier cycles had live pages but no pictures. Nobody could browse the whole history in one place.

Result: Every cycle in every repository, 151 at the time, got its own page with its write-up and pictures. About 420 screenshots were taken, many showing an experiment in eight or more states.

Mark Parson
4 gaps
  • No before: the scattered state was never captured.
  • Its captures are filed under the cycles they picture, so this page can't list them.
  • The listing image predates Mark's hand customization of the card the same morning (c75).
  • The decisions come from Mark's verbatim prompts and scoping answers, not a Decisions section.
Read as story →RecordAug 15 → Aug 16
c70goodnew onlyclosed Aug 15
Thesis Kindle

A 2007 thesis, the root of our method, became a book you can read on a Kindle.

Why: Mark's 2007 master's thesis is the root of Qpoint's design method, but it survived only as one PDF of wide two-page spreads, hard to read on a Kindle.

Result: The thesis now lives in the repo in three forms: the original PDF, a Kindle e-book with its pictures, and a single-page PDF that reads as designed, plus its full text.

Mark Parson
4 gaps
  • No picture of the e-book on a Kindle, so no before (spread) and after (page) pair.
  • The record says Complete, but the cycle was never moved to HISTORY.md.
  • The completeness check was run by an agent; no human proof-read is recorded.
  • The decisions come from the prompt's follow-up notes, not a Decisions section.
Read as story →RecordAug 15 → Aug 15
c69goodnew onlyopenshould close
Operating System

A day of sweeping the workshop: cycles filed, tools rebuilt, and the method put where every session reads it.

Why: Our tools and habits had grown faster than we tidied them: dozens of stale "active" cycles, uncommitted work, outdated commands, and a design method agents never read.

Result: Order restored in a day: 22 cycles filed, the backlog committed, commands rebuilt as skills, the method loaded into every session, and a script that photographs every page.

Mark Parson
4 gaps
  • Process work: most outcomes are told in words.
  • The six flagged cycles (c41, c42, c44, c51, c55, c59) still await Mark's ruling; no Outcome written.
  • No decisions are recorded as Mark's; the open queue is in PICKUP.md.
  • Shots were recaptured in place, so no before image of the pages survives.

Next: Rule the six flagged cycles from the completion audit, write the Outcome, and close it. · waiting on Mark's rulings on six flagged cycles

→
c68goodearly → finalopenshould close
Index Overview

The landing page's first job was settled, drawn fifteen ways, then hand-drawn as three cards.

Why: The dashboard's first page overlapped with the inventory page, and nobody had settled what a person should see first when they log in.

Result: An order for the first page: a one-line verdict, what needs you, then doors to each area. Seven mocks, ending in Mark's three cards. Picks never came; later cycles shipped it.

Mark PetersonMark Parson
5 gaps
  • No Outcome; three idea rounds still await picks.
  • One of the five tagged captures (fleet-overview-ideas-2) shows an earlier concept round from 2026-08-04, not this cycle's work.
  • The three-card captures have no cycle field in the manifest.
  • No same-subject before from an earlier cycle; the gen-1 Fleet Overview exists but under a different subject.
  • Mark M's credit is matched by topic and date; the record cites c79, not the call.

Next: Write the Outcome saying the landing page shipped through later cycles, ending with c109, then close it.

→
c67goodbefore → afteropenshould close
Teams

The Teams page learned how to sort people into teams, then spent a day finding how much picture a summary can carry.

Why: The Teams page repeated the cost table, made team membership a free-text box, and had no way to match observed people to the real organization.

Result: Eight page versions and nine studies of the team summary strip, ending at a ship candidate. The review never happened; its best ideas fed later landing and Teams work.

Mark Parson
4 gaps
  • No Outcome; the nine-item review checkpoint never happened.
  • v8 (the person expand card) has no manifest capture, and the archive's v8 shot opens on the same first-run state as v7.
  • The before is a concept mock from c61, not the product's Teams page at the time.
  • Nothing shipped from this cycle directly; the product's Teams pages came through c92 and c103.

Next: Write the Outcome saying c100, c92 and c103 took the work over, then close it.

c66goodnew onlyclosed Oct 1
Cost Center (unit toggle)

A switch between dollars and tokens taught us the table needed both columns.

Why: The cost page showed only dollars. Dollar figures are partly estimates while token counts are measured, so we wanted a switch between the two.

Result: Built in the product, then pulled back the same day to be worked out as a mock first. It never shipped; a later redesign showed both units side by side instead.

Mark Parson
3 gaps
  • Tokens mode was never captured, so there is no before/after of the switch itself.
  • The product version was reverted the same day and left no image.
  • The archive entry's text still presents the toggle as the plan; the outcome is that it was retired.
Read as story →RecordAug 14 → Oct 1
→
c65strongbefore → afteropenshould close
Control-Center v2

The hand-built rule kit became a short list of ready-made policies, chosen by the frameworks you must meet.

Why: Every control had to be hand-built from rules, conditions and actions. That was more setup than an operator should ever have to face.

Result: A catalog of 17 ready-made policies, each switched on with a toggle and driven by the compliance frameworks you choose. It replaced the controls page in the product.

Mark PetersonMark Parson
5 gaps
  • Before and after are paired by product page, not by capture subject: the old page is page/control-center, the catalog page/policy-catalog.
  • No capture of the product after the change; all images are design-site mocks.
  • The Outcome is written but the cycle was never moved to HISTORY.md.
  • The kick-off decisions are not attributed in the record; they are credited to Mark because the prompt and the column rename are his.
  • Mark M's credit is a reaction on the Aug 20 call, matched by topic; the record does not cite it.

Next: Nothing left to build; move its finished Outcome to the history and close it.

→
c64goodearly → finalopenshould close
Control-Center Consolidation

Three overlapping pages were mapped, and one small editing card made it into the product.

Why: Several people had built overlapping dashboard pages for controls, policy and compliance at the same time. The numbers disagreed and the same table appeared twice.

Result: A clear map of the overlap, a ranked list of quick fixes, and an edit-in-place card for controls that shipped to the product. The deeper redesign went to the next cycle.

Mark Parson
5 gaps
  • No Outcome written; the audit judges it complete.
  • The early frame already shows the category grouping from the first iteration, not the table exactly as the product had it.
  • The expand-card capture opens on V1; V5, the version that shipped, is further down the page.
  • The record has no Decisions section; c64-D1 to D3 are Mark's calls drawn from Key Changes.
  • The people whose parallel work created the overlap are not named, so they are not credited.

Next: Nothing left to build; write the Outcome and close it.

No image — a story told in words
c63thinno imageclosed Aug 15
qdash Page Status Grid

A quick walk through the dashboard, room by room, before the redesign started.

Why: We wanted a quick, honest picture of where each page of the product dashboard stood: working, restyled, designed, or polished by hand.

Result: A 22-row table, made in one sitting. Every page worked and wore the new look; five had a design pass; none had been fine-tuned by hand.

Mark Parson
3 gaps
  • Words only: none of the 22 pages was captured on the day.
  • The record has no Decisions section; c63-D1 comes from the columns named in the initial prompt.
  • A point-in-time snapshot by design; it went stale as c64, c65 and c67 landed.
Read as story →RecordAug 10 → Aug 15
→
c62goodearly → finalopen
Build Partner

Making partners insiders: research, a portal, two tracks and a real weekly digest, waiting on four decisions.

Why: Build partners were about to plug Qpoint into their own systems. They would need to see what we're doing, where it's rough, and feel part of the team.

Result: Research, a partner portal mock, a two-track program and a weekly digest built from real work all exist. The program decisions are still waiting on Mark, so it's parked.

Cam EsdaileSamuel CurryMark Parson
5 gaps
  • No named outside person appears in the record; Cisco, F5 and Vanta are named as companies only. Cam Esdaile (Cisco) is matched through market-analyst and is new to the registry.
  • Samuel Curry and AMZ (the Sept 2 working session planned design-partner pilots) spoke after the cycle parked; only Sam is credited, as matched.
  • Outcome not written; the original portal decision queue is still open.
  • Who made the Phase-0 calls is implied (questions put to Mark), not stated.
  • CYCLES.md still says "visibility stream active"; that thread became /partner-digest.

Next: Leave it parked and fix its status note; at pickup, start from the program decisions waiting on Mark. · waiting on Mark's program decisions

→
c61goodbefore → afterclosed Aug 15
Integrations & Teams

Eleven rounds of ideas, and the catalog that won went into the product.

Why: The Integrations page was a list of what might connect someday, and the Teams page had no teams. Neither page matched its name.

Result: After eleven rounds of ideas, Integrations shipped in the product as a catalog grouped by what you want to do, with connected tools showing live numbers. Teams moved to its own cycle.

Mark Parson
4 gaps
  • The record names no rulings or rulers; who picked v10 is not stated.
  • The before is joined by route and topic: the c61 captures carry page/integrations-ideas, the gen-1 one page/integrations.
  • 15 research screengrabs of other products sit in the cycle dir; not used (third-party UI).
  • No outside conversation in the window (market-analyst calls start 2026-08-20).
Read as story →RecordAug 8 → Aug 15
No image — a story told in words
c53thinno imageclosed Aug 15
Agentic Workflows

A good diagnosis that waited for full attention, until another cycle took the urgent half.

Why: A look at how we use AI helpers across all our projects found the daily work strong but the shared plumbing weak: copied files, no automation.

Result: Nothing was built here. The cleanup half was done by c69; the rest, like shared plugins and automatic checks, waits as notes for a future cycle.

Mark Parson
3 gaps
  • Never kicked off; no Objective beyond the initial prompt.
  • No images.
  • Which of the remaining ideas (plugins, hooks, evals) later happened elsewhere is not traced here.
Read as story →RecordAug 6 → Aug 15
No image — a story told in words
c60thinno imageclosed Aug 15
Inventory Depth

A name and an empty page; the work it named happened next door.

Why: A placeholder for going deeper on the inventory page. Its purpose was never written down.

Result: Nothing was built here. The deeper inventory work happened in c59's last rounds instead.

2 gaps
  • No Why, Objective or Scope ever written.
  • No person named, so no credits.
Read as story →RecordAug 5 → Aug 15
→
c59strongbefore → afteropenshould close
Inventory

Eight rounds turned a flat agent list into a page that opens on who's alive, and its agent card shipped.

Why: The inventory page listed agents in one flat table. It didn't say which were alive right now, or what was running unwatched.

Result: After eight rounds, inventory leads with how many agents are alive, how much is watched, and what's at risk. Its agent card shipped into the product on real data.

Phil ChenMark Parson
4 gaps
  • Outcome never written; the shipped qcontrol card itself was not captured.
  • Phil Chen's reaction came after the cycle's last activity and to the product demo, not the mocks; matched by topic.
  • The manifest subjects (page/inventory-ledger etc.) don't join to page/inventory, so the before → after pairing is by route and topic.
  • c59-fleet-overview-ideas and c59-agent-detail-v2 are not mentioned in the record (committed as "c59/c60").

Next: Nothing left to build; write the Outcome from the last iteration and close it.

c58thinnew onlyclosed Aug 15
Agent Mini Card

The pawn got its first badge, sized to the design by checking side by side.

Why: The new pawn needed its first real home: a small card that says what an agent is doing and where, at a glance.

Result: A compact agent card and its "Waiting for your input" bubble now live in the shared library, matched to the design after two side-by-side reviews.

Mark Parson
3 gaps
  • The reference design screenshot was not kept, so the side-by-side review can't be shown.
  • No capture of the component demo pages.
  • Pixel icons are still placeholders.
Read as story →RecordJul 26 → Aug 15
→
c57goodearly → finalclosed Aug 15
Pixel Pawns (state system)

One pixel robot learned to show five moods.

Why: We had pixel-art figures for AI agents but only one picture, so they couldn't show whether an agent was working, asleep or stuck.

Result: The agent pawn now shows five states by stacking art: binary digits while working, zzz when idle, a red burst on error, a bubble when it needs you.

Mark Parson
3 gaps
  • The component capture is from 2026-08-15 and already shows c59's later additions (theme contexts, a decorations prop).
  • The manifest entry for c57-agent-pawn.png carries no cycle; tag it c57.
  • Angel state still has no halo art.
Read as story →RecordJul 26 → Aug 15
→
c56thinbefore → afterclosed Aug 15
Compliance Framework Pages

Three compliance pages taken from Figma and made clickable.

Why: Figma had new designs for turning compliance frameworks on and off and seeing their requirements, but nothing to click through.

Result: A frameworks list, an OWASP LLM Top 10 detail page and a findings page now work as mocks, with toggles that update the progress.

Mark Parson
3 gaps
  • The hero is the findings page, added mid-cycle, because it is the only true before → after; the framework pages had no earlier version captured.
  • The manifest's c56-compliance.png is the older compliance mock that c54's record already names as existing; it is listed but not used as an after.
  • No record of who ruled beyond Mark's prompt.
Read as story →RecordJul 25 → Aug 15
No image — a story told in words
c55thinno imageopenshould close
Agent Market Definition

Reading the product to find out who it was for, before anyone could be asked.

Why: The dashboard had grown by following the technology. We didn't yet know who it was for, and there were no customer calls to ask.

Result: Reading every page against eleven kinds of buyer showed it fit a hands-on security engineer best. Those guesses now live in market-analyst, and calls have since confirmed most.

Cam EsdaileMark PetersonSamuel CurryMark Parson
4 gaps
  • Outcome never written; the "done" bar (persona one-pagers, a chosen first motion, demo paths) was not met.
  • Mark Peterson and Samuel Curry spoke after c55's last activity (2026-08-06); their credits are matched against its open questions, not influences on the analysis.
  • Cam Esdaile is new to the people registry; the record names him only as "Cam".
  • No images.

Next: Write the Outcome, copy its four open questions to market-analyst, and close it.

→
c54goodbefore → afterclosed Aug 15
Policy Enforcement Page

A Figma table became a real page, and its pieces became shared parts.

Why: A new Figma design turned the policy page from a few summary cards into one table where every rule could inherit or override its settings.

Result: The table page was built from the design, five of its parts and a tab strip joined the shared library, and a real table bug was fixed on the way.

Mark Parson
3 gaps
  • The manifest tags the old /pages/policy-enforcement mock as c54, but the record says c54 left it untouched; it is used here as the before.
  • No capture of the second tab (framework coverage).
  • The date on c54-D1 is the archive entry date; the record does not date Mark's redesign.
Read as story →RecordJul 22 → Aug 15
c52thinnew onlyclosed Aug 15
Dark Mode (Subtle) — Iteration & Theming

A paint-sample drawer for dark mode, so no color attempt gets lost.

Why: We wanted a softer dark mode, but trying colors meant editing code and losing the last attempt each time.

Result: A color drawer on every design-site page now edits light, dark and a new "subtle" dark side by side, and saves each attempt as a file.

Mark Parson
3 gaps
  • No capture from July/August 2026; the hero image is a later screenshot.
  • The record names no ruling; Mark is credited because the work was framed for him to drive.
  • Whether the saved subtle-dark theme was ever used is not recorded.
Read as story →RecordJul 16 → Aug 15
c51thinnew onlyopenshould close
App Consolidation

A walk through every room of a scattered product, before anyone started tidying.

Why: Qpoint's product had grown into several separate apps, each built by whoever needed it. Nobody could demo one clear product.

Result: We mapped every app and every screen, and found the new dashboard could only look, not act. The rebuild then happened in later cycles; this one was never closed.

Mark Parson
4 gaps
  • Outcome is "In progress"; the record stops at research.
  • A runbook was written for a "real user" test on Sarah's Mac (sarah-runbook.md), but nothing records that the test ran, so Sarah is not credited.
  • The docs-site and cookie-consent goals have no follow-through recorded anywhere in this cycle.
  • The "decisions already made" in plan.md don't say who made them; credited to Mark as the cycle's owner.

Next: Write the Outcome naming the cycles that carried each goal, send the two leftover goals to a seed and to www's cookie-consent cycle, then close it.

c50thinnew onlyclosed Jun 16
Agent Details Page

Five new parts, and an AI agent's profile page built entirely from them.

Why: A new page about a single AI agent had been designed, and it needed visual parts we didn't have yet: score gauges, a donut chart, metric cards.

Result: Five new parts, each with a demo, and a full mock of the agent page built from them. It also started the first pixel-pawn figure.

3 gaps
  • The record's Outcome says "In progress" while HISTORY.md closes it on 2026-06-16, the day it was created; work continued past that date (pawn, tokens).
  • The design frames came from Figma, but the record names no designer, so no one is credited.
  • The image was captured two months later and may include later polish.
Read as story →RecordJun 16 → Jun 16
No image — a story told in words
c49goodno imageclosed Sep 30
Fix the Cloudflare Pages Deploy

Every fix moved the problem to another builder, so we stopped using one.

Why: Pushing our work no longer updated the live design site. Builds kept failing on access problems, and the site froze with broken pages.

Result: We stopped building in the cloud. One command builds the site on Mark's laptop and Cloudflare simply serves it. It has worked since September 27.

Mark ParsonTyler Flint
4 gaps
  • No images; told in words.
  • Since 2026-10-18 the deploy builds the working tree in place (uncommitted work included), so the record's "committed work only" no longer holds; the story describes the route as built.
  • Two follow-ons stayed open at close: the failing PR check and eight non-fatal prerender errors.
  • The record numbers four decisions in PICKUP.md; only Mark's two rulings that the outcomes rest on are listed.
Read as story →RecordJun 11 → Sep 30
c48thinnew onlyclosed Aug 15
Design Site on Layer

The site that documents our parts stopped hand-making its own and started using them.

Why: The design site documents our shared parts, yet it still hand-built its own callouts, code blocks, back links and tables instead of using them.

Result: Eleven new shared parts went into the layer, and every hand-built copy on the site was swapped for them. The site now runs on its own system.

3 gaps
  • No before image of the hand-built pages.
  • The record names no people, so no one is credited.
  • The record's Status still says Active.
Read as story →RecordJun 11 → Aug 15
No image — a story told in words
c47thinno imageclosed Aug 15
Pixel Pawns (brief)

A brief that gave our AI maps a cast of eleven characters.

Why: Our maps of AI sessions used throwaway placeholder figures, with no shared look for agents, tools, files, secrets or policies.

Result: A brief describing eleven characters, the states each passes through, and how policy events look. Later work built the pawns from it.

4 gaps
  • No images in this cycle.
  • The designer the brief was written for isn't named, so no one is credited.
  • The record names brief.md; the file on disk is pixel-pawns-brief.md.
  • No Created line; created is the first git commit (2026-05-20).
Read as story →RecordMay 20 → Aug 15
No image — a story told in words
c46thinno imageclosed Aug 15
Brochure Site Dark Mode Definition

One document so a newer designer could make the dark site alone.

Why: The brochure site was being drawn in light mode, and a junior designer needed to make the dark version on their own.

Result: A brief they can work from alone: every color value, contrast minimums, and guidance on surfaces and illustrations, with room for their own choices.

Mark Parson
3 gaps
  • No images; the dark version itself isn't on record.
  • The designer isn't named, so they aren't credited.
  • No Created line; created is the first git commit (2026-05-20).
Read as story →RecordMay 20 → Aug 15
c45thinnew onlyclosed Aug 15
AI Agent Policy Pages

One nine-second incident became the story every policy page tells.

Why: Our policy wireframes still used old-style data like where data is stored, when the real risk is now AI agents reading secrets and running destructive commands.

Result: The policy wireframes now tell an AI agent story: six agent policies, and one real incident traced second by second. Good enough for demos.

3 gaps
  • The record has no Created line; created is the first git commit (2026-05-20), though the bob-wire page is stamped 2026-05-04.
  • The pages were built as bob-wire's c13; the link between the two cycles is by matching scope, not stated in either record.
  • The record names no people, so no one is credited.
Read as story →RecordMay 20 → Aug 15
No image — a story told in words
c44thinno imageopenshould close
Figma AI Dashboard Redesign

A careful plan to design in Figma first, overtaken by building straight in code.

Why: The product was turning toward AI, and Figma had drifted away from the code. The plan was to rebuild a clean Figma library first, then redesign the dashboard there.

Result: A thorough plan and several prep lists, but the Figma work never happened. The redesign went straight into code instead, in later cycles.

3 gaps
  • Nothing was made, so there is nothing to show.
  • The record names no people, so no one is credited.
  • The 2,460-word record is one day's planning (one commit on 2026-04-21), never revisited.

Next: Write an Outcome saying the plan was never followed because the redesign went code-first, then close it.

c43thinnew onlyclosed Aug 15
AI Ecosystem Inventory Map

We wrote down how to map a company's AI, and a week later qmap drew it.

Why: qmap could show one AI session, but not a whole company's AI: which agents were active, what code they touched, and which tools they used.

Result: A plan and a sample data set for that company-wide map. qmap built it a week later, exactly to the plan, so the design side was done.

3 gaps
  • The hero image is qmap's work, made from this plan; nothing visual was made in design.
  • The record names no people, so no one is credited.
  • The record's Status still says Planned and its Outcome is "Current Outcome"; only HISTORY.md says the handoff landed.
Read as story →RecordApr 20 → Aug 15
No image — a story told in words
c42thinno imageopenshould close
Runtime Session Map Publishing

A careful plan to bring qmap's session map home, waiting on a signal that never came.

Why: qmap's 3D map of a live AI session lived only as an experiment. We wanted it as a real page on the design site, without copying unstable code.

Result: A plan only. It says how to bring the map over cleanly, and waits for qmap to settle first. qmap moved on, so the plan was never carried out.

4 gaps
  • Nothing was built, so there is nothing to show.
  • The record names no people, so no one is credited.
  • The plan's "current decision" has no owner on record, so it isn't listed as a decision.
  • The link to c101 comes from the c124 completion audit.

Next: Write an Outcome saying the qmap gate never cleared and the plan stays as reference for c101, then close it.

c41thinnew onlyopenshould close
Signal Column Flow

A brief became a working prototype that turns noisy traces into a readable story, then the idea moved on.

Why: A brief from c38 described a screen that shows how many small, noisy events become a short readable story. It needed to become something real to try.

Result: A working prototype shows the idea with sample sessions and can read a local qcontrol feed. Its open questions were never answered, and the idea moved into later work.

3 gaps
  • Never closed: Outcome is "Current Outcome" and the five questions have no answers.
  • The record names no people, so no one is credited.
  • The link to c77 and c92 comes from the c124 completion audit, not from those records.

Next: Write a short Outcome saying the idea moved into the session pages and the prototype stays as reference, then close it.

c40thinnew onlyclosed Aug 15
Qpixel Library

Our block-art editor became a part you can drop into any page, and the design site shows it working.

Why: qpixel, our block-art editor, was a full web app, unlike our other drawing tools, so other projects couldn't drop it into a page.

Result: qpixel is now a small library any Vue project can import, and the design site shows the full editor working live.

4 gaps
  • The record's Status line still says Active though HISTORY.md closed it.
  • No before image of the old app.
  • The record names no people, so no one is credited.
  • Publishing the package was left out of scope; c49 later vendored it to fix the deploy.
Read as story →RecordApr 16 → Aug 15
c39thinnew onlyclosed Aug 15
Timeline Visualization

All our design history on one line you can scroll, with each piece opening right where you are.

Why: Our design history was spread across the archive, the history pages, cycle records and git, with no single place to see what happened when.

Result: A first timeline: archive items and milestones on one scrollable line, with filters and zoom, and the item's page opening right below it. Detail pages and git history were left for later.

3 gaps
  • The only image was captured four months later; it shows the page's later styling, not the April first pass.
  • The record names no people, so no one is credited.
  • No Key Changes section; outcomes come from the record's Current State list.
Read as story →RecordApr 16 → Aug 15
No image — a story told in words
c38thinno imageclosed Aug 15
qcontrol Visibility Storytelling

Before building anything, we wrote down six screens that would make qcontrol's evidence easy to trust.

Why: qcontrol's engineering was moving fast, but how to show and explain what it sees was still mostly in people's heads.

Result: Six short design briefs, plus shared rules for showing confidence, sources and live state. One of them became a working prototype in the next cycles.

3 gaps
  • No images; the briefs were never drawn in this cycle.
  • The record names no people, so no one is credited; the source deck it cites ("QControl as Signal") has no author on record.
  • Only one of the six briefs (signal column) is known to have been built; the record doesn't say what became of the other five.
Read as story →RecordApr 16 → Aug 15
c37goodnew onlyclosed Aug 15
qcontrol File Event Debug

We followed the missing baton through every handoff and found it was never passed.

Why: The new map of an agent run showed network activity live, but runs that only touched files never appeared. We needed to know where those events were lost.

Result: Found it: qcontrol wasn't sending file events out at all, so our map code was fine. The map is now described honestly as a network map, with test data for the rest.

4 gaps
  • No person or decision-maker is named and the diagnosis was agent-run, so no one is credited.
  • The images are qmap c22 test runs, not captures of the bug.
  • The record says network sessions work live, yet the raw capture lists no network events either; a line on where the live network data came from would help.
  • Fixing qcontrol was out of scope; whether it was fixed later is not linked.
Read as story →RecordApr 16 → Aug 15
c36goodnew onlyopenshould close
qcontrol Integration

Four rounds of reading qcontrol's code found the stream we could draw, and a new qmap cycle drew it.

Why: qcontrol watches what programs and AI agents do on a machine. We wanted to know whether that stream could feed our map and traffic pictures.

Result: Four rounds of research found the way in, qcontrol's event stream, and planned a map of one agent run. It was built as a new qmap cycle. One early mistake was caught and corrected.

Mark Parson
4 gaps
  • No CYCLE.md; the story is drawn from the four rounds of reports (about 8,000 words).
  • The image is qmap c22's, not design's.
  • The research was run by AI agents; the only human credit is Mark's question.
  • created is the commit date (2026-04-16); the reports are dated 2026-04-15.

Next: Nothing left to build; write a short record pointing at where its plan went (qmap c22 and c37) and close it.

→
c35strongbefore → afterclosed Apr 14
CLI Harness Design

A bare terminal got a welcome screen, and the tools built for it became a project of their own.

Why: People trying the qcontrol demo saw a bare terminal. Nothing told them their AI agent was now being watched, or that this was a Cisco and Qpoint product.

Result: A finished welcome screen for the demo terminal, drawn in block characters with a Cisco plus Qpoint logo, and notes for Jon to build it. The toolkit behind it became qpixel.

Jon FriesenMark Parson
4 gaps
  • The before is a reference screenshot from the cycle folder and the after is a preview image, not captures of a running terminal.
  • Whether Jon shipped the welcome screen is not recorded.
  • The colour version exists only as text files; no image shows the purple and blue.
  • Jon's full name is matched from qcontrol commit authorship, not stated in the record.
Read as story →RecordApr 13 → Apr 14
→
c34thinearly → finalopenshould close
Diagram

Two crowded diagrams of qcontrol, redrawn plainly; nothing says why.

Why: Not recorded: the prompt file is empty. The files suggest a need to explain simply how qcontrol, the tool that sandboxes AI agents, is put together.

Result: Two crowded architecture diagrams of qcontrol were redrawn as two plain ones: three commands talking to an engine, and the four steps a watched call takes. Nothing says where they were used.

5 gaps
  • initial-prompt.md is empty and there is no CYCLE.md.
  • Not listed in CYCLES.md or HISTORY.md.
  • Who drew the originals or the redraws is not recorded, so no one is credited; the commit is Mark's.
  • Reading them as original then simplified comes from the "-simplified" file names; the order is not recorded.
  • The files date from 2026-04-06, a week before the commit that also added c35's CLI designs; they may belong with that work.

Next: Ask Mark what the diagrams were for, write a short record of them, and close it. · waiting on Mark's answer

→
c33goodearly → finalclosed Aug 15
AI Ecosystem Visualizations

Pictures instead of tables: three security questions, each answered by a drawing.

Why: Qpoint records what AI agents do (sessions, models, keys, tools, files) but showed it only as tables. Could pictures make it clear to a security team at a glance?

Result: Four working sketches each answer one security question with a picture: what did this agent touch, who connects to which model, which tools are exposed. Later cycles carried them on.

Mark Parson
3 gaps
  • Images are qflow c11 captures, not design captures.
  • qflow's own record lists seven views (adding playback and two inventory views) where design's lists four; the extra views are in All images.
  • No before: the table views the sketches set out to replace were not captured.
Read as story →RecordApr 3 → Aug 15
c32goodnew onlyclosed Aug 15
Security Policy Pages

A Figma policy page rebuilt from seventeen parts already on the shelf.

Why: The security overview had a mock, but policies, the rules a security team sets and watches, had no reference pages yet.

Result: The policy page was rebuilt from a Figma design using seventeen existing parts and nothing new. The listing stayed empty until a later cycle. A repeatable Figma-to-page method came out of it.

Mark Parson
3 gaps
  • Both captures are later renders: the listing was built in c45, and the policy page content was replaced with AI-agent policies then too.
  • No image of the Figma frame the mock was built from.
  • The listing's Figma frame was never found.
Read as story →RecordMar 19 → Aug 15
c31goodnew onlyclosed Aug 15
Page Mocks

The design site learned to show whole pages, starting with the security overview.

Why: The design site showed components one at a time but never a whole page. The engineer building app pages had no clean example of how the parts fit.

Result: The design site gained a Pages section. Its first entry rebuilt the security overview from shared parts, and five health and severity parts moved into the shared library.

Mark Parson
3 gaps
  • No before: the original app page was not captured.
  • The image is a later render, not the March original.
  • The render shows "NaN" under Scans Today, a fault worth fixing on the mock.
Read as story →RecordMar 19 → Aug 15
No image — a story told in words
c30thinno imageclosed Mar 19
Tour Guide

A friendly tour for newcomers, written once for design and never rolled out further.

Why: Each project's instructions were written for AI helpers: what and how, never why. Someone new had no friendly way to learn what a project is for.

Result: A /tour command now walks a newcomer through the design project: its purpose, its neighbours, key ideas and common tasks. The rollout to other projects never happened.

Mark Parson
3 gaps
  • Words only.
  • The rollout to sister projects never happened; CLAUDE.md says no sister copies exist yet.
  • Who decided to make it a command rather than an agent is not recorded.
Read as story →RecordMar 19 → Mar 19
No image — a story told in words
c29thinno imageclosed Mar 18
Cycle Management Consolidation

Six drifting copies of the same instructions became one master with room for local habits.

Why: Six projects each kept their own copy of the instructions for running cycles, and the copies had drifted apart. Updating them meant six edits and guesswork.

Result: All six projects now share one set of cycle instructions, kept in design, with room at the bottom for each project's own rules. qflow and qmap moved to the same layout.

Mark Parson
2 gaps
  • Words only; no before or after image.
  • The report's before/after tables are the best visual and are not shown on the page.
Read as story →RecordMar 18 → Mar 18
c28goodnew onlyclosed Mar 18
Data Component Audit & Rationalization

Two drawers of overlapping parts, sorted, and the newer one relabelled so its name says what it holds.

Why: The shared library had two overlapping families of data components, and nobody could say which to use. One family was called DataMachine, a name that said nothing.

Result: All 22 data components were sorted into replaced, keep or look again. DataMachine became DataMetric in all three projects, and a new page explains which to use.

Mark Parson
5 gaps
  • No before: the old component pages were not captured before the rename.
  • The image is a later render, not the March original.
  • Who chose the name Metric is not recorded (naming-recommendation.md recommends it).
  • The name DataMachine came back later for a different, newer family in the library, which may confuse readers of this story.
  • The deferred migration is not linked to a later cycle.
Read as story →RecordMar 17 → Mar 18
c26thinnew onlyclosed Mar 17
Document Dev Components

The tools that build every demo got demos of their own.

Why: The design site documented only five of its eleven demo-building tools. The control-panel pieces had no page, so people building demos could not find them.

Result: All eleven tools now have a working demo on the design site, on two pages kept off the public component list.

Mark Parson
3 gaps
  • No capture from March 2026; the image is a later render.
  • The record has no dates; created and closed come from its single commit.
  • No decisions recorded.
Read as story →RecordMar 17 → Mar 17
No image — a story told in words
c27thinno imageclosed Aug 15
Publishing

Four laptop-only projects got ready for the web, with a brief for the person who would host them.

Why: Four of our internal projects ran only on a laptop. Teammates in sales or engineering had no way to simply open them in a browser.

Result: All five repos were made ready to build as plain web pages and merged, the shared library was published, and Jon got a hosting brief. Going live finished in a later cycle.

Jon FriesenMark Parson
4 gaps
  • Words only; nothing visual to show.
  • Whether Jon set up hosting from this brief is not recorded; c49 took over the remaining deploy work.
  • The brief proposed design.qpoint.io; the site now lives at design.internal.qpoint.io.
  • Jon's full name is matched from qcontrol commit authorship, not stated in the record.
Read as story →RecordMar 16 → Aug 15
c25goodnew onlyclosed Mar 17
Consume During Implementation

A habit of tasting while cooking became principle eight, with a page that shows what still needs tasting.

Why: We already built each shared part by using it on the design site first, but only by habit. Nobody could see which parts had really been tested.

Result: It is now principle eight: building a part and documenting it are the same act. All 87 parts were audited, a coverage page shows the gaps, and the worst were filled.

Mark Parson
5 gaps
  • No created date in the record; created uses the audit date (2026-03-16), a day before the first commit.
  • The "no gates" ruling is stated as a learning in HISTORY.md, not as a decision with a name.
  • Zero regressions were documented at close; the record expects them to come with real bugs.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 16 → Mar 17
c24goodnew onlyclosed Mar 17
Viz Libraries

Two experimental libraries got real names and live pages on the design site.

Why: Our two visualisation libraries, a 3D network map and a 2D traffic flow, were nearly ready but undocumented and hard to use outside their own projects.

Result: Both got proper package names and live demos on the design site: an overview of when to use which, and a page for each.

Mark Parson
4 gaps
  • No capture of the live qmap or qflow pages, the most visual part of the cycle.
  • The capture shows the overview after later cycles added Qpixel and Signal Column Flow.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 16 → Mar 17
No image — a story told in words
c23goodno imageclosed Mar 18
Unified Component Pantry

A rule about where things go: everything you can see goes in the shared pantry.

Why: The shared library already held product-specific parts, and the urge to 'keep it pure' cost more than it saved. The product also ran an old copy of the demo tools.

Result: Settled: every visual part lives in the shared library, and only parts wired to live data stay in a project. The product dropped its six old demo-tool copies.

Mark Parson
5 gaps
  • No images; the rule lives in text (component philosophy and both CLAUDE.md files).
  • The two open questions (formalise the product's demo registry; document every layer part) are not answered in the record.
  • app.qpoint.io, the product this cycle cleaned, has since gone stale.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Mar 18
→
c22goodearly → finalclosed Mar 13
Violations Table

One cycle after giving the card an open shelf, we saw only one thing ever went on it and built that thing in.

Why: The space beside the policy card only ever held a violations table, so leaving it as an open slot made every page rebuild the same table.

Result: The violations table is now a shared part of its own, and the card takes a list of samples and draws the table itself. A policy page can use the table alone.

Mark Parson
6 gaps
  • CYCLE.md says the card renders the samples footer and Remediate button; HISTORY.md says both were commented out as a TODO. The story follows HISTORY.md.
  • The design image is matched by content and date; the record does not cite it.
  • No created date in the record; created uses the first commit.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Mar 13
→
c21goodearly → finalclosed Mar 13
Policy Skin Extraction

The policy card's frame came off so allow-list cards could wear it too, in a new light blue.

Why: The policy page needs cards for allowed apps, datastores and vendors that look like policy cards but hold different content. That look was locked inside the policy card.

Result: The border, shadow and ribbon became their own wrapper with five colour states, including a new light-blue one for allow-lists. The policy card uses it and looks the same.

Mark Parson
6 gaps
  • The design image is matched by content and date; the record names the use (whitelisted apps, datastores, vendors) but not the image.
  • No capture of the allow-list cards themselves being built.
  • Record gives only "March 2026"; created and closed use the first commit and the HISTORY entry.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Mar 13
→
c20goodearly → finalclosed Mar 13
Alert Config & Sentence Builder

An alert rule written as a sentence went from drawing to shared part, and its sentence pieces turned out to be useful everywhere.

Why: People need rules that say when a policy violation should raise an alert, how, and how often, set up in a way that reads like a sentence.

Result: An alert rule card was built to the design, then its sentence pieces were moved into a shared set of their own so filters and other rules can use them.

Mark Parson
5 gaps
  • The design image is matched by content and date; the record does not cite it.
  • No capture of the /patterns/notification page or the four Sentence parts.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Mar 13
→
c19goodearly → finalclosed Mar 13
Security Policy Slot

The policy card learned to carry its violations beside it, just as the security design drew it.

Why: The security design shows each policy card with its violations table beside it. The card had no room for that, and the little data-flow picture had no shared part.

Result: The card gained a space beside it for the violations table, and a new part draws the data-flow picture: a dot, a tag like PII, and an arrow.

Mark Parson
6 gaps
  • The after image is filed under c15 and shows the composition after c22 replaced the slot with a prop; no capture of the slot version exists.
  • The before is matched by content: the record cites the c11 wireframe, and this image is the closest one on disk.
  • No created date in the record; created uses the first commit.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Mar 13
No image — a story told in words
c17goodno imageclosed Aug 15
Applying Design to the Design Site

The design site started to look like the brand it teaches, a step at a time, before later rebuilds took over.

Why: The design site explained the brand but did not look like it. Mark wanted to bring the Qpoint look to it in steps, designed first in Figma and Illustrator.

Result: Component pages gained three view modes that remember your choice, examples became easier to read, and a resize bug was fixed. Later rebuilds replaced most of the look.

Mark Parson
5 gaps
  • No created date in the record; HISTORY.md says only "2026-03", so created uses the first commit.
  • No image of the three view modes, the old usage format or the icon gallery.
  • The record does not say who drew the icons; the credit leans on the prompt, where Mark says the design work happens in Figma and Illustrator.
  • The policy card sent to a "Qpoint Prose Components" Figma file is not linked.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 13 → Aug 15
No image — a story told in words
c14thinno imageopenshould close
Northwest Passage

A saved paper with nothing written around it, which turned out to matter seven months later.

Why: Mark saved a 2005 design-method paper by Axel Roesler, his old thesis chair, about the hard leap from understanding people's work to first design ideas.

Result: Nothing was built and no notes were written. Seven months later the same paper became the top-ranked source behind our design method.

Mark Parson
5 gaps
  • No CYCLE.md and no initial prompt; the name "Northwest Passage" is the paper's own metaphor.
  • Not listed in CYCLES.md or HISTORY.md.
  • The PDF here is byte-identical to brand/foundational/sources/roesler-woods-feil-2005-inventing-future-cognitive-work.pdf.
  • Axel Roesler and his co-authors wrote the paper but did not work on this cycle, so they are not credited.
  • The credit to Mark rests on the commit that added the folder (bce47d058).

Next: Ask Mark whether it was meant to be more than a saved paper; if not, close it as carried on by the sources work. · waiting on Mark's answer

c18goodnew onlyclosed Mar 13
Document UX Table List

Reading 36 product files turned the library's hardest part into a guide anyone can follow.

Why: The shared table is the most complex part in the library and is used across the product, but its docs were a thin demo unlike real use.

Result: Eight table demos now use realistic data and line up properly, and a new guide walks from the simplest table to how the product really builds one.

Mark Parson
4 gaps
  • No before image of the old table demos.
  • The record does not say who chose a dedicated guide page over the table index.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 12 → Mar 13
c16goodnew onlyclosed Mar 13
Sharing Our Work Thus Far

Mark wrote down why the shared library beats the old playground, so colleagues could see the logic.

Why: Colleagues needed to understand why screen parts now live in one shared library, and why the old practice playground kept breaking.

Result: A new Layer page explains the shared library, what it gives every project and how it beats the old way. The icon docs were tidied and a table bug was fixed.

Mark Parson
4 gaps
  • The record does not say which colleagues saw the page or how it landed.
  • c17 later added a "A proven pattern" section to the same page, so the August capture is not exactly what c16 shipped.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 12 → Mar 13
→
c15goodearly → finalclosed Mar 13
Figma-to-Vue Workflow

A design tool handed us a messy first draft of the policy card, and a cleaned-up version became a shared part.

Why: We had Figma designs and a tool that can read them, but no tested way to turn a Figma component into a working part of our shared library.

Result: It worked: the policy card came out of Figma as a real shared part, with four sizes and two states. The output needed tidying, and the Figma-to-code link was left for later.

Mark Parson
4 gaps
  • The before is matched by content and date, not cited: the record names the Figma frame, not the bob-wire image.
  • The record names no one. Decisions and credit go to Mark Parson as the only person on the work (sole git author, March 2026); no AI session is credited.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 11 → Mar 13
c13thinnew onlyclosed Mar 13
Brochure Site Figma

A page of marketing blocks laid out for Figma, and then the Figma work never came.

Why: The marketing site's twelve building blocks existed only in code, so nobody could lay out or review a page in Figma.

Result: A plain page showing all twelve blocks was built, ready to send to Figma. The Figma library and its links to the code were never made, and the cycle was paused.

Mark Parson
4 gaps
  • Outcome in CYCLE.md is still "(To be filled on completion)"; only HISTORY.md says paused.
  • c17 sent the policy card to a "Qpoint Prose Components" Figma file, which suggests a Figma file was started somewhere; nothing links it back here.
  • The manifest captures were taken on 2026-08-15, five months after the cycle, and carry no cycle field; they show the page as it stood in August, with later demo data.
  • No outside credit is possible: market-analyst calls start 2026-08-20, five months later.
Read as story →RecordMar 10 → Mar 13
No image — a story told in words
c12thinno imageclosed Mar 13
Projects as Modular Units

Each project got a phone list of its neighbors, so work can cross between them.

Why: Qpoint had eight or more projects, each expert in something, but none knew what the others offered. Using two together meant knowing where everything lived.

Result: Each of the four main projects now lists its neighbors: what each is for, when to use it, and where its data lives. AI sessions can now borrow across projects unaided.

Mark Parson
3 gaps
  • No images, and the change isn't visual.
  • The record's design decisions aren't attributed; they are listed as Mark's because the cycle answers his prompt (an inference).
  • The quotes example is reported as working, with no transcript or wireframe kept.
Read as story →RecordMar 10 → Mar 13
c11thinnew onlyclosed Mar 13
Security-Focused Brochure Site

A landing page for security buyers, drafted in words and paused before it was built.

Why: Sales calls showed security buyers bring urgency, while engineering buyers bring interest but rarely buy. The new policy dashboard designs gave us a story for security teams.

Result: A first draft of the page's words exists, in seven sections, with two dashboard designs as proof. The page was never built, and the cycle was paused.

Mark Parson
4 gaps
  • The page was never built, so there is no image of it.
  • The record cites 19 sales calls and 15 companies, but those calls aren't in market-analyst's current call file (it starts 2026-08-20), so no speakers can be credited. The draft names State Street, Cisco and Dropbox as asking the buyer's question, with no people.
  • Who designed the two dashboard screens isn't recorded.
  • The successor is a guess: the www.qpoint.io cycle "Brochure Site Q2 Redesign" tells an AI-agent story; nothing links it to c11.
Read as story →RecordMar 9 → Mar 13
c10thinnew onlyclosed Mar 13
Pattern Enhancement

One long page of patterns became a grouped index of short pages.

Why: The Patterns page had grown to 18 patterns on one long scroll, and its index listed only 12 of them.

Result: Patterns now live on short pages by group, with an index laid out like the components index, and one page that still shows all 18.

Mark Parson
3 gaps
  • No before image of the single long scroll.
  • HISTORY.md and CYCLE.md describe different work: HISTORY adds a headline-spacing fix and prose demos that CYCLE.md doesn't mention.
  • The record names no one; Mark's credit comes from his prompt.
Read as story →RecordFeb 26 → Mar 13
c9thinnew onlyclosed Mar 13
WWW Component Extraction + content→prose Rename

A rename fixed a naming clash, and seven more website blocks joined the shared kit.

Why: The kit's "content" group clashed with a plugin that strips that word from names, and seven more website blocks still lived only in the website.

Result: The group was renamed "prose", which fixed the clash. Seven more blocks moved into the kit, so the website keeps no copies of these twelve, and all have demos.

Mark Parson
2 gaps
  • No image from the time and no before/after of the website.
  • Dates conflict: HISTORY.md says February 2026, but nothing records c9 as done before the 2026-03-13 commit.
Read as story →RecordFeb 26 → Mar 13
No image — a story told in words
c8thinno imageopen
Sharing Design Philosophy

A video to show the team how design works here: planned in February, never recorded.

Why: The team had never had a proper look at the design side's thinking and tools. Engineers and sales each needed different pieces to use them on their own.

Result: Not made yet. There is a plan for a short recorded video in three parts, a list of who it's for, and an open question about how it should start.

Mark Parson
4 gaps
  • No video, script or sketches exist; only outline v1.
  • The outline frames the problem as data governance, which c120 has since replaced with AI governance.
  • A later note asks for a page explaining the philosophy; the record doesn't say whether /method (c7) settled it.
  • Dates from file dates; the record says only "February 2026".

Next: Ask Mark whether the video is still wanted; if yes, park it with a pickup note, and if no, close it. · waiting on Mark's answer

c7goodnew onlyclosed Feb 26
Design Methodology

A 2007 thesis turned out to describe how Qpoint already worked, so we wrote it down.

Why: Mark's 2007 thesis on how designers tackle messy, open-ended problems already matched how Qpoint worked, but nothing said so out loud.

Result: The thesis became Qpoint's design method: a written guide, a /method page, a writing rule ("form the problem, then solve it"), a way for AI helpers to read it, and draft marketing lines.

Mark Parson
3 gaps
  • No capture from the time the page shipped.
  • Decisions are unnumbered in the record and undated; they are numbered here and dated to the cycle.
  • Phase 4 marketing drafts aren't shown; the record says they still need testing in real contexts.
Read as story →RecordFeb 26 → Feb 26
No image — a story told in words
c4thinno imageclosed Feb 26
Layer Organization + Component Extraction from www.qpoint.io

Six of the website's building blocks moved onto the shared shelf.

Why: The website had its own building blocks for marketing pages, like grids, headlines and numbered steps, that other projects could use too.

Result: Six of those blocks moved into the shared kit under two new groups. The website now uses the shared versions, and each block has a live demo.

Mark Parson
3 gaps
  • No images; the c9 prose capture is the nearest picture of these blocks.
  • The record names no people and records no decisions.
  • Exact dates unknown; the record says only "February 2026".
Read as story →RecordFeb 26 → Feb 26
c3thinnew onlyclosed Feb 26
App Migration & Component Documentation

The app threw out 51 duplicate parts and the design site learned to demo most of the kit.

Why: The app still kept its own copies of parts already in the shared kit, and only 12 of the kit's 43 parts had a working demo.

Result: The app dropped 51 copied files and now uses the shared kit. The design site gained 20 demos, so 32 of 43 parts can be tried live.

Mark Parson
3 gaps
  • No before/after of the app; the change was invisible to users by design.
  • Dates conflict: HISTORY.md had c3 as done on 2026-02-26, but the app repo's layer-integration commits are dated 2026-03-12, so the app half may have been committed later.
  • The record names no people and records no decisions.
Read as story →RecordFeb 26 → Feb 26
No image — a story told in words
c2thinno imageclosed Feb 26
Layer Separation & Project Identity

The shared parts moved out, and the design site became an honest customer of its own kit.

Why: The style guide was doing three jobs at once: shared parts, brand notes and a website. Its settings needed special switches to know which job it was doing.

Result: The shared parts moved into their own project. The design site now uses them like any other project does, so it feels the same problems everyone else would.

Mark Parson
3 gaps
  • No images, and nothing visual changed.
  • The rename (keeping "design" free) reads like a decision, but the record doesn't say who made it, so it isn't listed as one.
  • Exact dates unknown; the record says only "February 2026".
Read as story →RecordFeb 26 → Feb 26
c1thinnew onlyclosed Feb 26
Shared Component Library & Nuxt Layer

The style guide became the shared kit every Qpoint project borrows from.

Why: Our website and our app each kept their own copies of the same buttons, colors and styles, so every change had to be made twice.

Result: The style guide became a shared kit that other projects plug in with one line. Ten shared parts came first, and nothing in the projects had to be renamed.

Mark Parson
3 gaps
  • No before image: nothing shows the duplicated components or the original showcase page.
  • The record names no people and records no decisions; Mark's credit rests on git authorship.
  • Exact dates unknown; the record says only "February 2026".
Read as story →RecordFeb 26 → Feb 26
c6thinnew onlyclosed Feb 26
App Pattern Extraction + Discovery Tooling

A tool that finds the patterns already in use, and the app's first four on the page.

Why: The Patterns page covered only the website. The product app repeats its own combinations across 20 pages, and finding them was all done by hand.

Result: A reusable scanning tool now finds repeated combinations in any project. It found five in the app; four went onto the Patterns page, live and copyable.

Mark Parson
3 gaps
  • No image from the time.
  • Deferring the sortable table reads like a decision, but the record doesn't say who made it, so it isn't listed as one.
  • The record names no people.
Read as story →RecordFeb 24 → Feb 26
c5thinnew onlyclosed Feb 26
Patterns Page

Parts started being shown together, the way pages really use them.

Why: Single demos show one part at a time. They don't show how parts fit together, which is how the website actually uses them, over and over.

Result: A new Patterns page shows three common combinations live, each with code you can copy to start a new page.

Mark Parson
2 gaps
  • No image of the original single page with its three live patterns.
  • The record names no people and records no decisions.
Read as story →RecordFeb 24 → Feb 26

Which cycles should be completed

Every cycle listed Active in CYCLES.md (47), read against its record and last activity on 2026-10-26. 37 look ready to close. These are recommendations: nothing has been moved yet. The full notes, with the record-keeping problems found, are in c124's completion-audit.md.

For laterThe review listclosing rulings, outside credits to confirm, people, images, records that disagree, data fixes →

Looks done — ready to close · 26

CycleLast activityWhyTo closeConfidence
c59
Inventory
2026-08-07Eight iterations ended with the inventory page shipped to qcontrol on real data (layer v0.9.6); only the Outcome was never written. Write the Outcome from Iteration 8 (shipped, 133 tests, layer v0.9.6) · Note the Teams card remainder went to c67 and then c92 · Move to HISTORY.mdhigh
c64
Control-Center Consolidation
2026-08-11All three deliverables exist (current-state.md, consolidation-plan.md, the ideas mock) and the V5 expand card shipped to qdash. Write the Outcome (F1–F10 map, ranked plan, V5 shipped in qcontrol 376baabb) · Point the deep pass at c65 and the governance cycles (c114, c121) · Move to HISTORY.mdhigh
c65
Control-Center v2
2026-08-12Its own Outcome already says the full arc shipped in one cycle (research, P1–P17, mocks, layer v0.9.8, qdash); it was just never moved. Move the existing Outcome to HISTORY.md · Add a line that the framework research feeds c123high
c69
Operating System
2026-08-15Every execution track is done and committed; what was left was a decision queue on six flagged cycles, which this audit answers. Rule the six flagged cycles (c41, c42, c44, c51, c55, c59) using this audit · Write the Outcome; note the cycle viewer became c71 and /retro owns the recurring sweep · Move to HISTORY.mdhigh
c70
Thesis Kindle
2026-09-01The Outcome already says Complete (2026-08-15): the thesis lives in brand/foundational/ as PDF, EPUB and print-replica PDF. Move the existing Outcome to HISTORY.mdhigh
c72
Integrations Create & Manage
2026-09-01The setup modal, the 11 connector recipes, detail-page reuse and persistence were all built and checked in one day; nothing has been added since. Write the Outcome (recipes, modal, detail reuse, integration_configs persistence, message previews) · Check whether the c107 cutover kept the setup modal in the Fable app and say so · Move to HISTORY.mdmedium
c78
Fleet Overview Reports
2026-09-01The stated done-bar is met: chassis, four report pages, the card bake-off and fleet-overview-v3, all registered; only Mark's picks were pending, and the fleet landing moved to c100. → c100Write the Outcome · Hand the card-treatment pick to c100 (/fleet) and report work to c123 · Move to HISTORY.mdmedium
c79
Finding Lifecycle
2026-08-27The goal was to understand the finding lifecycle by building it; the state machine, findings redesign and qdash port all landed, and findings were later re-ruled by c114 and c121. Write the Outcome · List the open follow-ons (deep-link expand, occurrence view, rubric versioning) as carried to the governance lab · Move to HISTORY.mdmedium
c80
Brotli Stream Termination
2026-09-01The Outcome was waiting on the qcontrol fix, and the fix landed on main as PR #714 on 2026-09-22. Write the Outcome linking qcontrol PR #714 (5b0b028c2) · Move to HISTORY.mdhigh
c81
Phase 1 Pages
2026-09-09The done-bar was 17 of 17 pages on /pages/phase1, and that was met (PR #13), plus a v2 pass on four pages from the Mark Peterson walkthrough. Write the Outcome (17/17, cloud run, v2 pass) · Note the pages moved into qdash via c90 and c92 · Move to HISTORY.mdhigh
c82
Cloud Execution
2026-09-02The experiment it parked for actually ran: c81 was built in two cloud runs and first-run-notes.md records what worked and what broke. Write a short CYCLE.md (there is none) with first-run-notes.md as its Outcome · Fold c83 (layer public) in, since the git-tag install door answered it · Move to HISTORY.mdmedium
c84
Cycles Status Page
2026-09-09The objective was the design ladder, and M5 Current Matrix was promoted; /cycles then went another way through c111 and c124, so the production slice won't happen as written. → c111, c124Finish the Outcome: M5 stays a reference mock, /cycles followed c111 and c124 · Move to HISTORY.mdmedium
c88
Global Filter
2026-09-18The Outcome says both phases are complete and the components shipped in layer 0.9.13; the remaining app.qpoint.io swap targets an app that is no longer used. Strike the app.qpoint.io migration (app is stale) · Move the existing Outcome to HISTORY.mdhigh
c89
Teams–Sessions Listings
2026-09-18The Outcome is written and says it was left active only for Mark to close. Move the existing Outcome to HISTORY.mdhigh
c90
qcontrol Preview
2026-09-18All seven pages were assembled behind the qdash-like shell, and c92 then rebuilt them in the real app. Write the Outcome (seven pages, user-v3, combined Teams/Users/Devices, session-v2) · Move to HISTORY.mdhigh
c92
qcontrol New Pages
2026-09-27Phases 1 and 2 and most of Phase 3 landed in qdash; Devices was removed on 2026-09-25, and c107 replaced that ui with the Fable app, so the leftovers no longer have a home. → c107Write a summary Outcome above the team-details note · Mark Device Details dropped (Devices removed) and Sessions listing done under /team/sessions · Move to HISTORY.mdmedium
c93
Table Column Picker
2026-09-27UxPopover and UxColumnPicker were built, then extracted to the layer by c95 (0.9.22) and used in qdash. Write the Outcome (extraction landed via c95) · Move to HISTORY.mdhigh
c94
TODO Execution Process
2026-09-25The /todos skill was built and has since run four review sheets (c92, c102, c103, c110). Write the Outcome (skill, grammar, page registry, four runs) · Move to HISTORY.mdhigh
c95
Trigger-Bar Column Picker
2026-09-27DataListingBar shipped across layer, design and qdash in 0.9.22; only a Figma follow-up and two known gaps remain. Write the Outcome · Move the Figma follow-up and the high-cardinality-key gap to a backlog note · Move to HISTORY.mdhigh
c99
Nuxt Backend Interface
2026-10-02Both tracks finished all four phases, the report is published, and c107 acted on the decision by promoting the Fable app. Replace '_Filled at completion._' with a two-line verdict: Fable chosen, cut over in c107 · Move to HISTORY.mdhigh
c107
qdash Cutover
2026-10-02The Outcome is written: the Fable app is crates/qdash/ui on feat/new-pages, the old apps are tagged, and STORY.md tells why. Move the existing Outcome to HISTORY.md (the #713 review is parked by Mark's ruling, not a cycle task)high
c110
qdash TODOs — 2026-10-01 review
2026-10-02Its one plan was executed, corrected and shipped on 2026-10-02 with layer 0.9.31. Write the Outcome · Move to HISTORY.mdhigh
c111
Cycles by Week
2026-10-05Its done-bar is met: the Week view is live on /cycles and the week detail was promoted to /cycles/weeks. Write the Outcome · Hand the records backfill (Phase 3) and digest rewire (Phase 4) to c124 or the backlog · Move to HISTORY.mdmedium
c115
Briefs
2026-10-21The done-bar was one real brief deployed and used by Sarah; the sandbox brief went all the way to Publish and Outcomes now archive on /briefs. Write the Outcome · Push main (the status note says it isn't pushed) · Treat new briefs as content, not cycle work · Move to HISTORY.mdmedium
c119
Logo Downloads
2026-10-20It shipped and was verified live (d5a1b588b): five masters, 195 files, four raster sizes; the Outcome is simply empty. Write the Outcome · Move to HISTORY.mdhigh
c121
Governance v1 Scope
2026-10-26All three waves are built and deployed, the Outcome and the session decisions are written, and the next thing (frameworks) is c123's job. Confirm with Mark that frameworks belong to c123 · Move 'Not done, carried forward' items to c114 or c123 · Retire the Wave 3 PICKUP.md · Move to HISTORY.mdmedium

Taken over by later cycles — close · 9

CycleLast activityWhyTo closeConfidence
c41
Signal Column Flow
2026-05-04The noise-to-explanation ladder idea moved into c77's session ladder and c92's session details; the prototype has been untouched since May. → c77, c92Write a short Outcome: prototype stays at /visualization/signal-column-flow, five questions left open · Move to HISTORY.mdmedium
c42
Runtime Session Map Publishing
2026-05-04It waited on qmap c24, but qmap moved on to c25–c28 and the question of qmap inside our product now lives in c101. → c101Write an Outcome: gate never cleared, plan kept as reference for c101 · Move to HISTORY.mdmedium
c51
App Consolidation
2026-08-06The umbrella's work spread into c54–c68 and the qdash front-end it wanted now exists through c92 and c107. → c54, c56, c59, c61, c64, c65, c67, c68, c92, c107Write the Outcome listing the child cycles · Spin objective 4 (docs site) into a seed or backlog note · Point objective 5 (cookie consent) at www c5.cookie-consent-audit · Move to HISTORY.mdhigh
c55
Agent Market Definition
2026-08-06Persona work moved to market-analyst (personas.json was seeded from c55, plus the problems registry), and the product focus has since moved to AI governance (c120). → c120Write an Outcome: page-persona analysis delivered, done-bar not met, carried by market-analyst · Copy the four open questions to market-analyst · Move to HISTORY.mdmedium
c67
Teams
2026-08-15Mark ruled on 2026-09-28 that c100 pulls from these ideas, and the real Teams pages shipped through c92 and c103. → c100, c92, c103Write the Outcome: the design track was done, the checkpoint was overtaken by c100, c92 and c103 · Move to HISTORY.mdhigh
c68
Index Overview
2026-08-27The landing page question was taken up by c78 (fleet-overview-v3), c100 (Home) and c109 (the / index that shipped). → c78, c100, c109Write the Outcome: hierarchy and mocks done, landing shipped through c109 · Move to HISTORY.mdhigh
c77
Session View
2026-08-20It stopped after the first two mocks; session detail was then designed in c90 and shipped in qdash by c92. → c90, c92Write an Outcome: four-altitude ladder and fixtures kept as reference · Move to HISTORY.mdmedium
www-c2
Brochure Site Q2 Redesign (www)
2026-05-20Untouched since May; www c6 combines the qcontrol page into the index, which takes this over. → www c6Remove the cross-repo pointer from design's CYCLES.md · Let www's own records close c2 into c6low
bob-wire-c21
Inventory + Users / Devices (bob-wire)
2026-09-01Its three hi-fi mocks were built here, and Inventory and Users/Devices were then carried by c81's v2 pass, c90 and c92. → c81, c90, c92Commit the c21 folder in bob-wire (it is untracked there) · Write its Outcome in bob-wire · Remove the cross-repo pointer from design's CYCLES.mdmedium

Stalled — close as abandoned · 2

CycleLast activityWhyTo closeConfidence
c44
Figma AI Dashboard Redesign
2026-04-21The Figma-first plan was never followed; the redesign went code-first through /pages mocks and later cycles. Write an Outcome: plan not executed, redesign went code-first (c50, c59–c68, c81) · Move to HISTORY.mdhigh
c76
Simpler Light/Dark Mode Colors
2026-09-01It is a one-line stage-1 prompt that was never kicked off and has no CYCLE.md. Drop it from Active and log it as a seed in HISTORY.md (or delete the folder if Mark prefers)medium

Park it for now · 5

CycleLast activityWhyTo closeConfidence
c8
Sharing Design Philosophy
2026-03-13Still a good idea, but it hasn't moved since March, and the story it would tell has changed (AI pivot c120, cycle stories c124, Prometheus talk c117). Write a PICKUP.md: outline-v1, the concrete-vs-abstract question, and what has changed since · Move it to a Parked line in CYCLES.mdmedium
c62
Build Partner
2026-08-15The portal decisions are still waiting on Mark and its PICKUP.md is good; the 'visibility stream active' note is stale, since that thread became the /partner-digest skill. Fix the CYCLES.md status note (parked, not active) · Add a line to PICKUP.md that the digest lives on as /partner-digest · Commit bob-wire c20, which PICKUP flags as uncommitted, if it still ismedium
c100
Landing Pages
2026-10-02The mocks are built and are waiting on Mark's picks and a qdash port, but governance work has taken priority and Home already moved through c109. Write a PICKUP.md: the picks per slot, the parts bin, which landings are still 'Design in progress' · Commit the small uncommitted CYCLE.md and shot-program editsmedium
c101
Qmap Surface
2026-09-30The brief has been with the designer since 2026-09-28 with no first round back, and engineering waits on the design. Write a PICKUP.md: what the designer owes, the four open questions, qmap Phase 0 still to commitmedium
c105
Cost Center
2026-10-02Mock round 2 was next on 2026-10-02 and nothing has moved since; the whole cycle folder and its mock are still uncommitted. Commit cycles/c105.cost-center/ and the mock (app/components/cost/, app/data/cost-center-*.ts, app/pages/pages/cost-center.vue) · Write a PICKUP.md: round 2, the seat-price setting, port gated on design confirmationmedium

Still in progress · 5

CycleLast activityWhyTo closeConfidence
c113
qdash Baked Demo
2026-10-07One step from done: the scheduled baker is built and waits only on Mark's R2 API token, a deploy and one by-hand bake. Mark sets the R2 token as two Worker secrets · Deploy, run one bake, confirm the cron runs once on its own · Write the Outcome and move to HISTORY.mdmedium
c114
Governance Phase II
2026-10-26It is the governance umbrella and the lab that c118, c121 and c123 build in, worked on today. Not now; refresh PICKUP.md (it still says parked 2026-10-09) · Bring object-model.md up to datehigh
c117
Prometheus
2026-10-20Recent, with two pending source tasks (Alexander, person overviews) and Roesler edits held uncommitted until they land. Run the two source tasks locally or after the GitHub App fix · Commit the held Roesler edits with them · Then close: the cycle only gathersmedium
c122
Early-Stage Documentation
2026-10-26Phases 1–2 built 2026-10-23 and tagging is next; Phase 6 has moved to c124. Not nowhigh
c124
Cycle Stories
2026-10-26Kicked off today; this audit is part of it. Not nowhigh

Qpoint Brand Style Guide