pomaster 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -10
- package/catalog/archetypes/archetype.frontend.error_taxonomy.json +13 -5
- package/catalog/archetypes/archetype.frontend.feature_oriented.json +1 -1
- package/catalog/archetypes/archetype.state.async_command.json +4 -4
- package/catalog/catalog-lock.draft.json +1120 -104
- package/catalog/gates/gate.be.api.contract_checks.json +2 -1
- package/catalog/gates/gate.be.chg.contract_change_checks.json +2 -1
- package/catalog/gates/gate.chg.prechange_checks.json +2 -1
- package/catalog/gates/gate.web.api.request_checks.json +2 -1
- package/catalog/gates/gate.web.grid.checks.json +2 -1
- package/catalog/knowledge/knowledge.api.example_stable_error_code.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_compat_window.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_prop_migration.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.field_drift_no_contract.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.per_page_http_client.json +2 -1
- package/catalog/knowledge/knowledge.fp.be.contract_drift.json +2 -1
- package/catalog/knowledge/knowledge.fp.chg.page_local_padding.json +2 -1
- package/catalog/knowledge/knowledge.fp.grid.global_td_width.json +2 -1
- package/catalog/knowledge/knowledge.web.api.example_get_entity_list.json +2 -1
- package/catalog/knowledge/knowledge.web.grid.example_column_preset.json +2 -1
- package/catalog/policies/authority.be.api_contract_ownership.json +2 -1
- package/catalog/policies/authority.be.contract_ownership.json +2 -1
- package/catalog/policies/authority.chg.change_owners.json +2 -1
- package/catalog/policies/authority.web.api.request_owners.json +2 -1
- package/catalog/policies/authority.web.grid.ownership.json +2 -1
- package/catalog/policies/policy.ai.change_plan_first.json +91 -0
- package/catalog/policies/policy.ai.fact_inference_separation.json +91 -0
- package/catalog/policies/policy.ai.read_search_verify_before_write.json +92 -0
- package/catalog/policies/policy.ai.rule_relaxation_approval.json +91 -0
- package/catalog/policies/policy.api.backward_compat_defaults.json +2 -1
- package/catalog/policies/policy.api.contract_impl_consistency.json +2 -1
- package/catalog/policies/policy.api.no_informal_contract.json +2 -1
- package/catalog/policies/policy.arch.adr_immutable_history.json +91 -0
- package/catalog/policies/policy.arch.decision_tradeoff_record.json +2 -1
- package/catalog/policies/policy.arch.no_convenience_over_boundary.json +93 -0
- package/catalog/policies/policy.arch.prefer_verifiable_option.json +92 -0
- package/catalog/policies/policy.authz.no_gating_proxy_trust.json +99 -0
- package/catalog/policies/policy.authz.permission_scope_expansion_gate.json +99 -0
- package/catalog/policies/policy.authz.server_five_factor_verification.json +101 -0
- package/catalog/policies/policy.be.conc.prefer_db_constraints.json +97 -0
- package/catalog/policies/policy.be.db.expand_migrate_contract.json +97 -0
- package/catalog/policies/policy.be.idem.key_payload_conflict.json +97 -0
- package/catalog/policies/policy.be.model.single_boundary_conversion.json +97 -0
- package/catalog/policies/policy.be.sql.index_for_known_queries.json +97 -0
- package/catalog/policies/policy.be.state.single_rule_source.json +97 -0
- package/catalog/policies/policy.be.txn.short_locks_compensation.json +96 -0
- package/catalog/policies/policy.bound.search_first_entry_only.json +91 -0
- package/catalog/policies/policy.boundary.validate_in_encode_out.json +92 -0
- package/catalog/policies/policy.cache.failure_mode_guards.json +93 -0
- package/catalog/policies/policy.cache.lifecycle_definition.json +2 -1
- package/catalog/policies/policy.cache.schema_versioning.json +91 -0
- package/catalog/policies/policy.cfg.config_attribute_completeness.json +95 -0
- package/catalog/policies/policy.cfg.key_rename_dual_read.json +92 -0
- package/catalog/policies/policy.cfg.no_secret_dispersal.json +90 -0
- package/catalog/policies/policy.cfg.production_safe_defaults.json +92 -0
- package/catalog/policies/policy.cfg.schema_backed_config.json +92 -0
- package/catalog/policies/policy.chg.affect_templates.json +2 -1
- package/catalog/policies/policy.chg.breaking_versioning.json +2 -1
- package/catalog/policies/policy.chg.compat_migration_rollback.json +2 -1
- package/catalog/policies/policy.chg.deprecate_before_delete.json +2 -1
- package/catalog/policies/policy.chg.fix_at_root_cause_level.json +2 -1
- package/catalog/policies/policy.chg.no_unrelated_changes.json +91 -0
- package/catalog/policies/policy.chg.observable_evolution.json +2 -1
- package/catalog/policies/policy.chg.prechange_consumer_scan.json +2 -1
- package/catalog/policies/policy.chg.staged_rollout.json +2 -1
- package/catalog/policies/policy.chg.sync_contract_docs_tests.json +2 -1
- package/catalog/policies/policy.conflict.priority_ladder.json +2 -1
- package/catalog/policies/policy.contract.no_invented_facts.json +93 -0
- package/catalog/policies/policy.dep.admission_six_dimension_check.json +2 -1
- package/catalog/policies/policy.dep.build_path_supply_chain.json +93 -0
- package/catalog/policies/policy.dep.change_surface_review.json +2 -1
- package/catalog/policies/policy.dep.introduction_review.json +2 -1
- package/catalog/policies/policy.dep.no_untrusted_source_no_lock_bypass.json +92 -0
- package/catalog/policies/policy.dep.time_boxed_urgent_exception.json +91 -0
- package/catalog/policies/policy.deploy.no_dev_env_as_production_fact.json +91 -0
- package/catalog/policies/policy.deploy.operational_capabilities.json +93 -0
- package/catalog/policies/policy.deploy.runtime_fact_record.json +97 -0
- package/catalog/policies/policy.derived.single_implementation.json +2 -1
- package/catalog/policies/policy.err.failure_five_part_mapping.json +101 -0
- package/catalog/policies/policy.err.no_internal_detail_exposure.json +97 -0
- package/catalog/policies/policy.err.published_code_immutable.json +98 -0
- package/catalog/policies/policy.evid.acceptance_binds_verifiable_evidence.json +92 -0
- package/catalog/policies/policy.evid.no_silent_gate_removal.json +90 -0
- package/catalog/policies/policy.evid.no_unverifiable_pass.json +92 -0
- package/catalog/policies/policy.flag.cleanup_after_full_rollout.json +94 -0
- package/catalog/policies/policy.flag.consistent_off_state.json +92 -0
- package/catalog/policies/policy.flag.kill_switch.json +91 -0
- package/catalog/policies/policy.flag.lifecycle_metadata.json +93 -0
- package/catalog/policies/policy.flag.not_a_permission.json +92 -0
- package/catalog/policies/policy.gate.p0_non_bypassable.json +92 -0
- package/catalog/policies/policy.gate.risk_factors_confirmed.json +93 -0
- package/catalog/policies/policy.guard.no_check_weakening.json +92 -0
- package/catalog/policies/policy.integration.call_definition_minimum.json +95 -0
- package/catalog/policies/policy.integration.fault_containment.json +94 -0
- package/catalog/policies/policy.job.lifecycle_definition.json +96 -0
- package/catalog/policies/policy.job.no_unmanaged_execution.json +92 -0
- package/catalog/policies/policy.job.operational_features.json +93 -0
- package/catalog/policies/policy.obs.actionable_signals.json +93 -0
- package/catalog/policies/policy.obs.alert_with_owner.json +91 -0
- package/catalog/policies/policy.obs.context_field_baseline.json +91 -0
- package/catalog/policies/policy.obs.correlation_context_minimum.json +2 -1
- package/catalog/policies/policy.obs.no_sensitive_or_unbounded_logging.json +92 -0
- package/catalog/policies/policy.obs.no_sensitive_raw_values.json +93 -0
- package/catalog/policies/policy.obs.rum_dimension_whitelist.json +2 -1
- package/catalog/policies/policy.obs.signal_change_impact.json +91 -0
- package/catalog/policies/policy.obs.source_map_access_control.json +92 -0
- package/catalog/policies/policy.obs.telemetry_lifecycle_declared.json +93 -0
- package/catalog/policies/policy.obs.trace_correlation.json +91 -0
- package/catalog/policies/policy.perf.budget_change_retest.json +91 -0
- package/catalog/policies/policy.perf.evidence_binding.json +95 -0
- package/catalog/policies/policy.perf.observation_dimensions.json +94 -0
- package/catalog/policies/policy.proc.checklist_change_policy.json +91 -0
- package/catalog/policies/policy.proc.pre_code_declaration.json +2 -1
- package/catalog/policies/policy.proc.scope_drift_reclassify.json +91 -0
- package/catalog/policies/policy.prv.processing_scope_re_review.json +97 -0
- package/catalog/policies/policy.prv.sensitive_data_six_facts.json +102 -0
- package/catalog/policies/policy.registry.human_fields_validated_decorrelated.json +93 -0
- package/catalog/policies/policy.rel.no_irreversible_unmonitored_full_release.json +91 -0
- package/catalog/policies/policy.rel.observability_before_ship.json +91 -0
- package/catalog/policies/policy.rel.pre_release_confirmation.json +2 -1
- package/catalog/policies/policy.rel.process_change_needs_drill_audit.json +91 -0
- package/catalog/policies/policy.rel.traceable_build.json +93 -0
- package/catalog/policies/policy.role.domain_decision_authority.json +2 -1
- package/catalog/policies/policy.role.human_signs_for_ai.json +93 -0
- package/catalog/policies/policy.sec.authn_policy_unified.json +91 -0
- package/catalog/policies/policy.sec.no_client_side_trust.json +92 -0
- package/catalog/policies/policy.sec.no_longterm_security_disable.json +91 -0
- package/catalog/policies/policy.sec.no_script_readable_credentials.json +91 -0
- package/catalog/policies/policy.sec.no_secrets_in_client_surface.json +91 -0
- package/catalog/policies/policy.sec.relaxation_approval.json +92 -0
- package/catalog/policies/policy.sec.security_relaxation_gate.json +92 -0
- package/catalog/policies/policy.sec.third_party_execution_register.json +2 -1
- package/catalog/policies/policy.sec.trust_boundary_enforcement.json +93 -0
- package/catalog/policies/policy.sec.upload_download_server_recheck.json +91 -0
- package/catalog/policies/policy.sec.url_source_allowlist.json +91 -0
- package/catalog/policies/policy.spec.admission_criteria.json +2 -1
- package/catalog/policies/policy.spec.derived_view_regeneration.json +2 -1
- package/catalog/policies/policy.spec.draft_not_baseline.json +2 -1
- package/catalog/policies/policy.spec.family_conflict_precedence.json +93 -0
- package/catalog/policies/policy.spec.file_structure_contract.json +2 -1
- package/catalog/policies/policy.spec.freeze_before_use.json +93 -0
- package/catalog/policies/policy.spec.metadata_required.json +2 -1
- package/catalog/policies/policy.spec.post_dev_backfill_classify.json +2 -1
- package/catalog/policies/policy.spec.primary_source_basis.json +93 -0
- package/catalog/policies/policy.spec.procedural_record_not_surrogate.json +2 -1
- package/catalog/policies/policy.spec.semantic_identity.json +2 -1
- package/catalog/policies/policy.spec.unresolved_ledger_gate.json +2 -1
- package/catalog/policies/policy.stack.derived_store_not_authority.json +93 -0
- package/catalog/policies/policy.stack.dual_web_stack_boundary.json +93 -0
- package/catalog/policies/policy.stack.entry_chain_recorded.json +93 -0
- package/catalog/policies/policy.stack.entry_limits_aligned.json +94 -0
- package/catalog/policies/policy.stack.local_form_not_prod_fact.json +93 -0
- package/catalog/policies/policy.stack.multi_datastore_ownership.json +93 -0
- package/catalog/policies/policy.stack.no_implicit_selection.json +2 -1
- package/catalog/policies/policy.stack.persistence_coexistence_scope.json +93 -0
- package/catalog/policies/policy.stack.toolchain_versions_pinned.json +95 -0
- package/catalog/policies/policy.stack.upgrade_compat_verified.json +93 -0
- package/catalog/policies/policy.struct.module_entry_dependency_declared.json +92 -0
- package/catalog/policies/policy.struct.no_unexplained_top_level_dir.json +91 -0
- package/catalog/policies/policy.struct.reuse_proven_structure.json +91 -0
- package/catalog/policies/policy.test.control_nondeterminism_keep_diagnosis.json +91 -0
- package/catalog/policies/policy.test.isolation_and_cleanup.json +93 -0
- package/catalog/policies/policy.test.no_synthetic_stability.json +92 -0
- package/catalog/policies/policy.test.pyramid_and_ci_matrix.json +92 -0
- package/catalog/policies/policy.test.removal_justification.json +91 -0
- package/catalog/policies/policy.test.removal_needs_substitute_evidence.json +91 -0
- package/catalog/policies/policy.test.risk_driven_plan.json +92 -0
- package/catalog/policies/policy.test.stable_observable_assertions.json +92 -0
- package/catalog/policies/policy.tool.discoverable_toolchain.json +92 -0
- package/catalog/policies/policy.tool.no_hand_edit_generated_no_ci_drift.json +91 -0
- package/catalog/policies/policy.tool.no_vendored_body_edits.json +94 -0
- package/catalog/policies/policy.tool.scoped_scan_boundary.json +2 -1
- package/catalog/policies/policy.tool.upgrade_verify_lock_rollback.json +92 -0
- package/catalog/policies/policy.web.api.auth_app_client_split.json +2 -1
- package/catalog/policies/policy.web.api.client_change_impact.json +2 -1
- package/catalog/policies/policy.web.api.domain_api_only.json +2 -1
- package/catalog/policies/policy.web.api.error_normalization.json +2 -1
- package/catalog/policies/policy.web.api.generated_client.json +2 -1
- package/catalog/policies/policy.web.api.late_result_guard.json +2 -1
- package/catalog/policies/policy.web.api.mutation_idempotency.json +2 -1
- package/catalog/policies/policy.web.api.no_network_optimism.json +2 -1
- package/catalog/policies/policy.web.api.query_cancel_stale_drop.json +2 -1
- package/catalog/policies/policy.web.api.request_infrastructure.json +2 -1
- package/catalog/policies/policy.web.api.retry_discipline.json +2 -1
- package/catalog/policies/policy.web.api.session_recovery_split.json +2 -1
- package/catalog/policies/policy.web.api.single_http_client.json +2 -1
- package/catalog/policies/policy.web.api.single_loading_source.json +2 -1
- package/catalog/policies/policy.web.api.transport_vs_business.json +2 -1
- package/catalog/policies/policy.web.api.trusted_endpoint_source.json +2 -1
- package/catalog/policies/policy.web.api.typed_domain_naming.json +2 -1
- package/catalog/policies/policy.web.arch.layer_isolation.json +2 -1
- package/catalog/policies/policy.web.arch.naming_conventions.json +2 -1
- package/catalog/policies/policy.web.arch.public_api_barrel.json +2 -1
- package/catalog/policies/policy.web.chg.controlled_change_triggers.json +2 -1
- package/catalog/policies/policy.web.comp.no_trivial_or_god_component.json +91 -0
- package/catalog/policies/policy.web.comp.public_contract_completeness.json +93 -0
- package/catalog/policies/policy.web.copy.action_object_clarity.json +92 -0
- package/catalog/policies/policy.web.copy.enumerable_placement.json +91 -0
- package/catalog/policies/policy.web.copy.error_next_step.json +92 -0
- package/catalog/policies/policy.web.copy.suppression_ledger_discipline.json +2 -1
- package/catalog/policies/policy.web.grid.column_schema_fields.json +2 -1
- package/catalog/policies/policy.web.grid.config_isolation.json +2 -1
- package/catalog/policies/policy.web.grid.freeze_key_columns.json +2 -1
- package/catalog/policies/policy.web.grid.interaction_registry.json +2 -1
- package/catalog/policies/policy.web.grid.keyboard_clipboard.json +2 -1
- package/catalog/policies/policy.web.grid.schema_driven_shell.json +2 -1
- package/catalog/policies/policy.web.grid.schema_versioning.json +2 -1
- package/catalog/policies/policy.web.grid.server_ops_virtualization.json +2 -1
- package/catalog/policies/policy.web.grid.shell_change_matrix.json +2 -1
- package/catalog/policies/policy.web.grid.width_fix_ladder.json +2 -1
- package/catalog/policies/policy.web.handoff.state_matrix_full.json +94 -0
- package/catalog/policies/policy.web.i18n.copy_key_discipline.json +92 -0
- package/catalog/policies/policy.web.i18n.raw_value_for_compute.json +91 -0
- package/catalog/policies/policy.web.page.region_consistency.json +93 -0
- package/catalog/policies/policy.web.perf.budget_skeleton.json +2 -1
- package/catalog/policies/policy.web.style.ownership_matrix.json +2 -1
- package/catalog/policies/policy.web.track.attempt_result_correlation.json +91 -0
- package/catalog/policies/policy.web.track.consent_lifecycle.json +2 -1
- package/catalog/policies/policy.web.track.no_synthetic_actions.json +92 -0
- package/catalog/policies/policy.web.track.privacy_default_deny.json +2 -1
- package/catalog/policies/policy.web.track.stable_event_keys.json +2 -1
- package/catalog/policies/policy.web.track.typed_client_validation.json +91 -0
- package/catalog/policies/policy.web.uiux.provider_evidence_not_business_truth.json +2 -1
- package/catalog/policies/policy.wf.no_planned_as_verified.json +91 -0
- package/catalog/policies/policy.wf.task_facts_preconfirm.json +94 -0
- package/catalog/policies/profile.baseline.java_enterprise_default.json +96 -0
- package/catalog/sensors/sensor.browser.deterministic.json +2 -1
- package/catalog/sensors/sensor.browser.interactive.json +2 -1
- package/catalog/sensors/sensor.build.static.json +2 -1
- package/catalog/sensors/sensor.contract.conformance.json +2 -1
- package/catalog/sensors/sensor.performance.budget.json +2 -1
- package/catalog/sensors/sensor.production.metric.json +2 -1
- package/catalog/tools/seed_b6b_frontend.py +1424 -0
- package/catalog/tools/seed_b6c_backend.py +1495 -0
- package/catalog/tools/seed_b6d_baseline.py +620 -0
- package/catalog/tools/seed_b6e_evidence.py +1305 -0
- package/catalog/tools/seed_d3_review.py +1105 -0
- package/catalog/tools/seed_v06_batch2_materials.py +27 -18
- package/dist/bin.js +23026 -16635
- package/package.json +2 -1
- package/seeds/baseline/backend/api-contract.md +26 -0
- package/seeds/baseline/backend/architecture.md +31 -0
- package/seeds/baseline/backend/data-access.md +31 -0
- package/seeds/baseline/backend/directory-structure.md +11 -0
- package/seeds/baseline/backend/integration-runtime.md +21 -0
- package/seeds/baseline/backend/quality.md +31 -0
- package/seeds/baseline/backend/stack.yaml +13 -0
- package/seeds/baseline/backend/transaction-concurrency.md +26 -0
- package/seeds/baseline/data/lineage.md +11 -0
- package/seeds/baseline/data/migration.md +11 -0
- package/seeds/baseline/data/model.md +31 -0
- package/seeds/baseline/data/precision-units.md +31 -0
- package/seeds/baseline/data/quality.md +31 -0
- package/seeds/baseline/frontend/api-and-error.md +21 -0
- package/seeds/baseline/frontend/architecture.md +26 -0
- package/seeds/baseline/frontend/design-system.md +21 -0
- package/seeds/baseline/frontend/directory-structure.md +16 -0
- package/seeds/baseline/frontend/quality.md +26 -0
- package/seeds/baseline/frontend/stack.yaml +17 -0
- package/seeds/baseline/frontend/state-and-data.md +26 -0
- package/seeds/baseline/manifest.yaml +32 -0
- package/seeds/baseline/platform/delivery.md +36 -0
- package/seeds/baseline/platform/environment.md +11 -0
- package/seeds/baseline/platform/observability.md +31 -0
- package/seeds/baseline/platform/security.md +26 -0
- package/seeds/manifest.json +2006 -0
- package/seeds/specs/evidence/accessibility.md +89 -0
- package/seeds/specs/evidence/architecture.md +89 -0
- package/seeds/specs/evidence/browser-e2e.md +91 -0
- package/seeds/specs/evidence/build.md +91 -0
- package/seeds/specs/evidence/business-acceptance.md +89 -0
- package/seeds/specs/evidence/complexity-crap.md +97 -0
- package/seeds/specs/evidence/contract.md +89 -0
- package/seeds/specs/evidence/coverage.md +91 -0
- package/seeds/specs/evidence/data-migration.md +91 -0
- package/seeds/specs/evidence/dead-code-duplicate.md +89 -0
- package/seeds/specs/evidence/dependency-supply-chain.md +89 -0
- package/seeds/specs/evidence/index.md +55 -0
- package/seeds/specs/evidence/mutation.md +89 -0
- package/seeds/specs/evidence/performance.md +89 -0
- package/seeds/specs/evidence/release.md +91 -0
- package/seeds/specs/evidence/runtime-observability.md +91 -0
- package/seeds/specs/evidence/security.md +89 -0
- package/seeds/specs/evidence/typecheck-lint.md +91 -0
- package/seeds/specs/evidence/unit-component-integration.md +91 -0
- package/seeds/specs/evidence/visual-regression.md +89 -0
- package/seeds/specs/hard/backend/01-architecture-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/02-project-structure-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/03-directory-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/04-layering-architecture-protocol.md +68 -0
- package/seeds/specs/hard/backend/05-task-workflow-protocol.md +68 -0
- package/seeds/specs/hard/backend/06-ai-generated-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/07-evidence-acceptance-protocol.md +68 -0
- package/seeds/specs/hard/backend/08-contract-change-protocol.md +68 -0
- package/seeds/specs/hard/backend/09-role-responsibility-protocol.md +68 -0
- package/seeds/specs/hard/backend/10-security-protocol.md +68 -0
- package/seeds/specs/hard/backend/11-environment-configuration-protocol.md +67 -0
- package/seeds/specs/hard/backend/12-api-contract-protocol.md +68 -0
- package/seeds/specs/hard/backend/13-privacy-data-lifecycle-protocol.md +68 -0
- package/seeds/specs/hard/backend/14-business-rules-state-protocol.md +68 -0
- package/seeds/specs/hard/backend/15-data-model-protocol.md +68 -0
- package/seeds/specs/hard/backend/16-error-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/17-permission-authorization-protocol.md +68 -0
- package/seeds/specs/hard/backend/18-database-schema-migration-protocol.md +68 -0
- package/seeds/specs/hard/backend/19-query-index-sql-protocol.md +68 -0
- package/seeds/specs/hard/backend/20-transaction-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/21-concurrency-locking-protocol.md +68 -0
- package/seeds/specs/hard/backend/22-idempotency-protocol.md +68 -0
- package/seeds/specs/hard/backend/23-cache-redis-consistency-protocol.md +68 -0
- package/seeds/specs/hard/backend/24-external-integration-resilience-protocol.md +68 -0
- package/seeds/specs/hard/backend/25-async-job-scheduler-protocol.md +68 -0
- package/seeds/specs/hard/backend/26-engineering-tooling-protocol.md +68 -0
- package/seeds/specs/hard/backend/27-dependency-supply-chain-protocol.md +68 -0
- package/seeds/specs/hard/backend/28-testing-protocol.md +68 -0
- package/seeds/specs/hard/backend/29-observability-logging-tracing-protocol.md +68 -0
- package/seeds/specs/hard/backend/30-performance-capacity-protocol.md +68 -0
- package/seeds/specs/hard/backend/31-runtime-deployment-protocol.md +68 -0
- package/seeds/specs/hard/backend/32-release-versioning-rollback-protocol.md +68 -0
- package/seeds/specs/hard/backend/index.md +177 -0
- package/seeds/specs/hard/frontend/01-development-checklist-protocol.md +86 -0
- package/seeds/specs/hard/frontend/02-ai-generated-code-protocol.md +82 -0
- package/seeds/specs/hard/frontend/03-acceptance-gate-protocol.md +86 -0
- package/seeds/specs/hard/frontend/04-security-protocol.md +283 -0
- package/seeds/specs/hard/frontend/05-environment-configuration-protocol.md +80 -0
- package/seeds/specs/hard/frontend/06-change-governance-protocol.md +90 -0
- package/seeds/specs/hard/frontend/07-frontend-backend-communication-protocol.md +219 -0
- package/seeds/specs/hard/frontend/08-role-responsibility-protocol.md +80 -0
- package/seeds/specs/hard/frontend/09-module-boundary-protocol.md +81 -0
- package/seeds/specs/hard/frontend/10-engineering-tooling-protocol.md +89 -0
- package/seeds/specs/hard/frontend/11-dependency-package-management-protocol.md +87 -0
- package/seeds/specs/hard/frontend/12-business-rules-protocol.md +79 -0
- package/seeds/specs/hard/frontend/13-monetary-precision-protocol.md +81 -0
- package/seeds/specs/hard/frontend/14-data-model-protocol.md +85 -0
- package/seeds/specs/hard/frontend/15-request-api-protocol.md +87 -0
- package/seeds/specs/hard/frontend/16-error-handling-protocol.md +79 -0
- package/seeds/specs/hard/frontend/17-permission-protocol.md +79 -0
- package/seeds/specs/hard/frontend/18-state-management-protocol.md +88 -0
- package/seeds/specs/hard/frontend/19-cache-protocol.md +79 -0
- package/seeds/specs/hard/frontend/20-testing-protocol.md +88 -0
- package/seeds/specs/hard/frontend/21-design-system-protocol.md +79 -0
- package/seeds/specs/hard/frontend/22-theme-protocol.md +79 -0
- package/seeds/specs/hard/frontend/23-accessibility-protocol.md +189 -0
- package/seeds/specs/hard/frontend/24-component-protocol.md +80 -0
- package/seeds/specs/hard/frontend/25-page-structure-protocol.md +79 -0
- package/seeds/specs/hard/frontend/26-style-layout-protocol.md +80 -0
- package/seeds/specs/hard/frontend/27-rendering-state-protocol.md +81 -0
- package/seeds/specs/hard/frontend/28-form-protocol.md +88 -0
- package/seeds/specs/hard/frontend/29-routing-url-protocol.md +79 -0
- package/seeds/specs/hard/frontend/30-data-grid-protocol.md +83 -0
- package/seeds/specs/hard/frontend/31-performance-protocol.md +137 -0
- package/seeds/specs/hard/frontend/32-file-import-export-protocol.md +80 -0
- package/seeds/specs/hard/frontend/33-release-versioning-protocol.md +79 -0
- package/seeds/specs/hard/frontend/34-monitoring-logging-protocol.md +128 -0
- package/seeds/specs/hard/frontend/35-mock-protocol.md +97 -0
- package/seeds/specs/hard/frontend/36-feature-flag-protocol.md +79 -0
- package/seeds/specs/hard/frontend/37-browser-device-compatibility-protocol.md +83 -0
- package/seeds/specs/hard/frontend/38-internationalization-protocol.md +243 -0
- package/seeds/specs/hard/frontend/39-copywriting-protocol.md +79 -0
- package/seeds/specs/hard/frontend/40-analytics-protocol.md +98 -0
- package/seeds/specs/hard/frontend/41-design-handoff-protocol.md +80 -0
- package/seeds/specs/hard/frontend/42-browser-runtime-lifecycle-protocol.md +86 -0
- package/seeds/specs/hard/frontend/43-time-temporal-protocol.md +86 -0
- package/seeds/specs/hard/frontend/44-privacy-data-lifecycle-protocol.md +87 -0
- package/seeds/specs/hard/frontend/45-browser-storage-protocol.md +87 -0
- package/seeds/specs/hard/frontend/index.md +308 -0
- package/seeds/specs/hard/stacks/java/index.md +20 -0
- package/seeds/specs/hard/stacks/java/java-language-overlay.md +35 -0
- package/seeds/specs/hard/stacks/jpa/index.md +20 -0
- package/seeds/specs/hard/stacks/jpa/jpa-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/index.md +20 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/kubernetes-ingress-overlay.md +35 -0
- package/seeds/specs/hard/stacks/messaging/index.md +20 -0
- package/seeds/specs/hard/stacks/messaging/messaging-reliability-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mybatis/index.md +20 -0
- package/seeds/specs/hard/stacks/mybatis/mybatis-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mysql/index.md +20 -0
- package/seeds/specs/hard/stacks/mysql/mysql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/nginx/index.md +20 -0
- package/seeds/specs/hard/stacks/nginx/nginx-proxy-overlay.md +35 -0
- package/seeds/specs/hard/stacks/postgresql/index.md +20 -0
- package/seeds/specs/hard/stacks/postgresql/postgresql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/redis/index.md +20 -0
- package/seeds/specs/hard/stacks/redis/redis-cache-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-batch/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-batch/spring-batch-job-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-boot/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-boot/spring-boot-application-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-mvc/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-mvc/spring-mvc-web-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-webflux/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-webflux/spring-webflux-reactive-overlay.md +35 -0
- package/seeds/specs/hard/stacks/tomcat/index.md +20 -0
- package/seeds/specs/hard/stacks/tomcat/tomcat-runtime-overlay.md +35 -0
|
@@ -10,13 +10,13 @@ research/frontend-state-references.md,2026-09-03 官网/规范实抓;FORM_ED
|
|
|
10
10
|
- FRONTEND_ARCHETYPE 三型(§18 逐字):SPA_LAYERED×MODULAR incompatible 双向登记
|
|
11
11
|
(incompatible 槽首个真实用例);FEATURE_ORIENTED 承载差异表 #4 的 FSD 现行
|
|
12
12
|
6 有效层(Processes deprecated)/无独立 API 层差异声明。
|
|
13
|
-
- FRONTEND_ARCHETYPE.ERROR_TAXONOMY(§21
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
- ASYNC_COMMAND 头号注记(差异表 #7
|
|
17
|
-
XState v5
|
|
18
|
-
PRD
|
|
19
|
-
|
|
13
|
+
- FRONTEND_ARCHETYPE.ERROR_TAXONOMY(§21 九分型 + Owner 2026-09-04 裁定补
|
|
14
|
+
CANCELED 第十分型=十分型闭包):每型绑定四列语义位;已裁定两项(CANCELED
|
|
15
|
+
第十分型入 categories/429 归重试处置注记入 constraints,差异表 #8)随裁定落位。
|
|
16
|
+
- ASYNC_COMMAND 头号注记(差异表 #7,Owner 2026-09-04 已裁定):Illegal
|
|
17
|
+
Transition 不引入治理层词形——XState v5 对未匹配事件静默忽略,state.can()
|
|
18
|
+
守卫为唯一预检位;PRD「非法组合必须可表达」由「可检测(transition contract
|
|
19
|
+
声明 + state.can() 守卫预检)」承载。
|
|
20
20
|
词形纪律:STATE_*/FRONTEND_* 为 catalog 词形空间(批次 2 PRD:不走 governed
|
|
21
21
|
前缀 PR);id 至少两段 SCREAMING_SNAKE(loadCatalogArchetypes 同一闸)。
|
|
22
22
|
token 纪律:物料 core 词面(title/id/summary/semantic 三槽)避开既有 repo 级
|
|
@@ -184,10 +184,10 @@ materials["archetype.state.async_command.json"] = {
|
|
|
184
184
|
"kind": "archetype",
|
|
185
185
|
"layer": "PATTERN",
|
|
186
186
|
"title_zh": "异步命令状态机",
|
|
187
|
-
"summary_zh": "以 XState v5 六概念(state/event/transition/guard/actor/input/output)承载的异步命令原型:命令参数经 input 进入,状态经 guarded transition 确定性转移,final state 产出 output
|
|
187
|
+
"summary_zh": "以 XState v5 六概念(state/event/transition/guard/actor/input/output)承载的异步命令原型:命令参数经 input 进入,状态经 guarded transition 确定性转移,final state 产出 output;非法组合可检测——未声明 transition 不存在(XState v5 运行时静默忽略),state.can() 守卫为唯一预检位(Owner 2026-09-04 裁定差异表 #7)。",
|
|
188
188
|
"semantic": {
|
|
189
189
|
"responsibility": "把一次异步命令(提交/保存/执行)建模为显式状态机:idle/running/done|error 转移全部声明在案,guard 纯同步布尔",
|
|
190
|
-
"when_to_use": "
|
|
190
|
+
"when_to_use": "命令的合法状态转移需要显式契约时(非法组合可检测:「未声明的 transition 不存在」——XState v5 对未匹配事件静默忽略,state.can() 守卫预检);多步骤异步编排(invoke/spawn actor)",
|
|
191
191
|
"when_not_to_use": "远端取数缓存语义(STATE_ARCHETYPE.SERVER_QUERY);无需显式转移契约的局部加载布尔",
|
|
192
192
|
},
|
|
193
193
|
"composition": {"requires": [], "optional": [], "incompatible": []},
|
|
@@ -202,10 +202,10 @@ materials["archetype.state.async_command.json"] = {
|
|
|
202
202
|
"forbidden": [
|
|
203
203
|
"在 output 语义位放中途产物(output 仅到达 final state 时存在)",
|
|
204
204
|
"直接改 context(immutable,仅 assign 更新)",
|
|
205
|
-
"断言未匹配事件会运行时报错(XState v5 现实是静默忽略+state.can() 为 false
|
|
205
|
+
"断言未匹配事件会运行时报错(XState v5 现实是静默忽略+state.can() 为 false——非法组合的可检测位是 transition contract 声明与 can() 守卫预检,Owner 2026-09-04 裁定)",
|
|
206
206
|
],
|
|
207
207
|
"x-research-anchors": {
|
|
208
|
-
"note": "
|
|
208
|
+
"note": "【已裁定 2026-09-04·差异表 #7】Illegal Transition 不引入治理层词形:XState v5(npm 5.32.6)对未匹配/未启用事件按「no enabled transition → state does not change」静默忽略,state.can() 显式守卫为唯一预检位——PRD「非法组合必须可表达」由「可检测(transition contract 声明 + state.can() 守卫预检)」承载。六概念词形与 guard 序列化命名推荐(reusability+visualization)均为 stately.ai 官方文档 2026-09-03 实抓",
|
|
209
209
|
"sources": [
|
|
210
210
|
{"url": "https://stately.ai/docs/transitions", "fetched": FETCH},
|
|
211
211
|
{"url": "https://stately.ai/docs/guards", "fetched": FETCH},
|
|
@@ -371,7 +371,7 @@ materials["archetype.frontend.feature_oriented.json"] = {
|
|
|
371
371
|
"自造新层(FSD:层语义已标准化,不推荐新增)",
|
|
372
372
|
],
|
|
373
373
|
"x-research-anchors": {
|
|
374
|
-
"note": "
|
|
374
|
+
"note": "【已裁定 2026-09-04·差异表 #4】FSD v2 现行映射采纳(六有效层 + Processes deprecated + api 是 segment):上述 defaults 四行声明即裁定正文——FSD 现行 7 层(Processes deprecated→有效 6 层)、无独立 API 层(api 是各层 segment)、widgets 无 PRD 对应层(optional 位)、app 层为 FSD v2 新增有效层;import rule 严格向下与 Public API「contract+gate」定位(与 PRD §19 public_api_required 同构)为 feature-sliced.design 官方文档(v3 站点)2026-09-03 实抓",
|
|
375
375
|
"sources": [
|
|
376
376
|
{"url": "https://feature-sliced.design/docs/reference/layers", "fetched": FETCH},
|
|
377
377
|
{"url": "https://feature-sliced.design/docs/reference/public-api", "fetched": FETCH},
|
|
@@ -402,7 +402,8 @@ materials["archetype.frontend.modular.json"] = {
|
|
|
402
402
|
}
|
|
403
403
|
|
|
404
404
|
# ============================================================
|
|
405
|
-
# FRONTEND_ARCHETYPE.ERROR_TAXONOMY(v0.6.1 §21
|
|
405
|
+
# FRONTEND_ARCHETYPE.ERROR_TAXONOMY(v0.6.1 §21 九分型 + Owner 2026-09-04 裁定
|
|
406
|
+
# 补 CANCELED 第十分型=十分型闭包;layer=PATTERN)
|
|
406
407
|
# ============================================================
|
|
407
408
|
|
|
408
409
|
materials["archetype.frontend.error_taxonomy.json"] = {
|
|
@@ -410,10 +411,10 @@ materials["archetype.frontend.error_taxonomy.json"] = {
|
|
|
410
411
|
"kind": "archetype",
|
|
411
412
|
"layer": "PATTERN",
|
|
412
413
|
"title_zh": "前端错误分类",
|
|
413
|
-
"summary_zh": "
|
|
414
|
+
"summary_zh": "前端错误十分型闭包(PRD §21 九分型 + Owner 2026-09-04 裁定补 CANCELED 第十分型):每型绑定呈现/重试/遥测/用户话术四语义位;浏览器原生信号只够两分,细分映射责任在 HTTP Client 适配层。",
|
|
414
415
|
"semantic": {
|
|
415
|
-
"responsibility": "
|
|
416
|
-
"when_to_use": "任何触发 HTTP/异步调用的页面组契约错误处置面——错误到分型的映射在 HTTP Client 适配层完成(WHATWG fetch 原生只给 TypeError 与 HTTP status
|
|
416
|
+
"responsibility": "把运行时错误归类为十分型闭包,驱动呈现/重试/遥测/话术四列的确定性处置",
|
|
417
|
+
"when_to_use": "任何触发 HTTP/异步调用的页面组契约错误处置面——错误到分型的映射在 HTTP Client 适配层完成(WHATWG fetch 原生只给 TypeError 与 HTTP status 两分,十分型的映射责任不在浏览器)",
|
|
417
418
|
"when_not_to_use": "非错误态的加载/空态呈现;后端错误信封字段结构本身(v0.6.1 §44 Error Archetype 承载 type/title/status/detail/instance 等成员)",
|
|
418
419
|
},
|
|
419
420
|
"composition": {"requires": [], "optional": [], "incompatible": []},
|
|
@@ -460,6 +461,12 @@ materials["archetype.frontend.error_taxonomy.json"] = {
|
|
|
460
461
|
"telemetry": "timeout_event",
|
|
461
462
|
"user_message": "请求超时,请重试",
|
|
462
463
|
},
|
|
464
|
+
"CANCELED": {
|
|
465
|
+
"presentation_pattern": "cancelled_state_quiet_dismissal",
|
|
466
|
+
"retry_behavior": "never_retry_user_cancelled",
|
|
467
|
+
"telemetry": "cancel_event_aborted",
|
|
468
|
+
"user_message": "操作已取消",
|
|
469
|
+
},
|
|
463
470
|
"OFFLINE": {
|
|
464
471
|
"presentation_pattern": "offline_banner_persistent",
|
|
465
472
|
"retry_behavior": "auto_resume_on_reconnect",
|
|
@@ -475,11 +482,13 @@ materials["archetype.frontend.error_taxonomy.json"] = {
|
|
|
475
482
|
},
|
|
476
483
|
"constraints": [
|
|
477
484
|
"浏览器原生信号只够两分:WHATWG fetch 网络失败 reject TypeError、HTTP 错误状态不 reject(查 Response.status)——TIMEOUT/OFFLINE/AUTHENTICATION 等细分全部依赖 client 适配层信号(axios code/AbortSignal/navigator.onLine/status 映射)",
|
|
478
|
-
"
|
|
485
|
+
"十分型映射责任在 HTTP Client Archetype 层而非浏览器",
|
|
486
|
+
"CANCELED 第十分型(Owner 2026-09-04 裁定):axios ERR_CANCELED / fetch AbortError / TanStack cancelQueries 三源业界共识——用户主动取消绝不自动重试,呈现为安静取消态而非错误横幅(九分型缺位会把取消误归 UNKNOWN/TRANSPORT)",
|
|
487
|
+
"429 归重试处置(Owner 2026-09-04 裁定注记):ofetch 默认重试列表含 409/429 视作传输层瞬时错误——429 不归 CONFLICT 分型,按 retryable 瞬时处置;409 仍归 CONFLICT(语义张力如实登记)",
|
|
479
488
|
"RFC 9457 about:blank(未给出更具体类型时的缺省)与 UNKNOWN 同构",
|
|
480
489
|
],
|
|
481
490
|
"x-research-anchors": {
|
|
482
|
-
"note": "
|
|
491
|
+
"note": "【已裁定 2026-09-04·差异表 #8 两项】①补 CANCELED 第十分型(九→十):axios ERR_CANCELED/fetch AbortError/TanStack cancelQueries 三处业界共识,retry 语义绝不重试——已入 categories 且四列绑定齐全;②429 归重试处置:ofetch 默认重试列表含 409/429 视作传输层瞬时错误,429 不归 CONFLICT、按 retryable 瞬时处置注记入 constraints。WHATWG fetch TypeError/RFC 9457 成员空间/axios error codes 全表/ofetch 重试列表为规范与官方文档 2026-09-03 实抓",
|
|
483
492
|
"sources": [
|
|
484
493
|
{"url": "https://fetch.spec.whatwg.org/", "fetched": FETCH},
|
|
485
494
|
{"url": "https://www.rfc-editor.org/rfc/rfc9457.txt", "fetched": FETCH},
|