batch 6a/6: skill tune-up absorb — 11 SKILL.md updates#6
Merged
Conversation
…speculative Absorbs skill-creator-authored tune-ups from the speculative branch into main. Each change passed through skill-creator on speculative; this batch is a mechanical absorb. Affected skills: - activity-schema-expert - agent-experience-engineer - agent-qol - ai-evals-expert - ai-jailbreaker - ai-researcher - alerting-expert - algebra-owner - alignment-auditor - alignment-observability - skill-documentation-standard 9 other speculative skill files converged to main's versions via earlier batches and landed no-op. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…ogged (Lucent-Financial-Group#177) Creates durable append-only log for the cadenced NSA testing protocol declared in the 2026-04-23 "NSA persona is first- class" directive. Closes gap #3 of the Frontier bootstrap readiness roadmap (BACKLOG P0, filed Otto-2). File contents: - Why-this-exists block with directive verbatim - Append-only discipline (same shape as sibling hygiene-history files) - 3 test configurations: baseline / NSA-default / NSA-worktree - 5-prompt test set v1 - Schema: date / test-id / prompt-id / config / model / outcome / gap-found / notes - Outcome definitions: pass / partial / fail - Cadence: every 5-10 autonomous-loop ticks, one prompt per fire - Known substrate-gap patterns running list - First row: NSA-001 (Otto-1 feasibility test, 2026-04-23T18:42:00Z) — partial pass, found Zeta identity but missed Otto because MEMORY.md had no pointer; gap fixed same-tick, pattern recorded Attribution: Otto (loop-agent PM hat) — hat-less-by-default substrate hygiene work. No specialist persona hats worn. Closes gap #3 of 8 in the Frontier readiness roadmap. Remaining: gap #1 (multi-repo split) / #2 (linguistic-seed substrate) / #4 (bootstrap-reference docs) / #5 (factory-vs- Zeta separation) / #6 (persona file portability) / #7 (tick-history scope-mixed) / #8 (hygiene rows untagged). Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…correction) (Lucent-Financial-Group#332) Completes the input pipeline for TemporalCoordinationDetection. phaseLockingValue (PR Lucent-Financial-Group#298): PLV expects phases in radians but didn't prescribe how events become phases. This ship fills the gap. 17th graduation under Otto-105 cadence. Addresses Amara 17th-ferry Part 2 correction #5: 'Without phase construction, PLV is just a word.' Surface (2 pure functions): - PhaseExtraction.epochPhase : double -> double[] -> double[] Periodic-epoch phase. φ(t) = 2π · (t mod period) / period. Suited to consensus-protocol events with fixed cadence (slot duration, heartbeat, epoch boundary). - PhaseExtraction.interEventPhase : double[] -> double[] -> double[] Circular phase between consecutive events. For sample t in [t_k, t_{k+1}), phase = 2π · (t - t_k) / (t_{k+1} - t_k). Suited to irregular event-driven streams. Both return double[] of phase values in [0, 2π) radians. Empty output on degenerate inputs (no exception). eventTimes assumed sorted ascending; samples outside the event range get 0 phase (callers filter to interior if they care). Hilbert-transform analytic-signal approach (Amara's Option B) deferred — needs FFT support which Zeta doesn't currently ship. Future graduation when signal-processing substrate lands. Tests (12, all passing): epochPhase: - t=0 → phase 0 - t=period/2 → phase π - wraps cleanly at period boundary - handles negative sample times correctly - returns empty on invalid period (≤0) or empty samples interEventPhase: - empty on <2 events or empty samples - phase 0 at start of first interval - phase π at midpoint - adapts to varying interval lengths (O(log n) binary search for bracketing interval) - returns 0 before first and after last event (edge cases) Composition with phaseLockingValue: - Two nodes with identical epochPhase period → PLV = 1 (synchronized) - Two nodes with same period but constant offset → PLV = 1 (perfect phase locking at non-zero offset is still locking) This composes the full firefly-synchronization detection pipeline end-to-end for event-driven validator streams: validator event times → PhaseExtraction → phaseLockingValue → temporal-coordination-detection signal 5 of 8 Amara 17th-ferry corrections now shipped: #1 λ₁(K₃)=2 ✓ already correct (PR Lucent-Financial-Group#321) #2 modularity relational ✓ already correct (PR Lucent-Financial-Group#324) #3 cohesion/exclusivity/conductance ✓ shipped (PR Lucent-Financial-Group#331) #4 windowed stake covariance ✓ shipped (PR Lucent-Financial-Group#331) #5 event-stream → phase pipeline ✓ THIS SHIP Remaining: #4 robust-z-score composite variant (future); #6 ADR phrasing (already correct); #7 KSK naming (BACKLOG Lucent-Financial-Group#318 awaiting Max coord); #8 SOTA humility (doc-phrasing discipline). Build: 0 Warning / 0 Error. Provenance: - Concept: Aaron firefly-synchronization design - Formalization: Amara 17th-ferry correction #5 with 3-option menu (epoch / Hilbert / circular) - Implementation: Otto (17th graduation; options A + C shipped, Hilbert deferred) Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…-ferry §B + §F + corrections #2 #7 #9 (Lucent-Financial-Group#342) Research-grade design doc for the Stage-2 rung of Amara's corrected promotion ladder. Specifies: (a) placement under src/Experimental/CartelLab/ (not src/Core/ — that's Stage 4); (b) MetricVector type with PLV magnitude AND offset split (correction #6); (c) INullModelGenerator interface + Preserves/Avoids table columns; (d) IAttackInjector forward-looking interface (Stage 3); (e) Wilson-interval reporting contract with {successes, trials, lowerBound, upperBound} schema (correction #2 — no more "~95% CI ±5%" handwave); (f) RobustZScoreMode with Hybrid fallback (correction #7 — percentile-rank when MAD < epsilon); (g) explicit artifact-output layout under artifacts/ coordination-risk/ with five files + run-manifest.json (correction #9). 6-stage promotion path (0 doc / 1 ADR / 2.a skeleton / 2.b full null-models + first attack / 3 attack suite / 4 Core/NetworkIntegrity / 5 Aurora-KSK) matches Amara's corrected ladder and Otto-105 cadence. Doc-only change; no code, no tests, no workflow, no BACKLOG tail touch (avoids positional-conflict pattern that cost Lucent-Financial-Group#334 → Lucent-Financial-Group#341 re-file this session). This is the 7th of 10 18th-ferry operationalizations: - #1/#10 test-classification (Lucent-Financial-Group#339) - #2 Wilson-interval design specified (this doc) - #6 PLV phase-offset shipped (Lucent-Financial-Group#340) - #7 MAD=0 Hybrid mode specified (this doc) - #9 artifact layout specified (this doc) - #4 exclusivity already shipped (Lucent-Financial-Group#331) - #5 modularity relational already shipped (Lucent-Financial-Group#324) Remaining: Wilson-interval IMPLEMENTATION (waits on Lucent-Financial-Group#323 + Stage 2.a), MAD=0 Hybrid IMPLEMENTATION (waits on Lucent-Financial-Group#333 + Stage 2.a), conductance-sign doc (waits on Lucent-Financial-Group#331), Stage-2.a skeleton itself. Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…mara 19th-ferry correction #6) (Lucent-Financial-Group#346) Research-grade criteria doc locking two acceptance bars: 1. DST-held — minimum: 6 items (seeds committed, failing tests emit seed+params, bit-for-bit local-vs-CI reproducibility, broad sweeps nightly-not-gating, zero unreviewed entropy hits in main-path, boundaries either simulated or explicitly accepted). 2. FoundationDB-grade DST candidate — aspirational: 8 surfaces (simulated FS, simulated network, deterministic task scheduler, fault injection/buggify, swarm runner, replay artifact storage, failure minimization/shrinking, end-to-end scenario from one seed). Maps 19th-ferry revised-roadmap PRs to which criteria items each addresses. Captures Amara's per-area grade table (overall B-) as "Amara's assessment, not factory- certified." Explicit promotion path: doc stays research-grade until PR 1 of the 19th-ferry revised roadmap lands an ADR promoting the DST-held bar to factory discipline; at that point criteria migrate to docs/DST-COMPLIANCE.md top-level. No graduation claims DST-held today; graduations reference this doc as target without self-certification. Composes with test-classification.md (PR Lucent-Financial-Group#339; supports items 1+2+4), calibration-harness-stage2-design.md (PR Lucent-Financial-Group#342; artifact schema supports item 2), Amara 19th ferry (PR Lucent-Financial-Group#344 absorb; source of criteria). Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…mara #4 robust) + 3 BACKLOG rows (Lucent-Financial-Group#333) * core: RobustStats.robustZScore + Graph.coordinationRiskScoreRobust — 18th graduation (Amara #4 robust) Two ships consolidated per the 'parallel PRs hit positional conflicts on tail-append' lesson: 1. RobustStats.robustZScore (baseline: double seq) -> (measurement: double) -> double option Returns (measurement - median) / (1.4826 · MAD). The 1.4826 constant scales MAD to be consistent with Gaussian stddev. MadFloor prevents blow-up when every baseline value equal. 2. Graph.coordinationRiskScoreRobust alpha beta eigenTol eigenIter lpIter (baselineLambdas: double seq) (baselineQs: double seq) (attacked: Graph<'N>) -> double option Upgrades coordinationRiskScore (PR Lucent-Financial-Group#328) from raw linear differences to robust-standardized z-scores per Amara 17th-ferry correction #4. Caller provides baseline metric distributions; Z-scores calibrate thresholds from data. Why robust z-scores: adversarial data isn't normally distributed. An attacker can poison a ~normal distribution by adding a few outliers that inflate stddev, making subsequent real attacks look 'within one sigma'. Median+MAD survives ~50% adversarial outliers. Standard move in robust statistics literature; Amara's correction puts it on the Zeta composite. Tests (5 new; total 39 since main hasn't merged Lucent-Financial-Group#331/Lucent-Financial-Group#332 yet): - robustZScore None on empty baseline - robustZScore of measurement = median is 0 - robustZScore scales MAD by 1.4826 for Gaussian consistency (measurement 4 on baseline [1..5] ≈ 0.674) - coordinationRiskScoreRobust fires strongly on K4-injected graph given 5 baseline samples - coordinationRiskScoreRobust returns None on empty baselines BACKLOG rows added this tick per Aaron Otto-139 directives: 1. Signal-processing primitives (FFT + Hilbert) — unblocks Amara correction #5 Option B; Aaron standing-approval 2. F# DSL for entry points + graph-query-language standards compliance (Cypher / GQL / Gremlin / SPARQL / Datalog) 3. LINQ-compatible entry points for C# consumers — pair with F# DSL; two frontends, one algebraic backend 6 of 8 Amara 17th-ferry corrections now shipped or confirmed: Remaining: #6 ADR phrasing (already fine); #7 KSK naming (BACKLOG Lucent-Financial-Group#318 Max coord pending); #8 SOTA humility (doc-phrasing discipline ongoing). Build: 0 Warning / 0 Error. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(Lucent-Financial-Group#333): 4 review-thread P1/P2s on robustZScore + coordinationRiskScoreRobust Active PR-resolve-loop on Lucent-Financial-Group#333. 1. Doc/impl contradiction on MAD=0 (thread 59VhYb, P1): RobustStats.robustZScore doc said "returns None when MAD(baseline)=0" but impl uses MadFloor and returns Some finite value. Rewrote doc to match impl: explicit "MadFloor substituted when MAD collapses to zero" — floor reflects "scale is below epsilon" not "undefined." Implementation is the contract. 2. Multi-enumeration of baseline seq (thread 59VhYq, P1): robustZScore previously passed `baseline` to both `median` + `mad` which each call `Seq.toArray`. Expensive AND inconsistent for lazy/non-repeatable sequences (different values between enumerations = undefined behavior). Fixed: `Seq.toArray` once at entry, pass the materialized array to both. O(n) instead of O(2n); stable across lazy sources. 3. Name attribution in Graph.fs doc comment (thread 59VhY5, P1): "Amara 17th-ferry... Otto 18th graduation" → "external AI collaborator's 17th courier ferry... Eighteenth graduation under the Otto-105 cadence." Role-reference convention per AGENT-BEST-PRACTICES code/doc rule. 4. Array-vs-seq terminology (thread 59VhZG, P2): Graph.fs doc said callers "provide arrays" but the API is `double seq`. Rewrote: sequences + noted the materialize-once optimization in robustZScore so callers can pass any seq form without re-enumeration cost. Thread 59VhX9 (P3-label-in-P2-section mismatch) — already resolved on main via PR Lucent-Financial-Group#341 which landed the signal- processing row correctly labeled "P2 research-grade." No fix needed on this branch. Build: 0 Warning(s) / 0 Error(s). 53 RobustStats + Graph tests pass. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…ucent-Financial-Group#340) * core: PLV mean phase offset — 19th graduation (Amara 18th-ferry #6) Addresses Amara 18th-ferry correction #6: PLV = 1 can mean anti-phase locking, not same-time synchronization. Downstream detectors that rely on "PLV = 1 => synchronized" misread anti-phase coordinators as same-time coordinators. Two new functions in `TemporalCoordinationDetection`: - `meanPhaseOffset phasesA phasesB : double option` Returns the argument (angle) of the mean complex phase- difference vector whose magnitude is the PLV. Returns None when series are empty, mismatched-length, or when the mean vector has effectively zero magnitude (1e-12 floor) — in which case direction is mathematically undefined. - `phaseLockingWithOffset phasesA phasesB : struct (double * double) option` Returns both magnitude and offset in one sequence pass. Zero-magnitude case: magnitude near 0, offset = nan; near-zero magnitude is the caller's reliable "offset is undefined" signal. Existing `phaseLockingValue` contract unchanged; new primitives are additive. Downstream `Graph.coordinationRiskScore*` and any other detector consuming PLV can now add a separate offset- based term instead of collapsing both into one scalar (Amara's explicit recommendation in correction #6). 8 new xUnit tests covering: - Identical series (offset = 0) - Constant pi/4 offset (observed = -pi/4, a-minus-b convention) - Anti-phase series (magnitude 1, offset = pi) — the correction #6 regression test, contrasted against in-phase (offset 0) with identical magnitude - Uniformly-distributed differences (zero-magnitude => None) - Empty / mismatched-length / single-element edge cases - phaseLockingWithOffset magnitude matches phaseLockingValue (consistency property preventing silent detector divergence) - phaseLockingWithOffset zero-magnitude returns (near-zero, nan) - phaseLockingWithOffset returns None on empty/mismatched All 37 TemporalCoordinationDetection tests pass locally. 0 Warnings / 0 Errors build. 6th of the 10 18th-ferry corrections operationalized this week (after test-classification doc in Lucent-Financial-Group#339, parser-tech in Lucent-Financial-Group#338). Remaining: Wilson CIs in CartelToy tests (needs Lucent-Financial-Group#323 landed), MAD=0 percentile-rank fallback (needs Lucent-Financial-Group#333 landed), conductance-sign doc (needs Lucent-Financial-Group#331 landed), artifact-output layout (Stage-2 with calibration harness). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(Lucent-Financial-Group#340): refactor shared accumulation + 5 review-thread fixes (Otto-216) Active PR-resolve-loop on Lucent-Financial-Group#340 (PLV mean phase offset). 1. Sentinel-default in test (thread 59WGi9): replaced Option.defaultValue -1.0 pattern in the phaseLockingWithOffset-magnitude-matches-phaseLockingValue consistency test with explicit pattern-match + fail on None. Sentinel form would silently pass the equality assertion if BOTH primitives returned None, masking regressions. 2. Broken ferry cross-reference path (thread 59WGjn): doc comment referenced docs/aurora/2026-04-24-amara- calibration-ci-hardening-deep-research-plus-5-5- corrections-18th-ferry.md which doesn't exist on main (only 7th / 17th / 19th ferries landed as standalone docs). Rewrote provenance to describe the ferry topically + cross-reference the related 19th- ferry DST audit that IS in the repo. 3. Misleading "same PLV-magnitude floor" wording (thread 59WGj4): doc said meanPhaseOffset's zero-magnitude check uses "the same PLV-magnitude floor" — phaseLockingValue has NO floor (returns values arbitrarily close to 0). Fixed: clarified that the phasePairEpsilon floor applies ONLY to the offset-undefined decision; phaseLockingValue returns magnitude without threshold. 4. Name-attribution in doc comment (thread 59WGkP): "Aaron + Amara 11th ferry" replaced with "the 11th ferry" per factory role-reference convention. Audit- trail surfaces (commit messages, tick-history, memory) retain direct attribution; code/doc comments use role references. 5. Duplicate sin/cos accumulation across 3 functions (thread 59WGkn): extracted private helpers phasePairEpsilon + meanPhaseDiffVector. All three functions (phaseLockingValue, meanPhaseOffset, phaseLockingWithOffset) now route through the shared accumulator. Eliminates drift risk — one function can no longer silently diverge from the others on accumulation or threshold. Build: 0 Warning(s) / 0 Error(s). All 37 TemporalCoordinationDetection tests pass. All 5 threads replied via GraphQL next step. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(Lucent-Financial-Group#340): 2 review threads (stale ferry path + atan2 range) Thread 59Yqkl (P1) — stale provenance reference: The doc cited `docs/aurora/2026-04-24-amara-temporal- coordination-detection-cartel-graph-influence-surface- 11th-ferry.md`, but the 11th ferry has not yet landed under `docs/aurora/` (it's queued in the Otto-105 operationalize cadence; PR Lucent-Financial-Group#296 is its pending absorb). Replaced with the intent-preserving form: role references ("external AI collaborator's 11th courier ferry") plus a pointer at the MEMORY.md queue entry, so the provenance survives regardless of when the file-path question resolves. Also dropped the direct first-name so this factory-produced doc-comment tracks the name-attribution discipline. Thread 59YqlC (P2) — atan2 range correction: Doc said `(-pi, pi]` but `System.Math.Atan2` is documented as `[-pi, pi]` (both endpoints reachable under IEEE-754 signed-zero semantics: atan2(0, -1) = +pi, atan2(-0, -1) = -pi). Updated the doc to match the implementation. Behaviour unchanged. --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
Apr 24, 2026
…ucent-Financial-Group#361) * fix: strip history-log commentary from TemporalCoordinationDetection Aaron's correction: "comments should not read like history, what use is this to a future maintainer? Code comments should explain the code not read like some history log ... code is not a history file ... there should be existing lint hygiene for that." GOVERNANCE §2 + CLAUDE.md both say the same thing: docs read as current state, not history. This file had 27 occurrences of graduation / ferry / attribution / Otto-NNN / "Provenance:" / "per correction #N" spread across the module header and six function docs. Every occurrence is process metadata — who wrote it, which round shipped it, which absorb it traces to — none of which a future maintainer reading the function body cares about. Kept (explains code): * math: ranges, Euler identity, atan2 + IEEE-754 signed zero, epsilon-floor rationale * complementarity: PLV vs cross-correlation, magnitude vs offset, same-phase vs anti-phase distinction * input contracts: None semantics, radians, wrapping- convention-agnostic * composition guidance: prefer phaseLockingWithOffset for single-pass; burstAlignment is pair-wise, node-set generalisation belongs elsewhere Removed (history): * module-header "Aaron's design / Amara's formalization / Attribution / Scope of this first graduation" * per-function "Provenance: ... N-th courier ferry ... Nth graduation under the Otto-105 cadence" * "Per Amara 18th-ferry correction #6" prefix (the argument it introduced is preserved verbatim, just without the prefix) * broken inline-code span across newlines in the removed ferry-path (same class as Lucent-Financial-Group#348's fix) 37 TCD tests pass. Build clean, 0 warnings. No code bodies changed — this is a doc-comment-only cleanup. Net -64 lines. Follow-up: factory-wide audit + lint for the same class of violation (row landing next tick per queue-saturation discipline). * fix(Lucent-Financial-Group#361): 3 review threads — module-doc accuracy + PLV wording Thread 59Y_Np (Codex P2) + thread 59Y_st (Copilot P1) — same finding: the module-level summary claimed "All entry points return Option-wrapped values" and listed "length-mismatched" as a None condition, but: * crossCorrelationProfile / significantLags / burstAlignment return plain arrays, not Option-wrapped * crossCorrelation tolerates mismatched lengths — it operates over the overlap window at the given lag Split the module doc into two return-shape families (single- value primitives that return Option, profile/array primitives that return arrays) and added an explicit note on length semantics: crossCorrelation tolerates mismatch, phase-pair primitives (PLV / meanPhaseOffset / phaseLockingWithOffset) require equal lengths. Thread 59Y_tT (Copilot P2) — meanPhaseOffset doc wording: "vector whose magnitude is phaseLockingValue" implied the function IS the magnitude. Corrected to "whose magnitude is the PLV (i.e. the value returned by phaseLockingValue on the same inputs)". All three are doc-comment-only corrections. 37 TCD tests pass; build clean.
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
First sub-slice of batch 6. Absorbs 11 skill tune-ups from
`round-44-speculative` that passed skill-creator discipline on
the speculative branch; this is a mechanical absorb to main.
Affected
activity-schema-expert, agent-experience-engineer, agent-qol,
ai-evals-expert, ai-jailbreaker, ai-researcher, alerting-expert,
algebra-owner, alignment-auditor, alignment-observability,
skill-documentation-standard.
9 other skills listed in the speculative diff converged to main's
versions via earlier batches and landed no-op.
Cost rationale
AceHack target. Doc-only; CI = markdownlint + prompt-protector
lint.
Test plan
🤖 Generated with Claude Code