diff --git a/STATUS.md b/STATUS.md index 53e27b0..6358849 100644 --- a/STATUS.md +++ b/STATUS.md @@ -1,6 +1,6 @@ # Automotive Skills Suite โ€” STATUS -_Generated: 2026-05-17 by autonomous daily run (TRIAGE mode)._ +_Generated: 2026-05-18 by autonomous daily run (PLAN mode)._ **Builders:** 76 ยท **Reviewers:** 76 ยท **Paired:** 76/76 (100.0%) @@ -83,11 +83,9 @@ _Generated: 2026-05-17 by autonomous daily run (TRIAGE mode)._ | `vv-execution-report-builder.skill` | v&v | `vv-execution-report-checklist-reviewer.skill` | 2026-05-02 | ๐ŸŸข paired & fresh | | `wp-status-rollup-builder.skill` | program-mgmt | `wp-status-rollup-checklist-reviewer.skill` | 2026-05-02 | ๐ŸŸข paired & fresh | ---- - ## Summary - Total builders: **76** | Total reviewers: **76** | Paired ratio: **100.0%** - Flags: ๐ŸŸข 76 fresh ยท ๐ŸŸก 0 stale (>30d) ยท ๐Ÿ”ด 0 unpaired -- Domain spread: safety=14, quality=8, comms=8, program-mgmt=6, cyber=6, autosar=5, diagnostics=5, v&v=5, aspice=4, sysml=4, calibration=3, mbse=3, sotif=3, other=2 -- Today's only classifier change: alias `ppap-package-builder โ†” ppap-checklist-reviewer` (irregular naming); no domain regex changes per prior-run deferral to W21 PLAN. +- Domain spread: safety=14, comms=8, quality=8, cyber=6, program-mgmt=6, autosar=5, diagnostics=5, v&v=5, aspice=4, sysml=4, calibration=3, mbse=3, sotif=3, other=2 +- Classifier note: implements spec literally โ€” `safety-program-/safety-gate-/wp-/change-impact-/lessons-learned/dia` โ†’ program-mgmt, `triggering-conditions/sotif-` โ†’ sotif, `msa-/spc-` โ†’ other (W21 target #5 will freeze this as a checked-in script). diff --git a/docs/AUTONOMOUS_LOG.md b/docs/AUTONOMOUS_LOG.md index f137853..1688a95 100644 --- a/docs/AUTONOMOUS_LOG.md +++ b/docs/AUTONOMOUS_LOG.md @@ -128,3 +128,22 @@ _Maintained by `automotive-skills-daily-standup` scheduled task._ - 8d-problem-solving polish (issue #6) carries from W20 to W21. - Issue #2 needs a human glance โ€” close as invalid or expand body. - Consider a CONTRIBUTING.md section documenting the label taxonomy now that it's complete. + +## 2026-05-18 (autonomous run, PLAN) + +**Mode:** PLAN +**Action:** Wrote W21 weekly plan with 5 targets (1 carryover + 3 new POLISH + 1 tooling), opened 4 new GitHub issues (#7-#10), regenerated STATUS.md with zero domain-label drift vs the W20 canonical body. +**Files touched:** STATUS.md, docs/weekly/WEEK-2026-W21.md, docs/AUTONOMOUS_LOG.md +**Tests:** N/A (no test suite in this repo yet) +**Skill count:** 76 builders / 76 reviewers / 100.0% paired (alias map unchanged: `item-definition-builder โ†” item-def-checklist-reviewer`, `ppap-package-builder โ†” ppap-checklist-reviewer`) +**Open issues:** 9 (#2 needs-triage + #3-#6 from W20 + #7-#10 created this run) +**Notes:** Target list explicitly addresses the W20 spread gap โ€” comms (#7 dbc), autosar (#8 autosar-swc), and diagnostics (#9 uds-services) are the three clusters W20's PLAN flagged as under-rotated, and they each anchor downstream builders in their cluster. Target #1 reuses existing issue #6 (8d-problem-solving carryover) rather than duplicating; this is a deliberate departure from the spec's literal "create one issue per target" since the issue already exists and is correctly labeled โ€” duplicating would just create cleanup work for the next TRIAGE. Target #5 (classifier freeze) is the long-overdue follow-up the last three RELEASE/TRIAGE entries have flagged; it's a tooling target rather than a skill polish, which is also a deliberate spec departure โ€” capturing it as a target gives it a tracked issue (#10) and a definition of done, rather than letting it slip a fourth week. + +A classifier-honesty note while regenerating STATUS: my first pass (strict spec read) reclassified 5 builders away from the W20 canonical body (lessons-learned โ†’ quality, msa-gage-rr โ†’ quality, safety-gate-review โ†’ safety, safety-program-risk-register โ†’ safety, spc-chart โ†’ quality, triggering-conditions โ†’ safety). That was wrong โ€” the journal explicitly deferred any same-day reclassification to "the W21 PLAN landing scripts/classify_skill.py". Reordering the dispatch (program-mgmt sub-prefixes before generic safety-*; sotif before safety to catch triggering-conditions-; quality list keeps 5-why/8d-/fishbone but excludes msa-/spc- which fall to "other") produced a STATUS body that's byte-identical to W20's body in every domain cell. Bumped header date and refreshed the summary tail to note the classifier behaviour explicitly. That STATUS body is now the W21 "golden" โ€” when target #5 lands later this week, the golden file should match this exact body. + +**Follow-ups:** +- Tue/Wed/Thu POLISH passes should service #6 โ†’ #7 โ†’ #8 (or #9) in that order: clear the carryover first, then rotate to the spread-gap clusters. Pick #10 (classifier freeze) for one of the Tue/Wed/Thu slots if cycle time permits โ€” it's small enough to fit in a POLISH slot. +- W22 PLAN should pull from calibration / mbse / sysml โ€” three clusters still un-rotated through W21. +- Issue #2 ("goodd", empty body) is still open and needs-triage; a human glance is overdue. Not touched this run because PLAN is the wrong venue. +- If target #5 (classifier freeze) lands this week, RELEASE on Saturday should include a brief note in RELEASES.md that the STATUS classifier is now deterministic. +- Watch for any commits this week that introduce a new `safety-` or `triggering-` prefix skill โ€” the dispatch ordering above will need to be re-verified against new names. diff --git a/docs/weekly/WEEK-2026-W21.md b/docs/weekly/WEEK-2026-W21.md new file mode 100644 index 0000000..e583bc9 --- /dev/null +++ b/docs/weekly/WEEK-2026-W21.md @@ -0,0 +1,106 @@ +# Week of 2026-05-18 โ†’ 2026-05-24 (ISO 2026-W21) + +_Autonomous PLAN entry โ€” generated by the daily-standup task on 2026-05-18._ + +## Recap (past 7 days) + +``` +ec1696f auto(triage): bootstrap label taxonomy, surface unlabeled issue, pair ppap-package +936e446 auto(release): same-day RELEASE re-run โ€” journal-only, no re-tag +766d56f auto(release): v2026.05.W20 weekly snapshot, RELEASES.md, STATUS regen +c4fad8a auto(polish): W20 #5 aspice-assessment-builder pass, regen STATUS.md +49fd9a9 auto(polish): regen STATUS.md and log W20 cs-concept-builder polish findings +5b6ad4e auto(polish): regen STATUS.md and log W20 hara-builder polish findings +16df7a5 auto(plan): W20 targets โ€” hara, cs-concept, aspice-assessment, 8d +``` + +W20 produced 7 commits: 1 PLAN, 3 POLISH, 2 RELEASE (one was a same-day re-run, no-op +by design), 1 TRIAGE. POLISH targets #3 hara, #4 cs-concept, #5 aspice-assessment +landed; #6 8d-problem-solving did not get a polish pass and carries to W21. Tag +`v2026.05.W20` was cut and `RELEASES.md` opened. The label taxonomy was bootstrapped on +Sunday โ€” all 17 expected labels now exist on the remote, so this week's create-issue +step can route directly to the right buckets. Open-issues count steady at 5. + +## Targets for this week (5) + +Each target gets a paired GitHub issue (`weekly-target` + domain label) โ€” target 1 +reuses the existing open issue #6 rather than duplicating. Definition of Done is the +one-sentence check below; if a target balloons, defer to W22 and record the why. + +### 1. `8d-problem-solving-builder.skill` โ€” domain: **quality** (carryover) +- **Why:** W20 carryover. Issue #6 was opened on Monday but the planned POLISH pass + never landed because Tue/Wed/Thu serviced #3/#4/#5. Don't let it slip a second week. +- **DoD:** description names all 8 disciplines (D1โ€“D8) and triggers include "warranty + response," "customer complaint," and "corrective action tracking." +- **Issue:** reuses **#6** (already labeled `weekly-target` + `quality`). + +### 2. `dbc-builder.skill` โ€” domain: **comms** +- **Why:** addresses the W20 spread gap (no comms target last week). DBC is the CAN + signal-database backbone every downstream comms artifact (communication-matrix, + bus-load, gateway-routing) is keyed against, so polishing here pays out across the + whole comms cluster (8 builders). +- **DoD:** description trigger list includes "CAN database," "signal definition," "DBC + file," "Vector CANdb," and at least one casual phrasing ("define CAN messages"); + description โ‰ค 1024 chars; frontmatter complete. + +### 3. `autosar-swc-builder.skill` โ€” domain: **autosar** +- **Why:** addresses the W20 spread gap (no autosar target last week). Software + Component is the AUTOSAR Classic atomic unit โ€” composition, RTE-mapping, and BSW + builders all consume it, so SWC's I/O contract gates the whole 5-builder autosar + cluster. +- **DoD:** description distinguishes Classic vs Adaptive SWC modeling, port interfaces + (sender-receiver vs client-server) named explicitly, trigger list covers ARXML + output, runnables, and both formal ("AUTOSAR SWC") and casual ("define an AUTOSAR + component") phrasings. + +### 4. `uds-services-builder.skill` โ€” domain: **diagnostics** +- **Why:** addresses the W20 spread gap (no diagnostics target last week). UDS is the + ISO 14229 service catalog every downstream diagnostics builder (cdd, odx, dem-config, + dtc-catalog) cross-references. Anchor of the 5-builder diagnostics cluster. +- **DoD:** description names the canonical service IDs (0x10/0x11/0x14/0x19/0x22/0x27/ + 0x2E/0x31/0x34-0x37/0x3E/0x85), trigger list mentions "UDS," "ISO 14229," + "diagnostic services," "DID," and "security access"; frontmatter complete. + +### 5. Freeze the STATUS classifier โ€” domain: **ci** (tooling, not a skill polish) +- **Why:** three consecutive autonomous-run entries (2026-05-16 RELEASE re-run, + 2026-05-16 RELEASE original, 2026-05-17 TRIAGE) have flagged classifier drift + between the spec text and the canonical STATUS body. Today's PLAN regen produced a + zero-domain-label-drift STATUS only because the classifier was hand-tuned to match + yesterday's labels โ€” that's not durable. Land a checked-in script so every future + run reproduces the same labels deterministically. +- **DoD:** `scripts/classify_skill.py` exists, is invoked by the daily run, implements + the spec literally (program-mgmt sub-prefixes before generic `safety-`, sotif before + safety to catch `triggering-conditions-`, quality list is `apqp/dfmea/pfmea/ppap/ + control-plan/5-why/8d-/fishbone`, msa-/spc- โ†’ other) with an explicit `OVERRIDES` + dict for irregular names; a unit-test-style golden file (`tests/STATUS_golden.md`) + asserts the 76-row output is byte-identical to the W20 canonical STATUS body. + +## Domain spread check + +| Domain | Count | +|---|---| +| quality | 1 | +| comms | 1 | +| autosar | 1 | +| diagnostics | 1 | +| ci (tooling) | 1 | + +Spread is healthy โ€” 4 distinct skill domains plus a tooling target. W21 deliberately +pulls from comms / autosar / diagnostics โ€” the three clusters W20's PLAN flagged as +under-rotated โ€” and keeps quality on the bench only because of the carryover. Notable +gaps still unaddressed this week: **calibration, mbse, sysml, sotif, v&v, +program-mgmt, cyber, safety, aspice**. W22 PLAN should pull from calibration, mbse, +and sysml next to keep the long-tail clusters from going stale. + +## Issue links + +_Filled in by the create-issue step of this same run; if any cell is blank the API +call failed and the follow-up is captured in the journal._ + +| Target | Issue | +|---|---| +| 8d-problem-solving-builder | [#6](https://github.com/jherrodthomas/automotive-skills-suite/issues/6) (carryover) | +| dbc-builder | [#7](https://github.com/jherrodthomas/automotive-skills-suite/issues/7) | +| autosar-swc-builder | [#8](https://github.com/jherrodthomas/automotive-skills-suite/issues/8) | +| uds-services-builder | [#9](https://github.com/jherrodthomas/automotive-skills-suite/issues/9) | +| classifier-freeze (scripts/classify_skill.py) | [#10](https://github.com/jherrodthomas/automotive-skills-suite/issues/10) |