Repository navigation
Conversation
Alma asked Mercuria for "la tercera entrega de la serie de artículos sobre
employent firmada por Felipe Polo". Felipe's tone file was loaded, and the
draft still came out in institutional "nosotros" with nobody speaking:
blog-post-create files a chapter of the "Building our Employents" series as
corporate content with no individual signer, and nothing in the file let the
request override that.
It was not the only default deciding the signer without looking at the
request. Five places did: the requester as default signer (single-author),
Step 3's criteria and confirmation question, the external-person cases, the
institutional voice, and tone's own rule ("initiator or most senior"), which
also disagreed with Step 3's order. blog-post-review then flagged any other
signer as misidentified.
So blog-post-create opens with "The requested signer": the named person signs,
whatever the default would pick or remove. Still applies: the signer is an
Orbitant employee, Case A asks about framing only, the Notion strategy for
anything about Mercuria, and the tone file. Two rules come with it. The piece
must read as theirs, with the signer's first person visible at least in the
opening and the closing. When they did not produce the material, the singular
carries their reading and recommendation, and what others did stays
attributed to them or to the team, with nothing invented.
Each default now names the override where it lives; tone defers to the
request, then to the channel skill, then to its old rule; the review checklist
checks the requested signer and flags "nosotros" under a named one.
Probed on deepseek-v4-flash with the real writer prompt and Alma's request,
opening and closing only, 3 runs each: the signer's first person singular
appears in 0 of 3 on 1.9.0 and 3 of 3 here ("Creo que…", "Mi recomendación
es…"), with the team's actions still in plural.
PATCH: 1.9.0 -> 1.9.1, meta 1.4.0 -> 1.4.1, and the three skills' frontmatter.
…ome questions From Alma's second thread (2026-10-05): asked to apply Felipe's tone and a strategic angle to a filed draft, the writer kept the draft's engineering framing, and nothing in the skill told it to ask for what the material lacked. Editing Discipline governs every round on an existing draft and forbids touching what was not requested, so a change of signer, voice or angle came out as a light edit. It now says such a change is a rewrite: from the original material when there is one, the previous draft only as a record of what the reviewer accepted, and The requested signer applied as for a first draft. The requested signer also says what to do when the material carries nothing of the signer's own: no generic first-person filler, and the handoff note opens with the questions to put to them, as a gap in technical depth already is. Felipe's profile gets a section 2b with the three things only he can supply (his position, a business figure, whose decision it was), the example questions, and item 0 of the pre-delivery check. Same unreleased 1.9.1.
…hey decided Working from a previous draft written in the signer's voice is the normal path, since that draft exists because they will sign. What it says in their first person about what they did or decided is still unconfirmed: Alma's second thread fed such a draft back as material, and a "decidí…" in it came out as fact in the next one. If the original material does not back such a claim, it stays as their view or goes to the handoff note for them to confirm.
Marketing's changes on top of this PR, as Alma sent them (2026-10-06): - Editing Discipline: a rewrite keeps only the previous draft's facts and links. Its structure, H2s and assets carry over only if they pass the signer's tone file, because a wrong angle lives in the structure. - When the material carries nothing of the signer's own, and in Felipe's section 2b: ask the requester in the thread before drafting and write with the answers. If the information is not available, write anyway and mark each gap inline as [PENDIENTE <NOMBRE>: …]. The pre-delivery check now asks whether the questions were asked and answered. - blog-post-review gets a signer tone checklist: load the signer's tone file and review against it; for Felipe, one business idea per H2, at most two technical specifics, no negate-then-assert, no unbacked "decidí…", no open [PENDIENTE FELIPE], and a closing rule rather than a summary.
…ot translated
Alma's review of the npm post (2026-10-13): Sonnet put "no es X, es Y" in the H1, two H2s and the body, with Felipe's tone file loaded and the ban in the skill.
- felipe-polo.md 2.4 said he "defines concepts by contrast" with no word on how; it now says each side is stated affirmatively and names the fatal rule. The table's accepted principle line was itself an "X, no Y"; replaced.
- blog-post-create: the ban lists its variants ("X, no Y", "No X. Y.", "lo que importa no es X: es Y", "menos X, más Y") and says what to do when the material phrases an idea that way. The final pass's escape clause no longer covers it.
- tone: "Not translated". Write from the material's ideas, not its sentences; the listed calques are examples, not the boundary; ordinary Spanish editing applies without being listed.
Measured with the voice battery on the npm post's material, signer Felipe Polo, counting negate-then-assert lines: deepseek-v4-flash 10 lines in 10 drafts before, 0 in 4 after; claude-sonnet-5 7 lines (H1 included) in 1 draft before, 0 in 1 after. Small samples.
Claude-Session: https://claude.ai/code/session_01RwnqgsPLXtvAy3hVeZG3h7
#76 sat at 1.9.1 while main shipped 1.10.0 (#77). Version-only conflicts, resolved as a new minor: plugin 1.11.0, meta 1.6.0, blog-post-create 1.6.0, tone 1.2.0. Claude-Session: https://claude.ai/code/session_01RwnqgsPLXtvAy3hVeZG3h7
Alma's profile for Matteo (2026-10-06), built from Felipe's and iterated with its latest rules: trade-offs with a price, the mechanism paying rent instead of a cap on specifics, the decision that aged badly, a testable rule of thumb as the closing, and section 2b with the four things only he can supply. Saved as references/tones/matteo-di-paolantonio.md, the path Mercuria derives from his name, and listed beside Felipe's in blog-post-create, blog-post-translate and the review's signer tone checklist. The file's own "Open points (for Alma, remove before shipping)" section is left out, as it asks; its wiring notes predate the tones folder.
… flagged Feedback in the thread where Alma shared the profile: the neural network quote now names the network, the "Gandalfear" quote goes (Matteo doesn't know what he meant and a model won't either), and so does the public apology about Vercel, an internal quote that shouldn't be public. The list of sources (Slack, Knowledge Sharing transcripts, interviews) becomes one line, as Matteo asked for a public repo, and the dangling reference to the removed open points goes. Claude-Session: https://claude.ai/code/session_01RwnqgsPLXtvAy3hVeZG3h7
This branch has not been deployed
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.
Why
Alma asked Mercuria for "la tercera entrega de la serie de artículos sobre employent firmada por Felipe Polo". The production logs show
generate_contentwithsigner: "Felipe Polo"and no drop, so Felipe's tone file was in the prompt. The draft still came out in institutional "nosotros", with nobody speaking:blog-post-createfiles a chapter of the "Building our Employents" series as corporate content with no individual signer, and nothing let the request override it.Every place that decided the signer without the request
blog-post-create, Single-authorblog-post-create, Step 3blog-post-create, External-personblog-post-create, Corporate / institutionaltone, 1bblog-post-review, checklistWhat changes
blog-post-createopens with "The requested signer", before every default it overrides: the named person signs. Still applies: the signer is an Orbitant employee (taken as one unless the request or material says otherwise; never sign as an external person), Case A asks about framing only, the Notion strategy governs anything about Mercuria or the Employents line, and the signer's tone file loads.tonedefers to the request, then to the channel skill, then to its old rule. The review checklist checks the requested signer and flags "nosotros" under a named one.Measured
Free probe on deepseek-v4-flash (NaN) with the real writer prompt (
buildWriterInstructions, signer "Felipe Polo", tone file loaded) and Alma's request shape, opening and closing paragraphs only, 3 runs per version: the signer's first person singular appears in 0 of 3 on 1.9.0 and 3 of 3 on this branch ("Creo que…", "Mi recomendación es…"), with the team's actions still in plural. Indicative only: three runs, and the production writer is Sonnet, not deepseek.PATCH 1.9.0 -> 1.9.1, meta 1.4.0 -> 1.4.1, and the three skills' frontmatter. Validators pass.
Second commit: Alma's other thread
Asked to "aplicar el tono de Felipe Polo a este post", Mercuria kept the engineering framing through eight revisions and a regeneration. Part of that is the harness (the tone file never loaded in that thread; fixed in orbitant-employents). Two parts are the brain:
Unmeasured: the probe above predates this commit.
Third commit: Alma's review
Marketing's changes, as Alma sent them:
[PENDIENTE <NOMBRE>: …]. The pre-delivery check asks whether the questions were asked and answered.[PENDIENTE FELIPE], a closing rule).In Claude Code and Cowork these work as written. In Mercuria two need harness support, tracked in orbitant-employents: the writer cannot post questions and wait (today it can only decline with one sentence), and the review and translation skills cannot read a tone file that lives in
blog-post-create.Fourth commit: "no es X, es Y" and calques (Alma, 2026-10-13)
Production (brain 1.10.0, Felipe's tone file loaded) wrote the npm post with the ban broken in the H1, two H2s and about eight body sentences, plus calques Alma flagged in the thread.
felipe-polo.md2.4 said he "defines concepts by contrast" with nothing on how; each side is now stated affirmatively, naming the fatal rule. The table's accepted principle line ("…, no el de la primera") was itself the pattern; replaced.blog-post-create: the ban lists its variants and says what to do when the material phrases an idea that way ("a label, not a guarantee" came straight from the Notion notes). The final pass's escape clause no longer covers it.tone: "Not translated". Write from the material's ideas, not its sentences; the listed calques are examples, not the boundary; ordinary Spanish editing applies unlisted.Measured with the voice battery on the npm post's material, signer Felipe Polo, counting negate-then-assert lines with a regex (candidates read by hand):
Fewer, not none: on Sonnet the pattern still slips into the body. Small samples (1.56 USD of Sonnet).
Merge of main
The branch was at 1.9.1 while main shipped 1.10.0 (#77). Version-only conflicts, resolved as a new minor: plugin 1.11.0, meta 1.6.0, blog-post-create 1.6.0, tone 1.2.0.
Matteo's tone file
Alma's profile for Matteo di Paolantonio as
references/tones/matteo-di-paolantonio.md, the path Mercuria derives from his name, listed beside Felipe's in blog-post-create, blog-post-translate and the review's signer checklist (for Matteo, section 8 of his file is the checklist). The file's "Open points" section is left out, as it asks. A second commit applies the feedback from the thread where Alma shared it: the neural network quote names the network, the "Gandalfear" quote and the public apology about Vercel go, and the list of sources (Slack, internal talks, interviews) becomes one line, since the repo is public. Same 1.11.0.https://claude.ai/code/session_01RwnqgsPLXtvAy3hVeZG3h7