Skip to content

1MSG-156: enforce strict CLI quality and architecture gates - #5

Draft
alibek-seksenali wants to merge 9 commits into
mainfrom
codex/1msg-156-quality-standard
Draft

alibek-seksenali wants to merge 9 commits into
mainfrom
codex/1msg-156-quality-standard

Conversation

@alibek-seksenali

@alibek-seksenali alibek-seksenali commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Adopt the full 1MSG-156 TypeScript quality profile with strict indexed/optional-property checks, typed ESLint, dependency boundaries, production/full Knip graphs, duplication and complexity ratchets, documented changed functions, frozen installs and a fail-closed required CI aggregate.

Commander actions now preserve typed argument tuples through an explicit adapter. Flow command registration, sticker sending and channel inspection have their own modules; shared channel-status output removes duplicate behavior. Request builders omit absent optional fields rather than sending undefined values.

Historical debt is measured against the adoption base and recorded per finding with owner, task link and expiry; new or larger findings fail. Sealed shared preset 1.0.11 has integrity checks, and negative fixtures exercise actual typed-lint and cycle detection.

Validation: strict typecheck, static/typed lint, dependency-cruiser, both Knip graphs, production/full duplication checks, complexity ratchet, behavioral tests, build, packed CLI --help smoke, formatting and negative fixtures all pass locally. GitHub Actions will independently run the required aggregate. No release or merge was performed.

Task: https://plane.1msg.io/1msg/browse/1MSG-156/

Current source-coverage checkpoint ca75cc4c9a5c918a10d482e716075d772057d65e enforces actual static and typed lint in pre-commit for JS/JSX/MJS/CJS and TS/TSX/MTS/CTS, with strict source-program membership for runtime and tooling. Real disposable commits prove intended diagnostics and successful corrected commits. Both Knip graphs inventory new extensions and distinguish runtime reachable only from tests. Dependency-cruiser resolves the same extensions.

Local validation passed: all applicable formatting/static/typed/typecheck/architecture/complexity/Knip/duplicate gates, actual hook fixtures, behavioral tests, build and packed-entrypoint smoke. Historical allowances and metadata are unchanged. Sealed preset 1.0.11 retains its prior 52-test proof. Hosted Quality and its required aggregate passed on this commit.

Draft PR only; no merge, release, publication or deployment. Server-side required-check enforcement is separate from aggregate success.

Latest contract checkpoint e8db3e30590b4a6dfab558371a64f088dd225543 runs the previously producer-only operation/RFC tests in a standalone checkout. The public contract and RFC are pinned to producer commit 888ee40a635ab19dbff4c101b8d4329790c7254f with byte checksums; missing/altered inputs fail. All 8 suites / 107 tests pass without skips. Static/typed/strict/compiler, real Knip extension/test-only fixtures, maintainability/clones and source guards pass. The production graph now omits the dedicated test directory while the full graph retains it; one obsolete test-helper allowance was removed and all remaining baseline metadata is unchanged. The actual hook and source hashes pass. Hosted CI is pending for this new SHA.

Latest hosted verification

The required quality aggregate passed on current commit e8db3e30590b4a6dfab558371a64f088dd225543: GitHub Actions. This is validation of the declared repository scope and existing debt ratchets; it does not mean that historical debt is zero. The PR remains open and unmerged.

Suppression scanner and hook correction

Commit 52818ad47e50af251efb219a3c35de24c8198e04 adopts sealed preset 1.0.12. Parsed template/regex/JSX tokens prevent false directive reports and preserve real suppression checks within expressions and after templates. All 57 shared regression tests pass, including the real guard CLI and staged-file coverage tests. The complete seal was verified and historical baseline files were unchanged.
The actual installed pre-commit fixture passes: invalid authored extensions are rejected and corrected sources are accepted. A coverage preflight validates declared generated files and the sealed preset before ESLint suppresses ignored-file warnings; arbitrary authored ignores still fail.
The real commit hook passed without altering verified source hashes. Hosted checks must pass on this commit; earlier successes do not certify this new head. Existing incomplete adoption and addressed exceptions remain as documented.

Release readiness — 2026-10-15

Fresh tarball installs and executable startup pass with engine-strict on Node 18/20/22/24. Original >=18 engine contract restored; Node 24 remains the quality/build toolchain.

No merge, deployment, package publication, release tag or production configuration change was performed. This does not close remaining historical quality/architecture debt.

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.

1 participant