diff --git a/pom.xml b/pom.xml
index 2b295473eb..f49c194085 100644
--- a/pom.xml
+++ b/pom.xml
@@ -87,6 +87,7 @@
1.0.0
3.6.0
3.0.0
+ 3.12.0
3.1.2
3.6.0
3.12.1
@@ -897,6 +898,7 @@
org.apache.maven.plugins
maven-javadoc-plugin
+ ${maven-javadoc-plugin.version}
none
diff --git a/tez-api/src/main/java/org/apache/tez/client/package-info.java b/tez-api/src/main/java/org/apache/tez/client/package-info.java
new file mode 100644
index 0000000000..b0dd34f5e7
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/client/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Client API for creating Tez sessions, building and submitting DAGs, and monitoring applications.
+ */
+@Public
+@Evolving
+package org.apache.tez.client;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/client/registry/package-info.java b/tez-api/src/main/java/org/apache/tez/client/registry/package-info.java
index 23edb6fff6..1377618f60 100644
--- a/tez-api/src/main/java/org/apache/tez/client/registry/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/client/registry/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Registry and discovery for the Tez Application Master (AM).
+ * Enables clients to locate the AM and optional ZooKeeper-based implementation.
+ */
@Public
@Evolving
package org.apache.tez.client.registry;
diff --git a/tez-api/src/main/java/org/apache/tez/client/registry/zookeeper/package-info.java b/tez-api/src/main/java/org/apache/tez/client/registry/zookeeper/package-info.java
index ea4412da84..0ba87e2c41 100644
--- a/tez-api/src/main/java/org/apache/tez/client/registry/zookeeper/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/client/registry/zookeeper/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * ZooKeeper-based AM registry implementation.
+ * Enables clients to discover the Tez AM via ZooKeeper.
+ */
@Public
@Evolving
package org.apache.tez.client.registry.zookeeper;
diff --git a/tez-api/src/main/java/org/apache/tez/common/annotation/package-info.java b/tez-api/src/main/java/org/apache/tez/common/annotation/package-info.java
new file mode 100644
index 0000000000..91268166ee
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/common/annotation/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Annotations for configuration properties and related metadata used by the Tez API.
+ */
+@Public
+@Evolving
+package org.apache.tez.common.annotation;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/common/counters/TaskCounter.java b/tez-api/src/main/java/org/apache/tez/common/counters/TaskCounter.java
index 4da490227b..1f920ef9bb 100644
--- a/tez-api/src/main/java/org/apache/tez/common/counters/TaskCounter.java
+++ b/tez-api/src/main/java/org/apache/tez/common/counters/TaskCounter.java
@@ -140,13 +140,13 @@ public enum TaskCounter {
ADDITIONAL_SPILLS_BYTES_WRITTEN,
/**
- * Bytes read from disk due to previous spills (lac of adequate memory).
+ * Bytes read from disk due to previous spills (lack of adequate memory).
* Used by OnFileSortedOutput and ShuffledMergedInput
*/
ADDITIONAL_SPILLS_BYTES_READ,
/**
- * Spills that were generated & read by the same task (unnecessary spills due to lac of
+ * Spills that were generated & read by the same task (unnecessary spills due to lack of
* adequate memory).
*
* Used by OnFileSortedOutput
@@ -202,7 +202,7 @@ public enum TaskCounter {
/**
* Time taken to shuffle data. This includes time taken to fetch the data
- * & merging the data in parallel to fetching when needed. This also includes any
+ * & merging the data in parallel to fetching when needed. This also includes any
* waiting time related to event delays from source.
*
* Represented in milliseconds.
diff --git a/tez-api/src/main/java/org/apache/tez/common/counters/package-info.java b/tez-api/src/main/java/org/apache/tez/common/counters/package-info.java
new file mode 100644
index 0000000000..2f0c64dab9
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/common/counters/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Counter types and groups for DAG, task, and framework metrics.
+ */
+@Public
+@Evolving
+package org.apache.tez.common.counters;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/common/package-info.java b/tez-api/src/main/java/org/apache/tez/common/package-info.java
new file mode 100644
index 0000000000..e75fd56637
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/common/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Common utilities, helpers, and shared types used across the Tez API module.
+ */
+@Public
+@Evolving
+package org.apache.tez.common;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/common/security/package-info.java b/tez-api/src/main/java/org/apache/tez/common/security/package-info.java
new file mode 100644
index 0000000000..25766943f2
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/common/security/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Security utilities: job tokens, ACLs, and access control for Tez applications.
+ */
+@Public
+@Evolving
+package org.apache.tez.common.security;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/TezConfiguration.java b/tez-api/src/main/java/org/apache/tez/dag/api/TezConfiguration.java
index 3057c6ad68..240546b103 100644
--- a/tez-api/src/main/java/org/apache/tez/dag/api/TezConfiguration.java
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/TezConfiguration.java
@@ -784,7 +784,7 @@ public TezConfiguration(boolean loadDefaults) {
/**
* Int value. The maximum number of attempts that can run concurrently for a given vertex.
- * Setting <=0 implies no limit
+ * Setting <=0 implies no limit
*/
@ConfigurationScope(Scope.VERTEX)
@ConfigurationProperty(type="integer")
@@ -1106,7 +1106,7 @@ public TezConfiguration(boolean loadDefaults) {
* for this interval then the task will be considered hung and terminated.
* The value for this config should be larger than {@link TezConfiguration#TASK_HEARTBEAT_TIMEOUT_MS}
* and larger than 2 times the value of {@link TezConfiguration#TEZ_TASK_AM_HEARTBEAT_INTERVAL_MS}.
- * A config value <=0 disables this.
+ * A config value <=0 disables this.
*/
@ConfigurationScope(Scope.VERTEX)
@ConfigurationProperty
@@ -1337,7 +1337,7 @@ public TezConfiguration(boolean loadDefaults) {
* must be +ve and >=
* TezConfiguration#TEZ_AM_CONTAINER_IDLE_RELEASE_TIMEOUT_MIN_MILLIS.
* Containers will have an expire time set to a random value between
- * TezConfiguration#TEZ_AM_CONTAINER_IDLE_RELEASE_TIMEOUT_MIN_MILLIS &&
+ * TezConfiguration#TEZ_AM_CONTAINER_IDLE_RELEASE_TIMEOUT_MIN_MILLIS &&
* TezConfiguration#TEZ_AM_CONTAINER_IDLE_RELEASE_TIMEOUT_MAX_MILLIS. This
* creates a graceful reduction in the amount of idle resources held
*/
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/Vertex.java b/tez-api/src/main/java/org/apache/tez/dag/api/Vertex.java
index b02f83c9b5..713401fafb 100644
--- a/tez-api/src/main/java/org/apache/tez/dag/api/Vertex.java
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/Vertex.java
@@ -160,7 +160,7 @@ public static Vertex create(String vertexName, ProcessorDescriptor processorDesc
/**
* Create a new vertex with the given name and parallelism.
* The vertex task resource will be picked from configuration
- * {@link TezConfiguration#TEZ_TASK_RESOURCE_MEMORY_MB} &
+ * {@link TezConfiguration#TEZ_TASK_RESOURCE_MEMORY_MB} &
* {@link TezConfiguration#TEZ_TASK_RESOURCE_CPU_VCORES} Applications that
* want more control over their task resource specification may create their
* own logic to determine task resources and use
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/VertexGroup.java b/tez-api/src/main/java/org/apache/tez/dag/api/VertexGroup.java
index 15060fcc1e..8f0319d552 100644
--- a/tez-api/src/main/java/org/apache/tez/dag/api/VertexGroup.java
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/VertexGroup.java
@@ -34,7 +34,7 @@
* the destination vertex see a single input named after the VertexGroup instead
* multiple inputs from the members of the VertexGroup.
* An output can be added to a VertexGroup.
- * All outgoing edges & outputs of a VertexGroup are automatically transferred to the
+ * All outgoing edges & outputs of a VertexGroup are automatically transferred to the
* member vertices of the VertexGroup.
* A VertexGroup is not part of the final DAG.
*/
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/client/package-info.java b/tez-api/src/main/java/org/apache/tez/dag/api/client/package-info.java
new file mode 100644
index 0000000000..fd4a7cd7d5
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/client/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Client API for monitoring and controlling a running DAG (status, timeline, vertex updates).
+ */
+@Public
+@Evolving
+package org.apache.tez.dag.api.client;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/client/rpc/package-info.java b/tez-api/src/main/java/org/apache/tez/dag/api/client/rpc/package-info.java
index 6e87aeffba..8d2a09ed75 100644
--- a/tez-api/src/main/java/org/apache/tez/dag/api/client/rpc/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/client/rpc/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Internal RPC protocol definitions for DAG client to AM communication.
+ * Used by the generated Protobuf-based DAG client stub.
+ */
@Private
package org.apache.tez.dag.api.client.rpc;
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/event/package-info.java b/tez-api/src/main/java/org/apache/tez/dag/api/event/package-info.java
new file mode 100644
index 0000000000..2a39be00b9
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/event/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Event types for DAG and vertex state updates delivered to the client.
+ */
+@Public
+@Evolving
+package org.apache.tez.dag.api.event;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/dag/api/package-info.java b/tez-api/src/main/java/org/apache/tez/dag/api/package-info.java
new file mode 100644
index 0000000000..3162192d8e
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/dag/api/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Core DAG API: DAG, Vertex, Edge, and descriptor types for defining Tez dataflow graphs.
+ */
+@Public
+@Evolving
+package org.apache.tez.dag.api;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/frameworkplugins/package-info.java b/tez-api/src/main/java/org/apache/tez/frameworkplugins/package-info.java
index d279462b1e..55347fce71 100644
--- a/tez-api/src/main/java/org/apache/tez/frameworkplugins/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/frameworkplugins/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Pluggable framework services for the Tez runtime.
+ * Defines the client and AM framework service interfaces and utilities.
+ */
@Public
@Evolving
package org.apache.tez.frameworkplugins;
diff --git a/tez-api/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java b/tez-api/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
index ffc5b78fb9..2e4f89b60b 100644
--- a/tez-api/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * YARN-specific framework plugin implementations.
+ * Provides integration with YARN for resource management and application lifecycle.
+ */
@Public
@Evolving
package org.apache.tez.frameworkplugins.yarn;
diff --git a/tez-api/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java b/tez-api/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
index 3acc21feae..1518da1deb 100644
--- a/tez-api/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * ZooKeeper-based framework plugin implementations.
+ * Provides standalone and embedded ZooKeeper client services for Tez.
+ */
@Public
@Evolving
package org.apache.tez.frameworkplugins.zookeeper;
diff --git a/tez-api/src/main/java/org/apache/tez/runtime/api/events/package-info.java b/tez-api/src/main/java/org/apache/tez/runtime/api/events/package-info.java
new file mode 100644
index 0000000000..0161165dd0
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/runtime/api/events/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Event types for runtime communication: data movement, input updates, and vertex manager events.
+ */
+@Public
+@Evolving
+package org.apache.tez.runtime.api.events;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/runtime/api/package-info.java b/tez-api/src/main/java/org/apache/tez/runtime/api/package-info.java
new file mode 100644
index 0000000000..460976d101
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/runtime/api/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Runtime API for task execution: Input, Output, Processor, and context types.
+ */
+@Public
+@Evolving
+package org.apache.tez.runtime.api;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-api/src/main/java/org/apache/tez/runtime/library/common/shuffle/api/package-info.java b/tez-api/src/main/java/org/apache/tez/runtime/library/common/shuffle/api/package-info.java
index c4001e1bfc..3468fffbb9 100644
--- a/tez-api/src/main/java/org/apache/tez/runtime/library/common/shuffle/api/package-info.java
+++ b/tez-api/src/main/java/org/apache/tez/runtime/library/common/shuffle/api/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Internal API types for the shuffle component of the runtime library.
+ * Used by the shuffle implementation to exchange data and control messages.
+ */
@Private
package org.apache.tez.runtime.library.common.shuffle.api;
diff --git a/tez-api/src/main/java/org/apache/tez/serviceplugins/api/package-info.java b/tez-api/src/main/java/org/apache/tez/serviceplugins/api/package-info.java
new file mode 100644
index 0000000000..ebb726b8d5
--- /dev/null
+++ b/tez-api/src/main/java/org/apache/tez/serviceplugins/api/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Pluggable service APIs: task scheduler, container launcher, and related descriptors.
+ */
+@Public
+@Evolving
+package org.apache.tez.serviceplugins.api;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-common/src/main/java/org/apache/tez/common/package-info.java b/tez-common/src/main/java/org/apache/tez/common/package-info.java
index 477d0dc68e..4deb5d78c4 100644
--- a/tez-common/src/main/java/org/apache/tez/common/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/common/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Shared utilities, helpers, and common types used across Tez modules.
+ */
@Private
package org.apache.tez.common;
diff --git a/tez-common/src/main/java/org/apache/tez/common/web/package-info.java b/tez-common/src/main/java/org/apache/tez/common/web/package-info.java
index 2782911d00..5a8b5fa19d 100644
--- a/tez-common/src/main/java/org/apache/tez/common/web/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/common/web/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Web and servlet adapters for Tez UI and monitoring endpoints.
+ */
@Private
package org.apache.tez.common.web;
diff --git a/tez-common/src/main/java/org/apache/tez/dag/records/package-info.java b/tez-common/src/main/java/org/apache/tez/dag/records/package-info.java
index 2f04ca74b4..3a4271e59e 100644
--- a/tez-common/src/main/java/org/apache/tez/dag/records/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/dag/records/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Internal record and identifier types for DAG entities (vertices, tasks, attempts).
+ */
@Private
package org.apache.tez.dag.records;
diff --git a/tez-common/src/main/java/org/apache/tez/dag/utils/package-info.java b/tez-common/src/main/java/org/apache/tez/dag/utils/package-info.java
index dca9ae4ad3..897609fab1 100644
--- a/tez-common/src/main/java/org/apache/tez/dag/utils/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/dag/utils/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Utility classes for DAG serialization, protobuf conversion, and relocalization.
+ */
@Private
package org.apache.tez.dag.utils;
diff --git a/tez-common/src/main/java/org/apache/tez/runtime/common/resources/package-info.java b/tez-common/src/main/java/org/apache/tez/runtime/common/resources/package-info.java
index b9f397ab50..1a9a728c6c 100644
--- a/tez-common/src/main/java/org/apache/tez/runtime/common/resources/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/runtime/common/resources/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Common resource allocation and memory management for the runtime.
+ */
@Private
package org.apache.tez.runtime.common.resources;
diff --git a/tez-common/src/main/java/org/apache/tez/runtime/hook/package-info.java b/tez-common/src/main/java/org/apache/tez/runtime/hook/package-info.java
index 64364dba57..540c5022bb 100644
--- a/tez-common/src/main/java/org/apache/tez/runtime/hook/package-info.java
+++ b/tez-common/src/main/java/org/apache/tez/runtime/hook/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Runtime hooks for customizing task and vertex lifecycle behavior.
+ */
@Private
package org.apache.tez.runtime.hook;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/package-info.java
index b92543190d..6b9a64279d 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Registry interface for the AM to register itself for client discovery.
+ * Enables ZooKeeper-based and other registry implementations in the AM.
+ */
@Public
@Evolving
package org.apache.tez.dag.api.client.registry;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/zookeeper/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/zookeeper/package-info.java
index be8343b7c5..16c143ee67 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/zookeeper/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/api/client/registry/zookeeper/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * ZooKeeper-based AM registry implementation for client discovery.
+ */
@Public
@Evolving
package org.apache.tez.dag.api.client.registry.zookeeper;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/event/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/event/package-info.java
index 07369228eb..df0c77d0b8 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/event/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/event/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Events for DAG, vertex, and task state transitions in the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.dag.event;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/package-info.java
index 0f8c21df01..795d91e763 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/impl/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Concrete implementations of DAG, vertex, and task runtime objects in the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.dag.impl;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/package-info.java
index abf211530c..0a4ef00216 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Internal DAG, vertex, and task state and scheduling within the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.dag;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/speculation/legacy/forecast/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/speculation/legacy/forecast/package-info.java
index 3ed8b6accb..16bcd862d2 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/dag/speculation/legacy/forecast/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/dag/speculation/legacy/forecast/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Legacy speculation and task completion forecasting for the scheduler.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.dag.speculation.legacy.forecast;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/launcher/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/launcher/package-info.java
index 63ad01f940..3129a2c170 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/launcher/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/launcher/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Task and container launch logic from the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.launcher;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/package-info.java
index a88dfabf38..32cae9e808 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Application Master (AM) logic for DAG execution: scheduling, launcher, and RM interaction.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/rm/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/rm/package-info.java
index b41a53a203..1423ad80d2 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/rm/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/rm/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Resource management and container allocation in the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.rm;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/security/authorize/package-info.java b/tez-dag/src/main/java/org/apache/tez/dag/app/security/authorize/package-info.java
index 7935003abe..fda070500c 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/security/authorize/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/security/authorize/package-info.java
@@ -15,6 +15,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+/**
+ * Security and authorization for DAG and job access in the AM.
+ */
@InterfaceAudience.Private
package org.apache.tez.dag.app.security.authorize;
import org.apache.hadoop.classification.InterfaceAudience;
diff --git a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/package-info.java b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/package-info.java
index 8d75aa3614..1dcfbd81b1 100644
--- a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/package-info.java
@@ -16,6 +16,7 @@
* limitations under the License.
*/
/**
- * Provides basic classes of framework plugins for Apache Tez.
+ * AM-side framework plugin base classes and registration for Apache Tez.
+ * Mirrors the API framework plugin interfaces used by the runtime.
*/
package org.apache.tez.frameworkplugins;
diff --git a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
index cb50990e68..e126f80a92 100644
--- a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/yarn/package-info.java
@@ -16,6 +16,7 @@
* limitations under the License.
*/
/**
- * Provides YARN-specific framework plugins for Apache Tez.
+ * YARN-specific framework plugin implementations in the AM.
+ * Integrates with YARN for resource management and application lifecycle.
*/
package org.apache.tez.frameworkplugins.yarn;
diff --git a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
index c3ddc3f7a7..c164ae5a54 100644
--- a/tez-dag/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
+++ b/tez-dag/src/main/java/org/apache/tez/frameworkplugins/zookeeper/package-info.java
@@ -16,6 +16,7 @@
* limitations under the License.
*/
/**
- * Provides Zookeeper-specific framework plugins for Apache Tez.
+ * ZooKeeper-specific framework plugin implementations in the AM.
+ * Provides standalone and embedded ZooKeeper services for Tez.
*/
package org.apache.tez.frameworkplugins.zookeeper;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/client/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/client/package-info.java
index 40e3546d62..4e429e2507 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/client/package-info.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/client/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Client API for submitting and managing MapReduce-style jobs on Tez.
+ */
@Private
package org.apache.tez.mapreduce.client;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/combine/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/combine/package-info.java
new file mode 100644
index 0000000000..a83616b31a
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/combine/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Combine function support for MapReduce compatibility on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.combine;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/committer/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/committer/package-info.java
new file mode 100644
index 0000000000..2668dfe333
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/committer/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Output committer support for MapReduce compatibility on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.committer;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/common/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/common/package-info.java
new file mode 100644
index 0000000000..e60bae3da5
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/common/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Shared types and utilities for the Tez MapReduce layer.
+ */
+@Private
+package org.apache.tez.mapreduce.common;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/TezSplitGrouper.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/TezSplitGrouper.java
index 81777b1a44..dfd04b2ccc 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/TezSplitGrouper.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/TezSplitGrouper.java
@@ -84,7 +84,7 @@ public abstract class TezSplitGrouper {
* This factor is used to decrease the per group desired (length and count) limits for groups
* created by combining splits within a rack. Since reading this split involves reading data intra
* rack, the group is made smaller to cover up for the increased latencies in doing intra rack
- * reads. The value should be a fraction <= 1.
+ * reads. The value should be a fraction <= 1.
*/
public static final String TEZ_GROUPING_RACK_SPLIT_SIZE_REDUCTION =
"tez.grouping.rack-split-reduction";
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/package-info.java
new file mode 100644
index 0000000000..3760c5a798
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/grouper/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Input split grouping and location handling for MapReduce on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.grouper;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapred/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapred/package-info.java
index 869715e3f3..2a6629901a 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapred/package-info.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapred/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Compatibility with the legacy MapReduce (mapred) API for Tez.
+ */
@Private
package org.apache.tez.mapreduce.hadoop.mapred;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapreduce/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapreduce/package-info.java
index 510c4e901b..dc7f28a1b5 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapreduce/package-info.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/mapreduce/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Compatibility with the MapReduce (mapreduce) API for Tez.
+ */
@Private
package org.apache.tez.mapreduce.hadoop.mapreduce;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/package-info.java
index c70fe69b22..9b46119a67 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/package-info.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/hadoop/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Hadoop MapReduce compatibility layer and helpers for Tez.
+ */
@Private
package org.apache.tez.mapreduce.hadoop;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/base/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/base/package-info.java
new file mode 100644
index 0000000000..110c0cb924
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/base/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Base classes for MapReduce input format wrappers on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.input.base;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/package-info.java
new file mode 100644
index 0000000000..939c2dd80b
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/input/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * MapReduce input format adapters for Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.input;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/lib/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/lib/package-info.java
index 2c41cd880e..f35f1e62a4 100644
--- a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/lib/package-info.java
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/lib/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * MapReduce library classes: input, output, and partitioner adapters for Tez.
+ */
@Private
package org.apache.tez.mapreduce.lib;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/output/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/output/package-info.java
new file mode 100644
index 0000000000..a93913347c
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/output/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * MapReduce output format adapters for Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.output;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/partition/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/partition/package-info.java
new file mode 100644
index 0000000000..7ab0d50f51
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/partition/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Partitioner and partition handling for MapReduce on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.partition;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/map/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/map/package-info.java
new file mode 100644
index 0000000000..d57a982c4d
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/map/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Map task processor implementation for MapReduce on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.processor.map;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/package-info.java
new file mode 100644
index 0000000000..4ab6417ebf
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * MapReduce Mapper and Reducer adapters as Tez processors.
+ */
+@Private
+package org.apache.tez.mapreduce.processor;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/reduce/package-info.java b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/reduce/package-info.java
new file mode 100644
index 0000000000..510b30ee3a
--- /dev/null
+++ b/tez-mapreduce/src/main/java/org/apache/tez/mapreduce/processor/reduce/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Reduce task processor implementation for MapReduce on Tez.
+ */
+@Private
+package org.apache.tez.mapreduce.processor.reduce;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/dag/library/edgemanager/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/dag/library/edgemanager/package-info.java
new file mode 100644
index 0000000000..7dd7081ded
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/dag/library/edgemanager/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Built-in edge manager implementations for the runtime library (e.g. cartesian product).
+ */
+@Private
+package org.apache.tez.dag.library.edgemanager;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/dag/library/vertexmanager/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/dag/library/vertexmanager/package-info.java
new file mode 100644
index 0000000000..d7b0401f5a
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/dag/library/vertexmanager/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Built-in vertex manager implementations (e.g. input-ready, fair shuffle).
+ */
+@Private
+package org.apache.tez.dag.library.vertexmanager;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/http/async/netty/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/http/async/netty/package-info.java
new file mode 100644
index 0000000000..c6a6e4a003
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/http/async/netty/package-info.java
@@ -0,0 +1,26 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Async HTTP handling using Async Http Client on top of Netty.
+ * @see Async Http Client
+ */
+@Private
+package org.apache.tez.http.async.netty;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/http/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/http/package-info.java
new file mode 100644
index 0000000000..9501dd0559
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/http/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * HTTP client utilities for shuffle fetch and other runtime library communication.
+ */
+@Private
+package org.apache.tez.http;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/api/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/api/package-info.java
new file mode 100644
index 0000000000..c63bcbed3b
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/api/package-info.java
@@ -0,0 +1,27 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Public reader, writer, and partitioner interfaces for the runtime library.
+ */
+@Public
+@Evolving
+package org.apache.tez.runtime.library.api;
+
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+import org.apache.hadoop.classification.InterfaceStability.Evolving;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/cartesianproduct/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/cartesianproduct/package-info.java
new file mode 100644
index 0000000000..d8cc8b60b1
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/cartesianproduct/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Cartesian product edge manager for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.cartesianproduct;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/combine/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/combine/package-info.java
new file mode 100644
index 0000000000..180719a09b
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/combine/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Combine (reduce-side merge) support for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.common.combine;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/ProxyComparator.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/ProxyComparator.java
index 5297f7cbd5..eb3dd40d03 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/ProxyComparator.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/ProxyComparator.java
@@ -32,7 +32,7 @@ public interface ProxyComparator extends RawComparator {
*
* But this does not serve as a measure of equality.
*
- * getProxy(k1) < getProxy(k2) implies k1 < k2 (transitive between different keys for sorting requirements)
+ * getProxy(k1) < getProxy(k2) implies k1 < k2 (transitive between different keys for sorting requirements)
*
* getProxy(k1) == getProxy(k2) does not imply ordering, but requires actual key comparisons.
*
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/package-info.java
new file mode 100644
index 0000000000..6ad8a04315
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/comparator/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Key and value comparator utilities for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.common.comparator;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/package-info.java
new file mode 100644
index 0000000000..3d1a88af65
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Shared types and utilities for the runtime library (identifiers, composite keys, etc.).
+ */
+@Private
+package org.apache.tez.runtime.library.common;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/readers/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/readers/package-info.java
new file mode 100644
index 0000000000..ea3685300c
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/readers/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Internal reader implementations for the runtime library inputs.
+ */
+@Private
+package org.apache.tez.runtime.library.common.readers;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/security/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/security/package-info.java
new file mode 100644
index 0000000000..c4b3ccf6eb
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/security/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Security and credential handling for the runtime library (e.g. shuffle).
+ */
+@Private
+package org.apache.tez.runtime.library.common.security;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/serializer/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/serializer/package-info.java
new file mode 100644
index 0000000000..ba2d6c0762
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/serializer/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Serialization utilities for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.common.serializer;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/impl/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/impl/package-info.java
index 4f2f1b0d22..353fee65ae 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/impl/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/impl/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Internal shuffle event handling and merge implementation.
+ */
@Private
package org.apache.tez.runtime.library.common.shuffle.impl;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/package-info.java
index dc41c96c59..df338ca0f9 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/orderedgrouped/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Ordered grouped shuffle: fetcher, map host tracking, and merge for sorted input.
+ */
@Private
package org.apache.tez.runtime.library.common.shuffle.orderedgrouped;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/package-info.java
index ea8b8176cb..753d8280db 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/shuffle/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Shuffle implementation: fetchers, merge, and ordered grouped input handling.
+ */
@Private
package org.apache.tez.runtime.library.common.shuffle;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/IFile.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/IFile.java
index 56fe0db644..614e675119 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/IFile.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/IFile.java
@@ -55,7 +55,7 @@
import org.slf4j.LoggerFactory;
/**
- * IFile is the simple format
+ * IFile is the simple <key-len, value-len, key, value> format
* for the intermediate map-outputs in Map-Reduce.
*
* There is a Writer to write out map-outputs in this format and
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/dflt/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/dflt/package-info.java
index f9d4df2043..8ac9d7abc9 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/dflt/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/dflt/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Default sort implementation (index and spill record handling).
+ */
@Private
package org.apache.tez.runtime.library.common.sort.impl.dflt;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/package-info.java
index 1a007658b4..a2f0ccf3c6 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/sort/impl/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Sort and spill implementation for the runtime library.
+ */
@Private
package org.apache.tez.runtime.library.common.sort.impl;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/task/local/output/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/task/local/output/package-info.java
index 2f2847d823..9e0fbc7e72 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/task/local/output/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/task/local/output/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Local task output handling for the runtime library (e.g. in-memory output for local fetch).
+ */
@Private
package org.apache.tez.runtime.library.common.task.local.output;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/writers/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/writers/package-info.java
index a3cb00539a..df4d3a5ad1 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/writers/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/common/writers/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Internal writer implementations for the runtime library outputs.
+ */
@Private
package org.apache.tez.runtime.library.common.writers;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/conf/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/conf/package-info.java
index 2df643a226..31c074acfd 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/conf/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/conf/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Configuration classes for the runtime library (inputs, outputs, edges).
+ */
@Public
@Evolving
package org.apache.tez.runtime.library.conf;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/exceptions/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/exceptions/package-info.java
new file mode 100644
index 0000000000..52204a324b
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/exceptions/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Exception types thrown by the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.exceptions;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/hadoop/compat/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/hadoop/compat/package-info.java
new file mode 100644
index 0000000000..528642cb55
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/hadoop/compat/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Hadoop version compatibility shims for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.hadoop.compat;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/input/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/input/package-info.java
index 9c9bc2bc04..ef70400ebf 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/input/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/input/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Built-in input implementations: ordered and unordered key-value readers.
+ */
@Public
@Evolving
package org.apache.tez.runtime.library.input;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/output/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/output/package-info.java
index e933900c62..f1a4916a69 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/output/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/output/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Built-in output implementations: ordered and unordered key-value writers.
+ */
@Public
@Evolving
package org.apache.tez.runtime.library.output;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/package-info.java
index 4fb471f82a..b9dda2ec56 100644
--- a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/package-info.java
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/package-info.java
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+/**
+ * Built-in Tez runtime library: sort-merge shuffle, key-value I/O, and related processors.
+ * Provides the default implementations for common data processing patterns.
+ */
@Public
@Evolving
package org.apache.tez.runtime.library;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/partitioner/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/partitioner/package-info.java
new file mode 100644
index 0000000000..ce68114047
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/partitioner/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Partitioner implementations for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.partitioner;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/processor/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/processor/package-info.java
new file mode 100644
index 0000000000..6c0b8463de
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/processor/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Built-in processor implementations for the runtime library (e.g. sort-merge).
+ */
+@Private
+package org.apache.tez.runtime.library.processor;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/resources/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/resources/package-info.java
new file mode 100644
index 0000000000..a2e06b52d1
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/resources/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Memory and resource distribution utilities for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.resources;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/utils/package-info.java b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/utils/package-info.java
new file mode 100644
index 0000000000..e3ce1591dd
--- /dev/null
+++ b/tez-runtime-library/src/main/java/org/apache/tez/runtime/library/utils/package-info.java
@@ -0,0 +1,25 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Utility classes for the runtime library.
+ */
+@Private
+package org.apache.tez.runtime.library.utils;
+
+import org.apache.hadoop.classification.InterfaceAudience.Private;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/doclet/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/doclet/package-info.java
index 190ae4622e..de13838477 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/doclet/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/doclet/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Custom Javadoc doclets for Tez (e.g. config documentation generator).
+ */
@Private
package org.apache.tez.tools.javadoc.doclet;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/model/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/model/package-info.java
index 76acd05258..10fcee1f4c 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/model/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/model/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Data model types used by the Tez Javadoc doclets.
+ */
@Private
package org.apache.tez.tools.javadoc.model;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/util/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/util/package-info.java
index d458619729..1c2fed4282 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/util/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-17/org/apache/tez/tools/javadoc/util/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Utility classes for the Tez Javadoc doclets.
+ */
@Private
package org.apache.tez.tools.javadoc.util;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/doclet/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/doclet/package-info.java
index 190ae4622e..de13838477 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/doclet/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/doclet/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Custom Javadoc doclets for Tez (e.g. config documentation generator).
+ */
@Private
package org.apache.tez.tools.javadoc.doclet;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/model/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/model/package-info.java
index 76acd05258..10fcee1f4c 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/model/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/model/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Data model types used by the Tez Javadoc doclets.
+ */
@Private
package org.apache.tez.tools.javadoc.model;
diff --git a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/util/package-info.java b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/util/package-info.java
index d458619729..1c2fed4282 100644
--- a/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/util/package-info.java
+++ b/tez-tools/tez-javadoc-tools/src/main/java-8-16/org/apache/tez/tools/javadoc/util/package-info.java
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+/**
+ * Utility classes for the Tez Javadoc doclets.
+ */
@Private
package org.apache.tez.tools.javadoc.util;