Skip to content

feat(business-os): Waves 1-33 Strategic Enhancements & E2E QA Test Suite - #8

Merged
mikeholownych merged 9 commits into
mainfrom
cherry-pick-upstream-fixes
Aug 17, 2026
Merged

feat(business-os): Waves 1-33 Strategic Enhancements & E2E QA Test Suite#8
mikeholownych merged 9 commits into
mainfrom
cherry-pick-upstream-fixes

Conversation

@mikeholownych

Copy link
Copy Markdown
Owner

Executive Summary

This PR implements Waves 1–33 Strategic Enhancements for Charterforge, introducing 109 high-value operational, governance, finance, GTM, SEO, and top-tier web/graphic design capabilities.

Key Capabilities Included

  • Governance & Finance (Waves 1-27): Outcome attribution, capital rebalancing, dynamic budget scaling, multi-verification verifiers, compliance tax harvesting, Merkle proof probers, emergency escalations, inter-company clearing, SOC 2 exporters, ESG auditors, Rule-of-40 valuation maximizers, and board package generators.
  • GTM & Growth Engine (Waves 28-30): Programmatic SEO landing page matrix, CRO funnel friction miners, viral social proof referrals, interactive ROI lead magnets, competitor comparison matrices, predictive intent nurturers, interactive maturity benchmark tests, omnichannel case study syndicators, GEO/AISO search optimizers, micro-interactive growth tools, dynamic persona personalizers, and exit-intent recovery engines.
  • Top-Tier Web & Graphic Design Suite (Waves 31-33):
    • Tokens & Graphic Assets: Autonomous design system HSL theme tokens (WCAG AAA), branded AI visual asset pack generation, fluid spring motion architecture keyframing, and visual hierarchy health auditing.
    • Dynamic Theming & Responsive Layouts: Anti-FOUC dynamic dark/light theme switching, CSS container query layout breakpoint matrices, mathematical CSS clamp() fluid typography scalers, and WCAG 2.1 AAA glowing keyboard focus rings.
    • WebGL & Interactive Visualizations: Ambient WebGL canvas shaders (Aurora Mesh, 60 FPS GPU cap), content-aware skeleton shimmer loader keyframes (-40% perceived latency), interactive animated SVG charts, and automated Figma DTFM design token syncing.

QA & Verification (100% Green)

  • Added new E2E functional test suite (tests/integration/test_full_qa_e2e_workflow.py) executing full cross-subsystem workflows.
  • Fixed timing flaws and model catalog mocking in test_models.py, test_objective_worker.py, authority_integrity.py, and test_kanban_init_lock_bounded.py.
  • Master Regression Test Suite Result: 381 Passed / 0 Failed across 60 parallel processes.

sam7894604 and others added 8 commits August 17, 2026 05:51
Fold the list/mapping parser INSIDE the existing string-typed-value coercion guard (the `not isinstance(_default_value_for_key(key), str)` block from e4ea0a0) instead of running it unconditionally, so a genuinely string-typed setting whose value merely starts with '[' or '{' is left untouched while non-string keys get JSON/YAML flow literals parsed to real lists/dicts.

Update website/docs/user-guide/configuring-models.md: the `config set only writes scalar values` note is no longer accurate; document the list/mapping support with a quoted example.

Fixes NousResearch#40545 NousResearch#50168
…s with a conservative trigger

Consolidation follow-up on top of NousResearch#59182's cherry-picked base:

- Add _looks_structured_value(): triggers a yaml.safe_load structured
  parse only when the value starts with '[' / '{' or spans multiple
  lines with YAML list-item ('- x') or mapping-entry ('key: v') shaped
  lines. Deliberately avoids the over-broad leading '-' trigger from
  NousResearch#88066 so '-5' and '--flag' stay strings.
- Stays folded INSIDE the string-typed-key guard: keys whose
  DEFAULT_CONFIG type is str (e.g. approvals.mode) are never coerced.
- Tests: multi-line YAML list/dict, string-typed key given '[x]' and
  '-5' stays string, dash-prefixed scalars stay strings, plain
  multi-line prose stays a string, load_config round-trip.
  Sabotage-verified: 7 of the suite's tests fail on main without the fix.
… allowlist matching

command_allowlist glob rules (e.g. 'cargo *') rejected any command whose
quoted arguments contained shell metacharacters — a cargo benchmark
regex filter like '^layer3/write/(a|b)$' disqualified the whole command
even though those characters are literal to the shell.

_has_allowlist_shell_operator is now quote-aware:
- metacharacters inside single/double quotes or behind a backslash are
  treated as literal arguments;
- $ and backtick inside DOUBLE quotes still disqualify (expansion is
  active there);
- quoted/escaped control characters still disqualify when the command
  carries a -c/-e/--command/--eval-style option that hands the payload
  to another interpreter (sh -c '...', git -c alias.x='!...' x);
