Repository navigation
feat(ops): port inline T3 pages and the reporting pack - #29
Merged
Merged
Conversation
Port features already in daily use in the private harness into the template, so a T3 Code copy works the same way out of the box. - SKILLS/t3-html-render: build one self-contained page, check it with html_preview at 728 px dark and 390 px light, and show it inline with html_render. Ships a starter, a worked example on synthetic data, and a palette validated for colorblind safety on T3's surfaces. - Reporting: in a T3 thread, data and reports are shown as an inline page by default; the offer-and-wait rule stays for hosts without inline pages. Core Writing names the format; BOOTSTRAP Round E offers the choice. - harness-update and remote-session: disable-model-invocation, so their descriptions leave the skill listing. The template's own listing goes from 17 entries and 3,575 characters of name and description to 16 and 3,366, with t3-html-render added. The why lives in SKILLS/README rather than a frontmatter comment, so older Claude Code builds parse the header the same way. - .gitignore: SKILLS/.trash/, where Claude Code's skill sync moves a dropped skill. verify-ops-selftest now checks the shipped .gitignore covers it (the case failed before the line was added). - Doctrine: at most two or three questions in a decision report and procedures inline (Reporting); verify after any deploy (Quality standards); lanes and resources used freely with a clear purpose (P11, core Intake); lanes never run session-close (core Rhythm); the T3 schedule_task wake rule (Hosted inside T3 Code). model-roles gains Opus 5.5's API behavior, Sonnet 5.5's overturn condition, Haiku 5.5's 100K price step and how Stage-1 holds that ceiling, Fable's cost in figures, and the T3 Code picker settings.
Review fixes for PR #29: render height clamped to the tool's 80 to 2000 px range; the example page keeps its chart visible with reduced motion and fits tables at 360 px; one-off T3 wakes prefer a native once trigger when offered; model facts carry dated sources and Sonnet 5.5's API effort default is high. Adds t3-html-render-test.py.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ports five features already in daily use in a private harness into the template, so a copy running in T3 Code works the same way out of the box. One PR, five parts:
SKILLS/t3-html-render(new). In a T3 Code thread it builds one self-contained interactive HTML page for data, a report, findings, a comparison or a plan, checks it withhtml_preview(728 px dark, 390 px light, zero console errors), and shows it inline withhtml_render. Shipsassets/starter.html, a workedassets/example-report.htmlon synthetic data (a fictional ExampleOrg), andreferences/palette.md, whose series colors are validated for colorblind safety on T3's light and dark surfaces.CONTEXT/how-i-work.md, Reporting to the Operator;core.mdWriting; BOOTSTRAP Round E). Replaces "offer a rendered page and wait for a yes" for T3 threads. Hosts without inline pages keep the offer.harness-updateandremote-session(disable-model-invocation: true). Both run only when the Operator asks, so their descriptions leave the skill listing.SKILLS/README.md,README.mdandAGENTS.mdnow say to type/harness-updateor/remote-session, and how to undo it in a copy.SKILLS/.trash/gitignored, with averify-ops-selftest.shcase that fails without the line.session-close, because a lane inherits the foreman's session id (core Rhythm);schedule_taskwake rule: timers under about 115 minutes, structured schedule shapes, UTCnextRunAt, a one-off task deleting itself (Hosted inside T3 Code);model-roles.md: Opus 5.5's price and API behavior, Sonnet 5.5's catalog figures and overturn condition, Haiku 5.5's 100K price step and how the Stage-1 settings hold that ceiling (and what would break it), Fable's cost in figures, and the T3 Code picker settings (customModels,hiddenModels).Measurements
Skill listing (name plus description characters, the budget Claude Code caps at about 30,000), over the template's own
SKILLS/:harness-updateandremote-sessionleave the listing;t3-html-renderjoins it.Checks run locally
gate.ymlruns them, with the current Stage-1 settings bound forverify-ops-selftest.sh: 57 suites plus the two PowerShell suites,failed suites: 0.verify-ops-selftest.sh: the new.trashcase failed before the.gitignoreline and passes after it.bash -non the edited shell script..claude-config/bin/secrets-scan.shover every changed file: 0 hits added.