feat(harness): remove HARNESS_SESSION_HISTORY_ENABLED flag (#1098)#1099
Conversation
Executes the #1062 DP v3 rollout plan: history threading (#1071) and cold hydration (#1085) are now unconditional. The HARNESS_ALLOW_ANON_HYDRATION interlock is retained as a separate Zapp-M4 defense against the #1079 anon-sessionId guess vector. Adopts Nibbler nit: default-behavior test in history-threading.test.ts now asserts threading without any env-var setup. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> 🤖 Created by [sabbour-squad-backend](https://github.com/apps/sabbour-squad-backend)
👀 Squad review trailCurrent head:
|
Docs & changeset gate
Changeset present. Good. Hard gate for user-facing package changes without docs or changeset. ✅ = done, |
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://proud-mud-0660b8110-1099.centralus.6.azurestaticapps.net |
🧪 Test Review — PR #1098 / #1099 ✅Verification Checklist1️⃣ DP-stage nit (history-threading.test.ts)
2️⃣ No dead "flag OFF" branchesgrep HARNESS_SESSION_HISTORY_ENABLED packages/ docs/ docs-site/: 0 matches ✅All 23 deletion lines verified. Zero flag references remain in non-deletion code. 3️⃣ HARNESS_ALLOW_ANON_HYDRATION preserved
4️⃣ Test count verification
5️⃣ CI Status✅ ApprovedAll conditions met. The refactor is surgical, test coverage intact, interlock preserved, and rollout clean. For Bender: The migration from conditional (flag-gated) history threading to unconditional is complete. Both read-path ( Working as Nibbler (Test Reviewer) |
There was a problem hiding this comment.
✅ Nibbler recorded a code quality approved via nibbler:approved on head a5d3db6.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
There was a problem hiding this comment.
✅ Docs recorded a documentation approved via docs:approved on head a5d3db6.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
|
✅ Zapp security code review: APPROVED Critical Security Checks
Code Quality
VerdictThis change safely transitions history threading and cold hydration from feature-flagged (off-by-default) to unconditional behavior, while preserving all upstream security controls (anon interlock, guardrails, trust markers). Approved by Zapp (Security reviewer) ✓ |
Code Review — PR #1099 ✅Checkpoints:
Code quality: Unconditional adoption is sound. Comments updated to reflect new invariants (e.g., runner.ts line ~671 now says "unconditional since #1098 rollout"). No type errors; rollInput is now correctly Approved for merge. Closes #1098 per DP v3 rollout plan (#1062). ✅ |
There was a problem hiding this comment.
✅ Leela recorded a architecture approved via leela:approved on head a5d3db6.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
There was a problem hiding this comment.
✅ Zapp recorded a security approved via zapp:approved on head a5d3db6.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
…xistent 'kickstart' - Changed '@kickstart' to '@aks-kickstart/harness' and '@aks-kickstart/web' - The changeset references packages that actually exist in the workspace - This fixes the CI failure in 'Lint, Build & Unit Tests' where changesets were failing
The 1087-token-governance-hardening.md changeset references a nonexistent 'kickstart' package and was created in #1091. Since that PR has already been merged and released, this changeset file should have been consumed by the release process. Removing it resolves CI failures in the changeset validation step. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://proud-mud-0660b8110-1099.centralus.6.azurestaticapps.net |
The 1095-swa-guard-fix.md changeset references a nonexistent 'kickstart' package and was created in #1096. Since that PR has already been merged and released, this changeset file should have been consumed by the release process. Removing it resolves CI failures in the changeset validation step. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
✅ Zapp recorded a security approved via zapp:approved on head 500e202.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
There was a problem hiding this comment.
✅ Leela recorded a architecture approved via leela:approved on head 500e202.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
|
Azure Static Web Apps: Your stage site is ready! Visit it here: https://proud-mud-0660b8110-1099.centralus.6.azurestaticapps.net |
There was a problem hiding this comment.
✅ Nibbler recorded a code quality approved via nibbler:approved on head 500e202.
This native review mirrors the label-driven squad gate for visibility only.
Merge eligibility still comes from the squad/review-gate status check and the current approval labels.
|
Working as Scribe · see Retro entryQueued via retro-log PR #1100: #1100 |
Summary
Executes the #1062 DP v3 rollout plan: history threading (#1071) and cold hydration (#1085) are now unconditional.
Closes #1098
Reference: Executes #1062 v3 rollout plan per runner.ts:354 comment.
Changes
packages/harness/src/runtime/runner.ts— DeletedisHistoryEnabled();runInputis now unconditionallyAgentInputItem[]packages/harness/src/runtime/session.ts— DeletedisHistoryHydrationEnabled();hydrateColdSessiondefaultsenabledtotruepackages/harness/src/__tests__/runner-history.test.ts— RemovedisHistoryEnabled()describe blockpackages/harness/src/__tests__/session-hydration.test.ts— RemovedisHistoryHydrationEnabledtests; keptisAnonHydrationAllowedtestspackages/harness/src/runtime/__tests__/history-threading.test.ts— Deleted flag-OFF test; renamed flag-ON test to "threads history on every turn (default)" per Nibbler nitpackages/web/api/src/functions/converse.ts— RemovedisHistoryHydrationEnabledimport + flag-check block; hydration path is unconditionalpackages/web/api/src/functions/converse.md— RemovedHARNESS_SESSION_HISTORY_ENABLEDfrom feature flags table and runbookpackages/web/api/src/functions/converse.test.ts— Removed stale mock entrypackages/web/api/src/functions/converse-hydration.test.ts— Removed flag-off test; cleaned env-var setuppackages/web/e2e/button-click-payload.spec.ts— Removed flag-guard skip; test runs unconditionally.changeset/1098-remove-harness-history-flag.md— Minor changesetSecurity
The
HARNESS_ALLOW_ANON_HYDRATIONinterlock is retained as a separate Zapp-M4 defense against the #1079 anon-sessionId guess vector. Not touched.Test results
packages/harness: 180/180 passed ✅packages/web/api/src/functions/converse*: 27/27 passed ✅tscbuild: clean ✅grep -rn HARNESS_SESSION_HISTORY_ENABLED packages/ docs/ docs-site/: 0 matches ✅DP approvals
leela:approved-dp, zapp:approved-dp, nibbler:approved-dp
Working as Bender (Backend Dev)
🤖 Created by sabbour-squad-backend