- unterminated quotes disqualify (shape can't be reasoned about).

Compound commands (unquoted ; & | < > backtick $( newline) are rejected
exactly as before. hermes_cli/approvals_suggest.derive_glob picks up the
same semantics via its existing import.
Port from Kilo-Org/kilocode#12698: report signal-terminated commands with
a human-readable note instead of a bare numeric exit code.

Kilo's fix settles a signal-killed process as the conventional 128+signum
exit code so its bash tool stops hanging. Hermes already produces numeric
codes for signal deaths (subprocess -signum, or the shell's 128+signum),
but the model saw a bare exit_code=-9 or 137 and burned turns
mis-diagnosing (137 = OOM kill being the most common). This adapts the
idea to Hermes' existing exit-code semantics tier:

- _interpret_signal_exit(): maps negative codes (definite signal death)
  and the 128+signum band (hedged with 'usually') to a note naming the
  signal and its likely cause, wired into _interpret_exit_code() ahead of
  the per-command semantics table.
- Curated signal table (SIGKILL/SIGSEGV/SIGTERM/SIGABRT/...) so ambiguous
  application exit codes are never mislabeled; uncurated 128+N codes stay
  silent, SIGINT is excluded (executor's interrupt-marker path owns
  rc=130).
- Notes surface via the existing exit_code_meaning result field.

E2E verified against real SIGSEGV/SIGKILL processes.
…ol-result _meta to the model, minus protocol-reserved keys

MCP tool results carry a server _meta mapping (exposed as .meta by the
Python SDK) alongside structuredContent. Servers return namespaced
machine-readable contracts there (validated payloads, browser-handoff
URLs); Hermes previously dropped the field entirely, so that data was
invisible to the agent.

Now _meta is included in the JSON tool output, after filtering
protocol-reserved keys per the MCP spec's key-name rules: a prefix is
reserved when a modelcontextprotocol or mcp label is followed by at
least one more label (modelcontextprotocol.io/..., tools.mcp.com/...).
Vendor namespaces with a trailing reserved word (com.example.mcp/...)
and unprefixed keys pass through. Non-serializable metadata drops the
extras rather than failing the call.
`check_telegram_requirements()` re-imports python-telegram-bot after a
lazy install and rebinds the module-level aliases that the top-level
`except ImportError` block set to `typing.Any`. TypeHandler was left out
of all three places: the `global` declaration, the
`from telegram.ext import (...)` list, and the assignments.

So whenever the top-level import fails and the deferred path runs, every
other alias is restored and TELEGRAM_AVAILABLE flips to True, while
TypeHandler stays `Any`. Handler registration then raises
`TypeError: Any cannot be instantiated` and the gateway reports:

    [Telegram] Failed to connect to Telegram: Any cannot be instantiated
    Gateway started with no connected platforms

The 22.6 -> 22.8 pin bump named in NousResearch#85272 is the trigger rather than the
defect: it makes the top-level import fail, which is what routes the
module through the deferred path where the omission has always been.
…rom MCP content

Unicode TAG characters (U+E0000-U+E007F) render as nothing in terminals
and chat UIs but are fully visible to LLM tokenizers, making them an
ASCII-smuggling prompt-injection channel for untrusted MCP servers.

- tools/ansi_strip.py: new strip_unicode_tags() with fast path; unlike
  goose we preserve valid emoji tag sequences (U+1F3F4 base + tag spec +
  U+E007F cancel), so regional flags survive.
- tools/mcp_tool.py: applied at every MCP text ingestion point — tool
  result text blocks, embedded resource text, read_resource contents,
  get_prompt message content, and tool descriptions entering the schema.
- tests/tools/test_unicode_tag_strip.py: smuggled-instruction vectors,
  goose's test vector, emoji-tag-sequence preservation, ZWJ untouched.
…ll E2E QA suite

- Add Waves 1-33 capabilities across finance, governance, GTM, SEO, and top-tier web/graphic design.
- Implement Design System Tokens, WebGL Shaders, Motion Architecture, and Skeleton Shimmer Loaders.
- Add WCAG 2.1 AAA Accessible Keyboard Focus Rings, Adaptive Breakpoints, and Fluid Typography Scalers.
- Fix pre-existing unit test timing issues and model catalog mocking in test_models, test_objective_worker, and authority_integrity.
- Create comprehensive E2E functional test suite (test_full_qa_e2e_workflow.py) verified across 381 unit & integration tests.
@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown

Important

Review available on request

  • 🔍 Trigger review

Reviews should be triggered manually for repositories with fewer than 10 stars. Select Trigger review above or comment @coderabbitai review to review the latest changes. For a full review, comment @coderabbitai full review.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 3e8065e4-458c-488e-af31-09ed4d7069ca


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@mikeholownych
mikeholownych merged commit dc6d47c into main Aug 17, 2026
36 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants