# Changelog

## Score

- CAI 37 → 34 (-3.4)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 25 → 30 (+4.7)
- Architecture 93 → 92 (-1.4)
- Maturity 56 → 57 (+0.5)
- Readiness 20 → 13 (-6.6)
- Security 100 → 100 (+0.0)

## Resolved (59)

- (anonymous) (cognitive 16) (ShareRibbon/Resources/js/message-sender.js)
- (anonymous) (cognitive 20) (ShareRibbon/Resources/js/reformat-template.js)
- Boundary-crossing change coupling: BaseChatControl.vb ↔ ThisAddIn.vb (ShareRibbon/Controls/BaseChatControl.vb)
- Change coupling: BaseChatControl.vb ↔ BaseOfficeRibbon.vb (ShareRibbon/Controls/BaseChatControl.vb)
- Change coupling: BaseChatControl.vb ↔ ChatContextBuilder.vb (ShareRibbon/Controls/BaseChatControl.vb)
- Change coupling: BaseChatControl.vb ↔ message-sender.js (ShareRibbon/Controls/BaseChatControl.vb)
- Change coupling: code-handler.js ↔ message-sender.js (ShareRibbon/Resources/js/code-handler.js)
- Duplicated block (10 lines × 2) (WordAi/ChatControl.vb)
- Duplicated block (11 lines × 2) (ShareRibbon/Services/Reformat/OpenXmlReformatEngine.vb)
- Duplicated block (11 lines × 2) (WordAi/OpenXmlWordTranslator.vb)
- Duplicated block (12 lines × 2) (ShareRibbon/Mcp/StdioConfigForm.vb)
- Duplicated block (13 lines × 2) (ShareRibbon/Config/ReformatTemplateEditorForm.vb)
- Duplicated block (13 lines × 4) (ShareRibbon/Services/SkillScriptExecutor.vb)
- Duplicated block (15 lines × 3) (WordAi/WordJsonCommandSchema.vb)
- Duplicated block (16 lines × 2) (ShareRibbon/Controls/Services/IntentRecognitionService.vb)
- Duplicated block (17 lines × 2) (ShareRibbon/Config/ReformatTemplateEditorForm.vb)
- Duplicated block (17 lines × 2) (WordAi/ChatControl.vb)
- Duplicated block (18 lines × 2) (PowerPointAi/ChatControl.vb)
- Duplicated block (18 lines × 2) (WordAi/ChatControl.vb)
- Duplicated block (20 lines × 3) (ShareRibbon/Controls/BaseChat.vb)
- …and 39 more

## New (107)

- (anonymous) (cognitive 21) (ShareRibbon/Resources/js/reformat-template.js)
- (anonymous) (cognitive 22) (ShareRibbon/Resources/js/message-sender.js)
- Boundary-crossing change coupling: BaseChatControl.vb ↔ ChatControl.vb (ShareRibbon/Controls/BaseChatControl.vb)
- Boundary-crossing change coupling: ChatControl.vb ↔ BaseChatControl.vb (ExcelAi/ChatControl.vb)
- Boundary-crossing change coupling: Ribbon1.vb ↔ BaseOfficeRibbon.vb (ExcelAi/Ribbon1.vb)
- Boundary-crossing change coupling: Ribbon1.vb ↔ BaseOfficeRibbon.vb (PowerPointAi/Ribbon1.vb)
- Boundary-crossing change coupling: Ribbon1.vb ↔ Ribbon1.vb (ExcelAi/Ribbon1.vb)
- Boundary-crossing change coupling: Ribbon1.vb ↔ Ribbon1.vb (PowerPointAi/Ribbon1.vb)
- Boundary-crossing change coupling: ThisAddIn.vb ↔ ThisAddIn.vb (ExcelAi/ThisAddIn.vb)
- Boundary-crossing change coupling: ThisAddIn.vb ↔ ThisAddIn.vb (PowerPointAi/ThisAddIn.vb)
- Duplicated block (10 lines × 2) (ExcelAi/ExcelDirectOperationService.vb)
- Duplicated block (10 lines × 2) (PowerPointAi/ChatControl.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Agent/PromptManager.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Config/ConfigApiForm.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Controls/Services/HttpStreamService.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Controls/Services/McpService.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Storage/AgentMemoryRepository.vb)
- Duplicated block (10 lines × 2) (ShareRibbon/Translate/TranslateGlobalSettingsForm.vb)
- Duplicated block (10 lines × 4) (ShareRibbon/Services/Reformat/LegacyTemplateConverter.vb)
- Duplicated block (10 lines × 5) (ShareRibbon/Services/Reformat/FormattingStandardData.vb)
- …and 87 more
